diff --git a/std/assembly/index.d.ts b/std/assembly/index.d.ts index 07877315f1..43b085d82f 100644 --- a/std/assembly/index.d.ts +++ b/std/assembly/index.d.ts @@ -1666,7 +1666,7 @@ declare abstract class TypedArray implements ArrayBufferView { /** The join() method joins all elements of an array into a string. This method has the same algorithm as Array.prototype.join(). */ join(separator?: string): string; /** The set() method stores multiple values in the typed array, reading input values from a specified array. */ - set(source: U, offset?: i32): void + set>(source: U, offset?: i32): void /** The toString() method returns a string representing the specified array and its elements. This method has the same algorithm as Array.prototype.toString() */ toString(): string; } diff --git a/std/assembly/typedarray.ts b/std/assembly/typedarray.ts index c5a90819f5..9b5dafd9ad 100644 --- a/std/assembly/typedarray.ts +++ b/std/assembly/typedarray.ts @@ -83,14 +83,14 @@ export class Int8Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: i8, index: i32, array: Int8Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: i8, index: i32, array: Int8Array) => T, initialValue: T, ): T { @@ -138,8 +138,8 @@ export class Int8Array extends ArrayBufferView { return this.join(); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } static wrap(buffer: ArrayBuffer, byteOffset: i32 = 0, length: i32 = -1): Int8Array { @@ -225,14 +225,14 @@ export class Uint8Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: u8, index: i32, array: Uint8Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: u8, index: i32, array: Uint8Array) => T, initialValue: T, ): T { @@ -276,8 +276,8 @@ export class Uint8Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -368,14 +368,14 @@ export class Uint8ClampedArray extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: u8, index: i32, array: Uint8ClampedArray) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: u8, index: i32, array: Uint8ClampedArray) => T, initialValue: T, ): T { @@ -419,8 +419,8 @@ export class Uint8ClampedArray extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -510,14 +510,14 @@ export class Int16Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: i16, index: i32, array: Int16Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: i16, index: i32, array: Int16Array) => T, initialValue: T, ): T { @@ -561,8 +561,8 @@ export class Int16Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -652,14 +652,14 @@ export class Uint16Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: u16, index: i32, array: Uint16Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: u16, index: i32, array: Uint16Array) => T, initialValue: T, ): T { @@ -703,8 +703,8 @@ export class Uint16Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -794,14 +794,14 @@ export class Int32Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: i32, index: i32, array: Int32Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: i32, index: i32, array: Int32Array) => T, initialValue: T, ): T { @@ -845,8 +845,8 @@ export class Int32Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -936,14 +936,14 @@ export class Uint32Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: u32, index: i32, array: Uint32Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: u32, index: i32, array: Uint32Array) => T, initialValue: T, ): T { @@ -987,8 +987,8 @@ export class Uint32Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -1078,14 +1078,14 @@ export class Int64Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: i64, index: i32, array: Int64Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: i64, index: i32, array: Int64Array) => T, initialValue: T, ): T { @@ -1129,8 +1129,8 @@ export class Int64Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -1220,14 +1220,14 @@ export class Uint64Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: u64, index: i32, array: Uint64Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: u64, index: i32, array: Uint64Array) => T, initialValue: T, ): T { @@ -1271,8 +1271,8 @@ export class Uint64Array extends ArrayBufferView { return joinIntegerArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -1362,14 +1362,14 @@ export class Float32Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: f32, index: i32, array: Float32Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: f32, index: i32, array: Float32Array) => T, initialValue: T, ): T { @@ -1413,8 +1413,8 @@ export class Float32Array extends ArrayBufferView { return joinFloatArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -1504,14 +1504,14 @@ export class Float64Array extends ArrayBufferView { return COPY_WITHIN(this, target, start, end); } - reduce( + reduce( fn: (accumulator: T, value: f64, index: i32, array: Float64Array) => T, initialValue: T, ): T { return REDUCE(this, fn, initialValue); } - reduceRight( + reduceRight( fn: (accumulator: T, value: f64, index: i32, array: Float64Array) => T, initialValue: T, ): T { @@ -1555,8 +1555,8 @@ export class Float64Array extends ArrayBufferView { return joinFloatArray(this.dataStart, this.length, separator); } - set(source: U, offset: i32 = 0): void { - SET>(this, source, offset); + set>(source: U, offset: i32 = 0): void { + SET(this, source, offset); } toString(): string { @@ -1570,7 +1570,7 @@ export class Float64Array extends ArrayBufferView { // @ts-ignore: decorator @inline -function SLICE( +function SLICE( array: TArray, start: i32, end: i32 @@ -1590,7 +1590,7 @@ function SLICE( // @ts-ignore: decorator @inline -function SUBARRAY( +function SUBARRAY( array: TArray, begin: i32, end: i32 @@ -1611,7 +1611,7 @@ function SUBARRAY( // @ts-ignore: decorator @inline -function COPY_WITHIN( +function COPY_WITHIN( array: TArray, target: i32, start: i32, @@ -1636,7 +1636,7 @@ function COPY_WITHIN( // @ts-ignore: decorator @inline -function REDUCE( +function REDUCE( array: TArray, fn: (accumulator: TRet, value: T, index: i32, array: TArray) => TRet, initialValue: TRet @@ -1650,7 +1650,7 @@ function REDUCE( // @ts-ignore: decorator @inline -function REDUCE_RIGHT( +function REDUCE_RIGHT( array: TArray, fn: (accumulator: TRet, value: T, index: i32, array: TArray) => TRet, initialValue: TRet @@ -1664,7 +1664,7 @@ function REDUCE_RIGHT( // @ts-ignore: decorator @inline -function MAP( +function MAP( array: TArray, fn: (value: T, index: i32, self: TArray) => T, ): TArray { @@ -1689,7 +1689,7 @@ function MAP( // @ts-ignore: decorator @inline -function FILTER( +function FILTER( array: TArray, fn: (value: T, index: i32, self: TArray) => bool, ): TArray { @@ -1719,7 +1719,7 @@ function FILTER( // @ts-ignore: decorator @inline -function FIND_INDEX( +function FIND_INDEX( array: TArray, fn: (value: T, index: i32, array: TArray) => bool, ): i32 { @@ -1732,7 +1732,7 @@ function FIND_INDEX( // @ts-ignore: decorator @inline -function FIND_LAST_INDEX( +function FIND_LAST_INDEX( array: TArray, fn: (value: T, index: i32, array: TArray) => bool, ): i32 { @@ -1745,7 +1745,7 @@ function FIND_LAST_INDEX( // @ts-ignore: decorator @inline -function INCLUDES( +function INCLUDES( array: TArray, searchElement: T, fromIndex: i32, @@ -1770,7 +1770,7 @@ function INCLUDES( // @ts-ignore: decorator @inline -function INDEX_OF( +function INDEX_OF( array: TArray, searchElement: T, fromIndex: i32, @@ -1789,7 +1789,7 @@ function INDEX_OF( // @ts-ignore: decorator @inline -function LAST_INDEX_OF( +function LAST_INDEX_OF( array: TArray, searchElement: T, fromIndex: i32, @@ -1809,7 +1809,7 @@ function LAST_INDEX_OF( // @ts-ignore: decorator @inline -function SOME( +function SOME( array: TArray, fn: (value: T, index: i32, array: TArray) => bool, ): bool { @@ -1822,7 +1822,7 @@ function SOME( // @ts-ignore: decorator @inline -function EVERY( +function EVERY( array: TArray, fn: (value: T, index: i32, array: TArray) => bool, ): bool { @@ -1836,7 +1836,7 @@ function EVERY( // @ts-ignore: decorator @inline -function FOREACH( +function FOREACH( array: TArray, fn: (value: T, index: i32, array: TArray) => void, ): void { @@ -1884,73 +1884,61 @@ function WRAP( // @ts-ignore: decorator @inline -function SET( +function SET< + TArray extends ArrayLike, + UArray extends ArrayLike +>( target: TArray, source: UArray, offset: i32 = 0 ): void { // need to assert at compile time that U is not a reference or a function - if (isReference()) { + if (isReference>()) { ERROR(E_NOTIMPLEMENTED); } - - // Uncaught RangeError: offset is out of bounds - if (offset < 0) throw new RangeError(E_INDEXOUTOFRANGE); - if (source.length + offset > target.length) throw new RangeError(E_INDEXOUTOFRANGE); - + let sourceLen = source.length; + if (offset < 0 || sourceLen + offset > target.length) { + // offset is out of bounds + throw new RangeError(E_INDEXOUTOFRANGE); + } + // @ts-ignore: dataStart + var targetStart = target.dataStart + (offset << (alignof>())); + // @ts-ignore: dataStart + var sourceStart = source.dataStart; // if the types align and match, use memory.copy() instead of manual loop - if (isInteger() == isInteger() && alignof() == alignof() && - !(target instanceof Uint8ClampedArray && isSigned())) { - memory.copy( - target.dataStart + (offset << alignof()), - source.dataStart, - source.byteLength - ); + if ( + isInteger>() == isInteger>() && + alignof>() == alignof>() && + !(isSigned>() && target instanceof Uint8ClampedArray) + ) { + memory.copy(targetStart, sourceStart, sourceLen << (alignof>())); } else { - let targetDataStart = target.dataStart + (offset << alignof()); - let sourceDataStart = source.dataStart; - let count = source.length; - for (let i = 0; i < count; i++) { + for (let i = 0; i < sourceLen; i++) { + let ptr = targetStart + (i << (alignof>())); + let value = load>(sourceStart + (i << (alignof>()))); // if TArray is Uint8ClampedArray, then values must be clamped if (target instanceof Uint8ClampedArray) { - if (isFloat()) { - let value = load(sourceDataStart + (i << alignof())); - store( - targetDataStart + (i << alignof()), - isFinite(value) ? max(0, min(255, value)) : 0 + if (isFloat>()) { + store>(ptr, + isFinite>(value) + ? >max>(0, min>(255, value)) + : 0 ); } else { - let value = load(sourceDataStart + (i << alignof())); - if (!isSigned()) { - store( - targetDataStart + (i << alignof()), - // @ts-ignore: cast to T is valid for numeric types here - min(255, value) - ); - } else if (sizeof() <= 4) { - store( - targetDataStart + (i << alignof()), - // @ts-ignore: cast to T is valid for numeric types here - ~(value >> 31) & (((255 - value) >> 31) | value) - ); + if (!isSigned>()) { + store>(ptr, min>(255, value)); + } else if (sizeof>() <= 4) { + store>(ptr, ~(value >> 31) & (((255 - value) >> 31) | value)); } else { - store( - targetDataStart + (i << alignof()), - // @ts-ignore: cast to T is valid for numeric types here - ~(value >> 63) & (((255 - value) >> 63) | value) - ); + store>(ptr, ~(value >> 63) & (((255 - value) >> 63) | value)); } } - // if U is a float, then casting float to int must include a finite check - } else if (isFloat() && !isFloat()) { - let value = load(sourceDataStart + (i << alignof())); - // @ts-ignore: cast to T is valid for numeric types here - store(targetDataStart + (i << alignof()), isFinite(value) ? value : 0); - } else if (isFloat() && !isFloat()) { - // @ts-ignore: In this case the conversion is required - store(targetDataStart + (i << alignof()), load(sourceDataStart + (i << alignof()))); } else { - store(targetDataStart + (i << alignof()), load(sourceDataStart + (i << alignof()))); + if (isFloat>() && !isFloat>()) { + store>(ptr, isFinite>(value) ? >value : 0); + } else { + store>(ptr, >value); + } } } } diff --git a/tests/compiler/std/typedarray.debug.wat b/tests/compiler/std/typedarray.debug.wat index 8e417660d5..e4400aaa40 100644 --- a/tests/compiler/std/typedarray.debug.wat +++ b/tests/compiler/std/typedarray.debug.wat @@ -23202,6 +23202,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -23210,75 +23212,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 2 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store8 local.get $9 i32.const 1 @@ -23317,7 +23316,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -23326,82 +23326,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 0 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_s else i32.const 0 @@ -23424,6 +23421,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -23432,76 +23431,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 3 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store8 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store8 local.get $9 i32.const 1 i32.add @@ -23523,7 +23520,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -23532,82 +23530,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 0 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_s else i32.const 0 @@ -23625,6 +23620,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -23633,45 +23631,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 0 + i32.shl memory.copy ) (func $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -23683,6 +23684,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -23691,75 +23694,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store8 local.get $9 i32.const 1 @@ -23773,6 +23773,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -23781,45 +23784,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 0 + i32.shl memory.copy ) (func $~lib/typedarray/Uint8Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -23831,6 +23837,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -23839,75 +23847,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 2 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store8 local.get $9 i32.const 1 @@ -23946,7 +23951,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -23955,82 +23961,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s + end if i32.const 336 i32.const 608 - i32.const 1898 - i32.const 19 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - local.get $4 - call $~lib/array/Array#get:length + local.get $5 + i32.load offset=4 local.get $3 + i32.const 0 + i32.shl i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s - if - i32.const 336 - i32.const 608 - i32.const 1899 - i32.const 47 - call $~lib/builtins/abort - unreachable - end + local.set $7 + local.get $4 + i32.load offset=4 + local.set $8 i32.const 1 i32.const 0 i32.eq drop - local.get $5 - i32.load offset=4 - local.get $3 - i32.const 0 - i32.shl - i32.add - local.set $6 - local.get $4 - i32.load offset=4 - local.set $7 - local.get $4 - call $~lib/array/Array#get:length - local.set $8 i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 0 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_u else i32.const 0 @@ -24053,6 +24056,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -24061,76 +24066,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 3 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store8 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store8 local.get $9 i32.const 1 i32.add @@ -24148,7 +24151,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -24157,82 +24161,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 0 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_u else i32.const 0 @@ -24250,6 +24251,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -24258,45 +24262,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 0 + i32.shl memory.copy ) (func $~lib/typedarray/Uint8Array#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -24308,6 +24315,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -24316,75 +24325,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 0 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store8 local.get $9 i32.const 1 @@ -24398,6 +24404,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -24406,45 +24415,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 0 + i32.shl memory.copy ) (func $~lib/typedarray/Uint8ClampedArray#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -24457,6 +24469,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -24465,69 +24478,70 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 2 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 + i32.const 0 + i32.shl + i32.add + local.set $11 + local.get $8 + local.get $9 i32.const 2 i32.shl i32.add i32.load - local.set $11 + local.set $12 + i32.const 1 + drop + i32.const 0 + drop i32.const 1 i32.eqz drop @@ -24535,22 +24549,18 @@ i32.const 4 i32.le_u drop - local.get $6 - local.get $9 - i32.const 0 - i32.shl - i32.add local.get $11 + local.get $12 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.const 255 - local.get $11 + local.get $12 i32.sub i32.const 31 i32.shr_s - local.get $11 + local.get $12 i32.or i32.and i32.store8 @@ -24578,7 +24588,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -24587,83 +24598,80 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 1 - drop local.get $7 local.get $9 - i32.const 2 + i32.const 0 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 1 + drop + i32.const 1 + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $11 + local.get $12 f32.min f32.max i32.trunc_sat_f32_u @@ -24688,7 +24696,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i64) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -24697,69 +24706,70 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 3 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 + i32.const 0 + i32.shl + i32.add + local.set $11 + local.get $8 + local.get $9 i32.const 3 i32.shl i32.add i64.load - local.set $11 + local.set $12 + i32.const 1 + drop + i32.const 0 + drop i32.const 1 i32.eqz drop @@ -24767,12 +24777,8 @@ i32.const 4 i32.le_u drop - local.get $6 - local.get $9 - i32.const 0 - i32.shl - i32.add local.get $11 + local.get $12 i32.wrap_i64 i32.const 31 i32.shr_s @@ -24780,13 +24786,13 @@ i32.xor i64.extend_i32_s i32.const 255 - local.get $11 + local.get $12 i32.wrap_i64 i32.sub i32.const 31 i32.shr_s i64.extend_i32_s - local.get $11 + local.get $12 i64.or i64.and i64.store8 @@ -24807,7 +24813,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -24816,83 +24823,80 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 1 - drop local.get $7 local.get $9 - i32.const 3 + i32.const 0 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 1 + drop + i32.const 1 + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) f64.const 0 f64.const 255 - local.get $11 + local.get $12 f64.min f64.max i32.trunc_sat_f64_u @@ -24912,6 +24916,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -24920,45 +24927,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 0 + i32.shl memory.copy ) (func $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -24971,6 +24981,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -24979,69 +24990,70 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 + i32.const 0 + i32.shl + i32.add + local.set $11 + local.get $8 + local.get $9 i32.const 1 i32.shl i32.add i32.load16_s - local.set $11 + local.set $12 + i32.const 1 + drop + i32.const 0 + drop i32.const 1 i32.eqz drop @@ -25049,22 +25061,18 @@ i32.const 4 i32.le_u drop - local.get $6 - local.get $9 - i32.const 0 - i32.shl - i32.add local.get $11 + local.get $12 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.const 255 - local.get $11 + local.get $12 i32.sub i32.const 31 i32.shr_s - local.get $11 + local.get $12 i32.or i32.and i32.store8 @@ -25086,6 +25094,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -25094,68 +25103,69 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.eqz + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 i32.const 0 i32.shl i32.add - i32.load8_s local.set $11 + local.get $8 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $12 + i32.const 1 + drop + i32.const 0 + drop i32.const 1 i32.eqz drop @@ -25163,22 +25173,18 @@ i32.const 4 i32.le_u drop - local.get $6 - local.get $9 - i32.const 0 - i32.shl - i32.add local.get $11 + local.get $12 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.const 255 - local.get $11 + local.get $12 i32.sub i32.const 31 i32.shr_s - local.get $11 + local.get $12 i32.or i32.and i32.store8 @@ -25199,6 +25205,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -25207,75 +25215,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 2 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -25316,7 +25321,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -25325,82 +25331,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 1 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 1 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_s else i32.const 0 @@ -25423,6 +25426,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -25431,76 +25436,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 3 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store16 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store16 local.get $9 i32.const 1 i32.add @@ -25518,7 +25521,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -25527,82 +25531,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 1 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 1 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_s else i32.const 0 @@ -25625,6 +25626,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -25633,75 +25636,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -25715,6 +25715,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -25723,45 +25726,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 1 + i32.shl memory.copy ) (func $~lib/typedarray/Int16Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -25773,6 +25779,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -25781,75 +25789,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -25868,6 +25873,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -25876,75 +25883,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 2 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -25985,7 +25989,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -25994,82 +25999,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 1 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 1 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_u else i32.const 0 @@ -26092,6 +26094,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -26100,76 +26104,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 3 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store16 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store16 local.get $9 i32.const 1 i32.add @@ -26187,7 +26189,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -26196,82 +26199,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 1 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 1 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_u else i32.const 0 @@ -26294,6 +26294,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -26302,75 +26304,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -26384,6 +26383,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -26392,45 +26394,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 1 + i32.shl memory.copy ) (func $~lib/typedarray/Uint16Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -26442,6 +26447,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -26450,75 +26457,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 1 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store16 local.get $9 i32.const 1 @@ -26532,6 +26536,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -26540,45 +26547,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 2 + i32.shl memory.copy ) (func $~lib/typedarray/Int32Array#__uget (param $0 i32) (param $1 i32) (result i32) @@ -26608,7 +26618,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -26617,82 +26628,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 i32.const 2 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_s else i32.const 0 @@ -26715,6 +26723,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -26723,76 +26733,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort - unreachable - end - i32.const 2 - i32.const 3 - i32.eq - drop + unreachable + end local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 3 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store32 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store local.get $9 i32.const 1 i32.add @@ -26810,7 +26818,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -26819,82 +26828,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 2 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 2 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_s else i32.const 0 @@ -26917,6 +26923,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -26925,75 +26933,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27012,6 +27017,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27020,75 +27027,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 1 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27107,6 +27111,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27115,75 +27121,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27197,6 +27200,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -27205,45 +27211,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 2 + i32.shl memory.copy ) (func $~lib/array/Array#get:length (param $0 i32) (result i32) @@ -27277,7 +27286,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -27286,82 +27296,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 i32.const 2 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f32_u else i32.const 0 @@ -27384,6 +27391,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -27392,76 +27401,74 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 3 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 3 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load - i64.store32 + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i32.wrap_i64 + i32.store local.get $9 i32.const 1 i32.add @@ -27479,7 +27486,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -27488,82 +27496,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 3 + i32.const 2 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 2 + i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i32) - local.get $11 + local.get $12 i32.trunc_sat_f64_u else i32.const 0 @@ -27586,6 +27591,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27594,75 +27601,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27681,6 +27685,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27689,75 +27695,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 1 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27776,6 +27779,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27784,75 +27789,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 2 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 2 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 i32.store local.get $9 i32.const 1 @@ -27871,6 +27873,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -27879,75 +27883,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 2 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add - i64.load32_s + i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -27988,7 +27990,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -27997,82 +28000,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 3 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 3 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i64) - local.get $11 + local.get $12 i64.trunc_sat_f32_s else i64.const 0 @@ -28090,6 +28090,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -28098,45 +28101,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 3 + i32.shl memory.copy ) (func $~lib/typedarray/Int64Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -28148,7 +28154,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -28157,82 +28164,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 i32.const 3 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i64) - local.get $11 + local.get $12 i64.trunc_sat_f64_s else i64.const 0 @@ -28255,6 +28259,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -28263,75 +28269,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add - i64.load8_u + i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_u i64.store local.get $9 i32.const 1 @@ -28350,6 +28354,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -28358,75 +28364,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 1 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add - i64.load16_s + i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -28445,6 +28449,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -28453,75 +28459,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add - i64.load8_s + i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -28540,6 +28544,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -28548,75 +28554,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 2 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add - i64.load32_s + i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -28657,7 +28661,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -28666,82 +28671,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 - i32.const 2 + i32.const 3 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 3 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i64) - local.get $11 + local.get $12 i64.trunc_sat_f32_u else i64.const 0 @@ -28759,6 +28761,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -28767,45 +28772,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 3 + i32.shl memory.copy ) (func $~lib/typedarray/Uint64Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -28817,7 +28825,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f64) + (local $11 i32) + (local $12 f64) local.get $0 local.set $5 local.get $1 @@ -28826,82 +28835,79 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - i32.eqz - drop local.get $7 local.get $9 i32.const 3 i32.shl i32.add - f64.load local.set $11 - local.get $6 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add + f64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + i32.eqz + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f64.sub f64.const 0 f64.eq if (result i64) - local.get $11 + local.get $12 i64.trunc_sat_f64_u else i64.const 0 @@ -28924,6 +28930,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -28932,75 +28940,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add - i64.load8_u + i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_u i64.store local.get $9 i32.const 1 @@ -29019,6 +29025,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29027,75 +29035,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 1 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add - i64.load16_s + i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -29114,6 +29120,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29122,75 +29130,73 @@ local.set $3 i32.const 0 drop - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable - end local.get $4 call $~lib/array/Array#get:length + local.set $6 local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.gt_s + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.gt_s + end if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 3 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add - i64.load8_s + i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 + i64.extend_i32_s i64.store local.get $9 i32.const 1 @@ -29209,6 +29215,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29217,76 +29225,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f32.convert_i32_s f32.store local.get $9 @@ -29319,6 +29323,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) local.get $0 local.set $5 local.get $1 @@ -29327,45 +29334,48 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.eqz - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add + local.set $7 local.get $4 i32.load offset=4 - local.get $4 - i32.load offset=8 + local.set $8 + i32.const 0 + i32.eqz + drop + local.get $7 + local.get $8 + local.get $6 + i32.const 2 + i32.shl memory.copy ) (func $~lib/typedarray/Float32Array#set<~lib/typedarray/Int64Array> (param $0 i32) (param $1 i32) (param $2 i32) @@ -29377,6 +29387,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -29385,76 +29397,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f32.convert_i64_s f32.store local.get $9 @@ -29474,6 +29482,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29482,76 +29492,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f32.convert_i32_u f32.store local.get $9 @@ -29571,6 +29577,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29579,76 +29587,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f32.convert_i32_s f32.store local.get $9 @@ -29668,6 +29672,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29676,76 +29682,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 2 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 2 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f32.convert_i32_s f32.store local.get $9 @@ -29765,6 +29767,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -29773,76 +29777,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add i32.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f64.convert_i32_s f64.store local.get $9 @@ -29880,6 +29880,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -29888,77 +29890,73 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.eq - drop + i32.const 1902 + i32.const 5 + call $~lib/builtins/abort + unreachable + end local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 + i32.const 3 + i32.const 2 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 1 - i32.eqz - drop - i32.const 1 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 2 i32.shl i32.add f32.load + local.set $12 + i32.const 0 + drop + i32.const 1 + i32.eqz + drop + local.get $11 + local.get $12 f64.promote_f32 f64.store local.get $9 @@ -29978,6 +29976,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i64) local.get $0 local.set $5 local.get $1 @@ -29986,76 +29986,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int64Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int64Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int64Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 3 i32.shl i32.add i64.load + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f64.convert_i64_s f64.store local.get $9 @@ -30075,6 +30071,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -30083,76 +30081,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint8Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint8Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_u + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f64.convert_i32_u f64.store local.get $9 @@ -30172,6 +30166,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -30180,76 +30176,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int16Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 1 i32.shl i32.add i32.load16_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f64.convert_i32_s f64.store local.get $9 @@ -30269,6 +30261,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -30277,76 +30271,72 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/array/Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.gt_s end - local.get $4 - call $~lib/array/Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 3 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/array/Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 1 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 0 - drop - i32.const 0 - drop - i32.const 0 - i32.eqz - drop - local.get $6 + local.get $7 local.get $9 i32.const 3 i32.shl i32.add - local.get $7 + local.set $11 + local.get $8 local.get $9 i32.const 0 i32.shl i32.add i32.load8_s + local.set $12 + i32.const 0 + drop + i32.const 0 + drop + local.get $11 + local.get $12 f64.convert_i32_s f64.store local.get $9 @@ -30366,7 +30356,8 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) + (local $11 i32) + (local $12 f32) local.get $0 local.set $5 local.get $1 @@ -30375,83 +30366,80 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Float32Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Float32Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 1 - i32.const 0 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Float32Array#get:length + i32.load offset=4 local.set $8 + i32.const 1 + i32.const 0 + i32.eq + drop i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 1 - drop local.get $7 local.get $9 - i32.const 2 + i32.const 0 i32.shl i32.add - f32.load local.set $11 - local.get $6 + local.get $8 local.get $9 - i32.const 0 + i32.const 2 i32.shl i32.add + f32.load + local.set $12 + i32.const 1 + drop + i32.const 1 + drop local.get $11 - local.get $11 + local.get $12 + local.get $12 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $11 + local.get $12 f32.min f32.max i32.trunc_sat_f32_u @@ -30477,6 +30465,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) + (local $12 i32) local.get $0 local.set $5 local.get $1 @@ -30485,69 +30474,70 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Int32Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Int32Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Int32Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 2 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 + i32.const 0 + i32.shl + i32.add + local.set $11 + local.get $8 + local.get $9 i32.const 2 i32.shl i32.add i32.load - local.set $11 + local.set $12 + i32.const 1 + drop + i32.const 0 + drop i32.const 1 i32.eqz drop @@ -30555,22 +30545,18 @@ i32.const 4 i32.le_u drop - local.get $6 - local.get $9 - i32.const 0 - i32.shl - i32.add local.get $11 + local.get $12 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.const 255 - local.get $11 + local.get $12 i32.sub i32.const 31 i32.shr_s - local.get $11 + local.get $12 i32.or i32.and i32.store8 @@ -30594,6 +30580,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) + (local $14 i32) local.get $0 local.set $5 local.get $1 @@ -30602,83 +30589,80 @@ local.set $3 i32.const 0 drop + local.get $4 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 local.get $3 i32.const 0 i32.lt_s - if - i32.const 336 - i32.const 608 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $6 + local.get $3 + i32.add + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.gt_s end - local.get $4 - call $~lib/typedarray/Uint32Array#get:length - local.get $3 - i32.add - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.gt_s if i32.const 336 i32.const 608 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 2 - i32.eq - drop local.get $5 i32.load offset=4 local.get $3 i32.const 0 i32.shl i32.add - local.set $6 - local.get $4 - i32.load offset=4 local.set $7 local.get $4 - call $~lib/typedarray/Uint32Array#get:length + i32.load offset=4 local.set $8 i32.const 0 + i32.const 2 + i32.eq + drop + i32.const 0 local.set $9 loop $for-loop|0 local.get $9 - local.get $8 + local.get $6 i32.lt_s local.set $10 local.get $10 if - i32.const 1 - drop - i32.const 0 - drop local.get $7 local.get $9 + i32.const 0 + i32.shl + i32.add + local.set $11 + local.get $8 + local.get $9 i32.const 2 i32.shl i32.add i32.load - local.set $11 + local.set $12 + i32.const 1 + drop i32.const 0 - i32.eqz drop - local.get $6 - local.get $9 i32.const 0 - i32.shl - i32.add - i32.const 255 - local.tee $12 + i32.eqz + drop local.get $11 + i32.const 255 local.tee $13 local.get $12 + local.tee $14 local.get $13 + local.get $14 i32.lt_u select i32.store8 @@ -57262,7 +57246,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57276,7 +57260,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57290,7 +57274,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -57313,7 +57297,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -57327,7 +57311,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -57341,7 +57325,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -57401,7 +57385,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57415,7 +57399,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57429,7 +57413,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -57452,7 +57436,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -57466,7 +57450,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -57480,7 +57464,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -57540,7 +57524,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57554,7 +57538,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57568,7 +57552,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -57591,7 +57575,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -57605,7 +57589,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -57619,7 +57603,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -57679,7 +57663,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57693,7 +57677,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57707,7 +57691,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -57730,7 +57714,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -57744,7 +57728,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -57758,7 +57742,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -57818,7 +57802,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57832,7 +57816,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57846,7 +57830,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -57869,7 +57853,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -57883,7 +57867,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -57897,7 +57881,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -57957,7 +57941,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -57971,7 +57955,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -57985,7 +57969,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58008,7 +57992,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58022,7 +58006,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58036,7 +58020,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -58096,7 +58080,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -58110,7 +58094,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -58124,7 +58108,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58147,7 +58131,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58161,7 +58145,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58175,7 +58159,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -58235,7 +58219,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -58249,7 +58233,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -58263,7 +58247,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58286,7 +58270,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58300,7 +58284,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58314,7 +58298,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -58374,7 +58358,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -58388,7 +58372,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -58402,7 +58386,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58425,7 +58409,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58439,7 +58423,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58453,7 +58437,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -58513,7 +58497,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -58527,7 +58511,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -58541,7 +58525,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58564,7 +58548,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58578,7 +58562,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58592,7 +58576,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable @@ -58652,7 +58636,7 @@ if i32.const 0 i32.const 544 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable @@ -58666,7 +58650,7 @@ if i32.const 0 i32.const 544 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable @@ -58680,7 +58664,7 @@ if i32.const 0 i32.const 544 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable @@ -58703,7 +58687,7 @@ if i32.const 0 i32.const 544 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable @@ -58717,7 +58701,7 @@ if i32.const 0 i32.const 544 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable @@ -58731,7 +58715,7 @@ if i32.const 0 i32.const 544 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/typedarray.release.wat b/tests/compiler/std/typedarray.release.wat index 62632863f6..a39f73ee29 100644 --- a/tests/compiler/std/typedarray.release.wat +++ b/tests/compiler/std/typedarray.release.wat @@ -26445,33 +26445,31 @@ (local $3 i32) i32.const 11020 i32.load + local.tee $2 local.get $0 i32.load offset=8 i32.gt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end local.get $0 i32.load offset=4 - local.set $2 + local.set $0 i32.const 11012 i32.load local.set $3 - i32.const 11020 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if + local.get $0 local.get $1 - local.get $2 i32.add local.get $3 local.get $1 @@ -26497,14 +26495,15 @@ i32.load offset=8 i32.const 3 i32.shr_u + local.tee $3 i32.const 6 i32.add i32.lt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26515,21 +26514,16 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 3 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.add - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl @@ -26545,16 +26539,18 @@ end ) (func $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> (param $0 i32) (param $1 i32) + (local $2 i32) local.get $1 i32.load offset=8 + local.tee $2 local.get $0 i32.load offset=8 i32.gt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26562,8 +26558,7 @@ i32.load offset=4 local.get $1 i32.load offset=4 - local.get $1 - i32.load offset=8 + local.get $2 memory.copy ) (func $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) @@ -26575,14 +26570,15 @@ i32.load offset=8 i32.const 1 i32.shr_u + local.tee $3 i32.const 4 i32.add i32.lt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26593,21 +26589,16 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.add - local.get $3 + local.get $1 local.get $2 i32.const 1 i32.shl @@ -26623,18 +26614,20 @@ end ) (func $~lib/typedarray/Int8Array#set<~lib/array/Array> (param $0 i32) + (local $1 i32) local.get $0 i32.load offset=8 i32.const 11276 i32.load + local.tee $1 i32.const 7 i32.add i32.lt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26644,39 +26637,36 @@ i32.add i32.const 11268 i32.load - i32.const 11272 - i32.load + local.get $1 memory.copy ) (func $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) - (local $4 i64) - (local $5 i32) - local.get $2 - i32.const 0 - i32.lt_s - if - i32.const 1360 - i32.const 1632 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 + (local $4 i32) + (local $5 i64) local.get $1 i32.load offset=8 i32.const 3 i32.shr_u + local.set $4 local.get $2 - i32.add + i32.const 0 i32.lt_s + if (result i32) + i32.const 1 + else + local.get $0 + i32.load offset=8 + local.get $2 + local.get $4 + i32.add + i32.lt_s + end if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26684,44 +26674,39 @@ i32.load offset=4 local.get $2 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $5 - local.get $1 - i32.load offset=8 - i32.const 3 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $2 + local.get $0 local.get $3 i32.add - local.get $5 + local.get $1 local.get $3 i32.const 3 i32.shl i32.add i64.load - local.tee $4 + local.tee $5 i32.wrap_i64 - local.tee $0 + local.tee $2 i32.const 31 i32.shr_s i32.const -1 i32.xor i64.extend_i32_s i32.const 255 - local.get $0 + local.get $2 i32.sub i32.const 31 i32.shr_s i64.extend_i32_s - local.get $4 + local.get $5 i64.or i64.and i64.store8 @@ -26736,31 +26721,29 @@ (func $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) - local.get $2 - i32.const 0 - i32.lt_s - if - i32.const 1360 - i32.const 1632 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 local.get $1 i32.load offset=8 i32.const 1 i32.shr_u + local.set $4 local.get $2 - i32.add + i32.const 0 i32.lt_s + if (result i32) + i32.const 1 + else + local.get $0 + i32.load offset=8 + local.get $2 + local.get $4 + i32.add + i32.lt_s + end if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26768,37 +26751,32 @@ i32.load offset=4 local.get $2 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $2 + local.get $0 local.get $3 i32.add - local.get $4 + local.get $1 local.get $3 i32.const 1 i32.shl i32.add i32.load16_s - local.tee $0 + local.tee $2 i32.const 255 - local.get $0 + local.get $2 i32.sub i32.const 31 i32.shr_s i32.or - local.get $0 + local.get $2 i32.const 31 i32.shr_s i32.const -1 @@ -26819,6 +26797,7 @@ (local $3 i32) i32.const 11020 i32.load + local.tee $2 local.get $0 i32.load offset=8 i32.const 1 @@ -26827,26 +26806,23 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end local.get $0 i32.load offset=4 - local.set $2 + local.set $0 i32.const 11012 i32.load local.set $3 - i32.const 11020 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $0 local.get $1 i32.const 1 i32.shl @@ -26873,6 +26849,7 @@ i32.load offset=8 i32.const 3 i32.shr_u + local.tee $3 i32.const 6 i32.add local.get $0 @@ -26883,8 +26860,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26895,23 +26872,18 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 3 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 1 i32.shl i32.add - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl @@ -26931,6 +26903,7 @@ (local $3 i32) local.get $1 i32.load offset=8 + local.tee $3 local.get $0 i32.load offset=8 i32.const 1 @@ -26939,8 +26912,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -26949,22 +26922,19 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 1 i32.shl i32.add + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_u i32.store16 @@ -26977,10 +26947,12 @@ end ) (func $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> (param $0 i32) (param $1 i32) + (local $2 i32) local.get $1 i32.load offset=8 i32.const 1 i32.shr_u + local.tee $2 i32.const 4 i32.add local.get $0 @@ -26991,8 +26963,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27002,8 +26974,9 @@ i32.add local.get $1 i32.load offset=4 - local.get $1 - i32.load offset=8 + local.get $2 + i32.const 1 + i32.shl memory.copy ) (func $~lib/typedarray/Int16Array#set<~lib/array/Array> (param $0 i32) @@ -27012,6 +26985,7 @@ (local $3 i32) i32.const 11276 i32.load + local.tee $2 i32.const 7 i32.add local.get $0 @@ -27022,8 +26996,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27031,19 +27005,16 @@ i32.load offset=4 i32.const 14 i32.add - local.set $2 + local.set $0 i32.const 11268 i32.load local.set $3 - i32.const 11276 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $0 local.get $1 i32.const 1 i32.shl @@ -27062,31 +27033,30 @@ end ) (func $~lib/typedarray/Int32Array#set<~lib/array/Array> (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=12 + local.set $3 local.get $2 i32.const 0 i32.lt_s - if - i32.const 1360 - i32.const 1632 - i32.const 1898 - i32.const 19 - call $~lib/builtins/abort - unreachable + if (result i32) + i32.const 1 + else + local.get $2 + local.get $3 + i32.add + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.gt_s end - local.get $1 - i32.load offset=12 - local.get $2 - i32.add - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.gt_s if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27098,8 +27068,9 @@ i32.add local.get $1 i32.load offset=4 - local.get $1 - i32.load offset=8 + local.get $3 + i32.const 2 + i32.shl memory.copy ) (func $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> (param $0 i32) (param $1 i32) @@ -27109,6 +27080,7 @@ i32.load offset=8 i32.const 3 i32.shr_u + local.tee $3 i32.const 6 i32.add local.get $0 @@ -27119,8 +27091,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27131,23 +27103,18 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 3 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 2 i32.shl i32.add - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl @@ -27167,6 +27134,7 @@ (local $3 i32) local.get $1 i32.load offset=8 + local.tee $3 local.get $0 i32.load offset=8 i32.const 2 @@ -27175,8 +27143,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27185,22 +27153,19 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 2 i32.shl i32.add + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_u i32.store @@ -27219,6 +27184,7 @@ i32.load offset=8 i32.const 1 i32.shr_u + local.tee $3 i32.const 4 i32.add local.get $0 @@ -27229,8 +27195,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27241,23 +27207,18 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 2 i32.shl i32.add - local.get $3 + local.get $1 local.get $2 i32.const 1 i32.shl @@ -27278,6 +27239,7 @@ (local $3 i32) i32.const 11276 i32.load + local.tee $2 i32.const 7 i32.add local.get $0 @@ -27288,8 +27250,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27297,19 +27259,16 @@ i32.load offset=4 i32.const 28 i32.add - local.set $2 + local.set $0 i32.const 11268 i32.load local.set $3 - i32.const 11276 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $0 local.get $1 i32.const 2 i32.shl @@ -27333,6 +27292,7 @@ (local $3 i32) i32.const 11020 i32.load + local.tee $2 local.get $0 i32.load offset=8 i32.const 3 @@ -27341,26 +27301,23 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end local.get $0 i32.load offset=4 - local.set $2 + local.set $0 i32.const 11012 i32.load local.set $3 - i32.const 11020 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $0 local.get $1 i32.const 3 i32.shl @@ -27381,10 +27338,12 @@ end ) (func $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> (param $0 i32) (param $1 i32) + (local $2 i32) local.get $1 i32.load offset=8 i32.const 3 i32.shr_u + local.tee $2 i32.const 6 i32.add local.get $0 @@ -27395,8 +27354,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27406,8 +27365,9 @@ i32.add local.get $1 i32.load offset=4 - local.get $1 - i32.load offset=8 + local.get $2 + i32.const 3 + i32.shl memory.copy ) (func $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> (param $0 i32) (param $1 i32) @@ -27415,6 +27375,7 @@ (local $3 i32) local.get $1 i32.load offset=8 + local.tee $3 local.get $0 i32.load offset=8 i32.const 3 @@ -27423,8 +27384,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27433,22 +27394,19 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 3 i32.shl i32.add + local.get $1 local.get $2 - local.get $3 i32.add i64.load8_u i64.store @@ -27467,6 +27425,7 @@ i32.load offset=8 i32.const 1 i32.shr_u + local.tee $3 i32.const 4 i32.add local.get $0 @@ -27477,8 +27436,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27489,23 +27448,18 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $3 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shr_u local.set $1 loop $for-loop|0 - local.get $1 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $0 local.get $2 i32.const 3 i32.shl i32.add - local.get $3 + local.get $1 local.get $2 i32.const 1 i32.shl @@ -27526,6 +27480,7 @@ (local $3 i32) i32.const 11276 i32.load + local.tee $2 i32.const 7 i32.add local.get $0 @@ -27536,8 +27491,8 @@ if i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -27545,19 +27500,16 @@ i32.load offset=4 i32.const 56 i32.add - local.set $2 + local.set $0 i32.const 11268 i32.load local.set $3 - i32.const 11276 - i32.load - local.set $0 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $0 local.get $1 i32.const 3 i32.shl @@ -38181,35 +38133,33 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 local.get $4 i32.load offset=8 i32.const 11100 i32.load + local.tee $8 i32.const 3 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 3 i32.add - local.set $8 - i32.const 11092 - i32.load local.set $5 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $8 i32.lt_s if local.get $0 - local.get $8 - i32.add local.get $5 + i32.add + local.get $9 local.get $0 i32.const 2 i32.shl @@ -38266,32 +38216,30 @@ i32.load offset=8 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 2 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if local.get $0 - local.get $5 - i32.add local.get $6 + i32.add + local.get $8 local.get $0 i32.const 3 i32.shl @@ -38311,7 +38259,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -38357,8 +38305,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -38562,35 +38510,33 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 local.get $4 i32.load offset=8 i32.const 11100 i32.load + local.tee $8 i32.const 3 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 3 i32.add - local.set $8 - i32.const 11092 - i32.load local.set $5 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $8 i32.lt_s if local.get $0 - local.get $8 - i32.add local.get $5 + i32.add + local.get $9 local.get $0 i32.const 2 i32.shl @@ -38647,32 +38593,30 @@ i32.load offset=8 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 2 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if local.get $0 - local.get $5 - i32.add local.get $6 + i32.add + local.get $8 local.get $0 i32.const 3 i32.shl @@ -38692,7 +38636,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -38738,8 +38682,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -38927,32 +38871,30 @@ global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - block $folding-inner1 - local.get $7 - i32.load offset=8 + block $folding-inner0 i32.const 11020 i32.load - i32.lt_s - br_if $folding-inner1 + local.tee $8 + local.get $7 + i32.load offset=8 + i32.gt_s + br_if $folding-inner0 local.get $7 i32.load offset=4 - local.set $8 - i32.const 11012 - i32.load local.set $9 - i32.const 11020 + i32.const 11012 i32.load local.set $10 loop $for-loop|0 local.get $0 - local.get $10 + local.get $8 i32.lt_s if local.get $0 - local.get $8 + local.get $9 i32.add i32.const 255 - local.get $9 + local.get $10 local.get $0 i32.const 2 i32.shl @@ -38997,34 +38939,32 @@ i32.load offset=8 i32.const 11100 i32.load + local.tee $3 i32.const 3 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $7 i32.load offset=4 i32.const 3 i32.add - local.set $3 - i32.const 11092 - i32.load local.set $8 - i32.const 11100 + i32.const 11092 i32.load local.set $9 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $9 + local.get $3 i32.lt_s if local.get $0 - local.get $3 + local.get $8 i32.add f32.const 0 f32.const 255 - local.get $8 + local.get $9 local.get $0 i32.const 2 i32.shl @@ -39046,7 +38986,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -39084,34 +39024,32 @@ i32.load offset=8 i32.const 11196 i32.load + local.tee $3 i32.const 2 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $7 i32.load offset=4 i32.const 2 i32.add - local.set $3 - i32.const 11188 - i32.load local.set $4 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|011 + loop $for-loop|08 local.get $0 - local.get $8 + local.get $3 i32.lt_s if local.get $0 - local.get $3 + local.get $4 i32.add f64.const 0 f64.const 255 - local.get $4 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -39133,7 +39071,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|011 + br $for-loop|08 end end i32.const 10 @@ -39162,34 +39100,32 @@ i32.load offset=8 i32.const 11276 i32.load + local.tee $3 i32.const 7 i32.add i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $7 i32.load offset=4 i32.const 7 i32.add - local.set $3 - i32.const 11268 - i32.load local.set $4 - i32.const 11276 + i32.const 11268 i32.load local.set $5 i32.const 0 local.set $0 - loop $for-loop|017 + loop $for-loop|013 local.get $0 - local.get $5 + local.get $3 i32.lt_s if local.get $0 - local.get $3 + local.get $4 i32.add i32.const 255 local.get $0 - local.get $4 + local.get $5 i32.add i32.load8_s local.tee $6 @@ -39209,7 +39145,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|017 + br $for-loop|013 end end i32.const 10 @@ -39232,8 +39168,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -39442,9 +39378,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $8 i32.const 3 i32.add local.get $4 @@ -39452,29 +39389,26 @@ i32.const 1 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 6 i32.add - local.set $8 - i32.const 11092 - i32.load local.set $5 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $5 local.get $0 i32.const 1 i32.shl i32.add - local.get $5 + local.get $9 local.get $0 i32.const 2 i32.shl @@ -39529,6 +39463,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -39536,31 +39471,28 @@ i32.const 1 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 4 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 1 i32.shl i32.add - local.get $6 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -39580,7 +39512,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -39626,8 +39558,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -39836,9 +39768,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $8 i32.const 3 i32.add local.get $4 @@ -39846,29 +39779,26 @@ i32.const 1 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 6 i32.add - local.set $8 - i32.const 11092 - i32.load local.set $5 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $5 local.get $0 i32.const 1 i32.shl i32.add - local.get $5 + local.get $9 local.get $0 i32.const 2 i32.shl @@ -39923,6 +39853,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -39930,31 +39861,28 @@ i32.const 1 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 4 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 1 i32.shl i32.add - local.get $6 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -39974,7 +39902,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -40020,8 +39948,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -40233,9 +40161,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $5 i32.const 3 i32.add local.get $4 @@ -40243,24 +40172,21 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 12 i32.add - local.set $5 - i32.const 11092 - i32.load local.set $9 - i32.const 11100 + i32.const 11092 i32.load local.set $10 loop $for-loop|0 local.get $0 - local.get $10 + local.get $5 i32.lt_s if - local.get $9 + local.get $10 local.get $0 i32.const 2 i32.shl @@ -40268,8 +40194,8 @@ i32.add f32.load local.set $2 - local.get $5 local.get $6 + local.get $9 i32.add local.get $2 i32.trunc_sat_f32_s @@ -40320,6 +40246,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -40327,31 +40254,28 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 8 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $7 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $7 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 2 i32.shl i32.add - local.get $6 + local.get $7 local.get $0 i32.const 3 i32.shl @@ -40371,7 +40295,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -40417,8 +40341,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -40630,9 +40554,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $5 i32.const 3 i32.add local.get $4 @@ -40640,24 +40565,21 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 12 i32.add - local.set $5 - i32.const 11092 - i32.load local.set $9 - i32.const 11100 + i32.const 11092 i32.load local.set $10 loop $for-loop|0 local.get $0 - local.get $10 + local.get $5 i32.lt_s if - local.get $9 + local.get $10 local.get $0 i32.const 2 i32.shl @@ -40665,8 +40587,8 @@ i32.add f32.load local.set $2 - local.get $5 local.get $6 + local.get $9 i32.add local.get $2 i32.trunc_sat_f32_u @@ -40717,6 +40639,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -40724,31 +40647,28 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 8 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $6 - i32.const 11196 + i32.const 11188 i32.load local.set $7 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $7 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 2 i32.shl i32.add - local.get $6 + local.get $7 local.get $0 i32.const 3 i32.shl @@ -40768,7 +40688,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -40814,8 +40734,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -41025,9 +40945,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $7 i32.const 3 i32.add local.get $4 @@ -41035,29 +40956,26 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 24 i32.add - local.set $7 - i32.const 11092 - i32.load local.set $8 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $7 i32.lt_s if - local.get $7 + local.get $8 local.get $0 i32.const 3 i32.shl i32.add - local.get $8 + local.get $9 local.get $0 i32.const 2 i32.shl @@ -41112,6 +41030,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -41119,26 +41038,23 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 16 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $7 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if - local.get $7 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -41146,7 +41062,7 @@ i32.add f64.load local.set $2 - local.get $5 + local.get $7 local.get $9 i32.add local.get $2 @@ -41163,7 +41079,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -41209,8 +41125,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -41420,9 +41336,10 @@ global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11100 i32.load + local.tee $7 i32.const 3 i32.add local.get $4 @@ -41430,29 +41347,26 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 24 i32.add - local.set $7 - i32.const 11092 - i32.load local.set $8 - i32.const 11100 + i32.const 11092 i32.load local.set $9 loop $for-loop|0 local.get $0 - local.get $9 + local.get $7 i32.lt_s if - local.get $7 + local.get $8 local.get $0 i32.const 3 i32.shl i32.add - local.get $8 + local.get $9 local.get $0 i32.const 2 i32.shl @@ -41507,6 +41421,7 @@ i32.store offset=16 i32.const 11196 i32.load + local.tee $5 i32.const 2 i32.add local.get $4 @@ -41514,26 +41429,23 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $4 i32.load offset=4 i32.const 16 i32.add - local.set $5 - i32.const 11188 - i32.load local.set $7 - i32.const 11196 + i32.const 11188 i32.load local.set $8 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $8 + local.get $5 i32.lt_s if - local.get $7 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -41541,7 +41453,7 @@ i32.add f64.load local.set $2 - local.get $5 + local.get $7 local.get $9 i32.add local.get $2 @@ -41558,7 +41470,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -41604,8 +41516,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -41799,37 +41711,35 @@ global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11020 i32.load + local.tee $6 local.get $8 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $8 i32.load offset=4 - local.set $6 - i32.const 11012 - i32.load local.set $9 - i32.const 11020 + i32.const 11012 i32.load local.set $10 loop $for-loop|0 local.get $2 - local.get $10 + local.get $6 i32.lt_s if - local.get $6 + local.get $9 local.get $2 i32.const 2 i32.shl local.tee $7 i32.add local.get $7 - local.get $9 + local.get $10 i32.add i32.load f32.convert_i32_s @@ -41876,6 +41786,7 @@ i32.load offset=8 i32.const 3 i32.shr_u + local.tee $2 i32.const 6 i32.add local.get $8 @@ -41883,31 +41794,26 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $8 i32.load offset=4 i32.const 24 i32.add - local.set $2 - local.get $3 - i32.load offset=4 local.set $6 local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u + i32.load offset=4 local.set $3 loop $for-loop|02 local.get $1 - local.get $3 + local.get $2 i32.lt_s if - local.get $2 + local.get $6 local.get $1 i32.const 2 i32.shl i32.add - local.get $6 + local.get $3 local.get $1 i32.const 3 i32.shl @@ -41936,33 +41842,31 @@ call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> local.get $4 i32.load offset=8 + local.tee $1 local.get $8 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $8 i32.load offset=4 - local.set $1 - local.get $4 - i32.load offset=4 local.set $2 local.get $4 - i32.load offset=8 + i32.load offset=4 local.set $3 loop $for-loop|06 local.get $0 - local.get $3 + local.get $1 i32.lt_s if - local.get $1 + local.get $2 local.get $0 i32.const 2 i32.shl i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_u f32.convert_i32_u @@ -41978,6 +41882,7 @@ i32.load offset=8 i32.const 1 i32.shr_u + local.tee $1 i32.const 4 i32.add local.get $8 @@ -41985,33 +41890,28 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $8 i32.load offset=4 i32.const 16 i32.add - local.set $1 - local.get $5 - i32.load offset=4 local.set $2 local.get $5 - i32.load offset=8 - i32.const 1 - i32.shr_u + i32.load offset=4 local.set $3 i32.const 0 local.set $0 loop $for-loop|010 local.get $0 - local.get $3 + local.get $1 i32.lt_s if - local.get $1 + local.get $2 local.get $0 i32.const 2 i32.shl i32.add - local.get $2 + local.get $3 local.get $0 i32.const 1 i32.shl @@ -42031,6 +41931,7 @@ i32.store offset=16 i32.const 11276 i32.load + local.tee $1 i32.const 7 i32.add local.get $8 @@ -42038,32 +41939,29 @@ i32.const 2 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $8 i32.load offset=4 i32.const 28 i32.add - local.set $1 - i32.const 11268 - i32.load local.set $2 - i32.const 11276 + i32.const 11268 i32.load local.set $3 i32.const 0 local.set $0 - loop $for-loop|016 + loop $for-loop|015 local.get $0 - local.get $3 + local.get $1 i32.lt_s if - local.get $1 + local.get $2 local.get $0 i32.const 2 i32.shl i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_s f32.convert_i32_s @@ -42072,7 +41970,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|016 + br $for-loop|015 end end i32.const 10 @@ -42095,8 +41993,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -42285,35 +42183,33 @@ global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - block $folding-inner1 + block $folding-inner0 i32.const 11020 i32.load + local.tee $5 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 - local.set $5 - i32.const 11012 - i32.load local.set $6 - i32.const 11020 + i32.const 11012 i32.load local.set $7 loop $for-loop|0 local.get $0 - local.get $7 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 3 i32.shl i32.add - local.get $6 + local.get $7 local.get $0 i32.const 2 i32.shl @@ -42345,6 +42241,7 @@ i32.store offset=16 i32.const 11100 i32.load + local.tee $5 i32.const 3 i32.add local.get $1 @@ -42352,31 +42249,28 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 i32.const 24 i32.add - local.set $5 - i32.const 11092 - i32.load local.set $6 - i32.const 11100 + i32.const 11092 i32.load local.set $7 i32.const 0 local.set $0 - loop $for-loop|05 + loop $for-loop|03 local.get $0 - local.get $7 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 3 i32.shl i32.add - local.get $6 + local.get $7 local.get $0 i32.const 2 i32.shl @@ -42388,7 +42282,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|03 end end i32.const 10 @@ -42407,6 +42301,7 @@ i32.load offset=8 i32.const 3 i32.shr_u + local.tee $5 i32.const 6 i32.add local.get $1 @@ -42414,34 +42309,29 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 i32.const 48 i32.add - local.set $5 - local.get $2 - i32.load offset=4 local.set $6 local.get $2 - i32.load offset=8 - i32.const 3 - i32.shr_u + i32.load offset=4 local.set $2 i32.const 0 local.set $0 - loop $for-loop|09 + loop $for-loop|07 local.get $0 - local.get $2 + local.get $5 i32.lt_s if - local.get $5 + local.get $6 local.get $0 i32.const 3 i32.shl local.tee $7 i32.add - local.get $6 + local.get $2 local.get $7 i32.add i64.load @@ -42451,7 +42341,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|09 + br $for-loop|07 end end i32.const 10 @@ -42468,35 +42358,33 @@ call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> local.get $3 i32.load offset=8 + local.tee $2 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 - local.set $2 - local.get $3 - i32.load offset=4 local.set $5 local.get $3 - i32.load offset=8 + i32.load offset=4 local.set $3 i32.const 0 local.set $0 - loop $for-loop|013 + loop $for-loop|011 local.get $0 - local.get $3 + local.get $2 i32.lt_s if - local.get $2 + local.get $5 local.get $0 i32.const 3 i32.shl i32.add local.get $0 - local.get $5 + local.get $3 i32.add i32.load8_u f64.convert_i32_u @@ -42505,13 +42393,14 @@ i32.const 1 i32.add local.set $0 - br $for-loop|013 + br $for-loop|011 end end local.get $4 i32.load offset=8 i32.const 1 i32.shr_u + local.tee $2 i32.const 4 i32.add local.get $1 @@ -42519,33 +42408,28 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 i32.const 32 i32.add - local.set $2 - local.get $4 - i32.load offset=4 local.set $3 local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u + i32.load offset=4 local.set $4 i32.const 0 local.set $0 - loop $for-loop|017 + loop $for-loop|015 local.get $0 - local.get $4 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 3 i32.shl i32.add - local.get $3 + local.get $4 local.get $0 i32.const 1 i32.shl @@ -42557,7 +42441,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|017 + br $for-loop|015 end end global.get $~lib/memory/__stack_pointer @@ -42565,6 +42449,7 @@ i32.store offset=16 i32.const 11276 i32.load + local.tee $2 i32.const 7 i32.add local.get $1 @@ -42572,32 +42457,29 @@ i32.const 3 i32.shr_u i32.gt_s - br_if $folding-inner1 + br_if $folding-inner0 local.get $1 i32.load offset=4 i32.const 56 i32.add - local.set $2 - i32.const 11268 - i32.load local.set $3 - i32.const 11276 + i32.const 11268 i32.load local.set $4 i32.const 0 local.set $0 - loop $for-loop|023 + loop $for-loop|020 local.get $0 - local.get $4 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 3 i32.shl i32.add local.get $0 - local.get $3 + local.get $4 i32.add i32.load8_s f64.convert_i32_s @@ -42606,7 +42488,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|023 + br $for-loop|020 end end i32.const 10 @@ -42629,8 +42511,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable ) @@ -42675,11 +42557,11 @@ block $folding-inner25 block $folding-inner24 block $folding-inner23 - block $folding-inner21 + block $folding-inner22 block $folding-inner18 block $folding-inner17 block $folding-inner16 - block $folding-inner22 + block $folding-inner21 block $folding-inner20 block $folding-inner19 block $folding-inner15 @@ -42695,7 +42577,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 32 @@ -44654,7 +44536,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $2 i64.const 0 @@ -44729,7 +44611,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -44808,7 +44690,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -44887,7 +44769,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -44970,7 +44852,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45053,7 +44935,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45134,7 +45016,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45215,7 +45097,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45294,7 +45176,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45375,7 +45257,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45454,7 +45336,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -45533,7 +45415,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45584,7 +45466,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45635,7 +45517,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45686,7 +45568,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45737,7 +45619,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45788,7 +45670,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45839,7 +45721,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45890,7 +45772,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45941,7 +45823,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -45992,7 +45874,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -46043,7 +45925,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -46094,7 +45976,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46173,7 +46055,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46252,7 +46134,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46331,7 +46213,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46414,7 +46296,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46497,7 +46379,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46578,7 +46460,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46659,7 +46541,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46740,7 +46622,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46821,7 +46703,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46902,7 +46784,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -46983,7 +46865,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47019,7 +46901,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47123,7 +47005,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47159,7 +47041,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47263,7 +47145,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47299,7 +47181,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47403,7 +47285,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47439,7 +47321,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47551,7 +47433,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47587,7 +47469,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47699,7 +47581,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47735,7 +47617,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47847,7 +47729,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47883,7 +47765,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -47995,7 +47877,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48031,7 +47913,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48143,7 +48025,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48179,7 +48061,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48291,7 +48173,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48327,7 +48209,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48439,7 +48321,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48475,7 +48357,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48596,7 +48478,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48716,7 +48598,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48836,7 +48718,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -48956,7 +48838,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49084,7 +48966,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49212,7 +49094,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49340,7 +49222,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49468,7 +49350,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49596,7 +49478,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49724,7 +49606,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49852,7 +49734,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -49980,7 +49862,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50099,7 +49981,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50218,7 +50100,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50337,7 +50219,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50464,7 +50346,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50591,7 +50473,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50718,7 +50600,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50845,7 +50727,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -50972,7 +50854,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51099,7 +50981,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51226,7 +51108,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51353,7 +51235,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51472,7 +51354,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51591,7 +51473,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51710,7 +51592,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51837,7 +51719,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -51964,7 +51846,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52091,7 +51973,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52218,7 +52100,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52345,7 +52227,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52472,7 +52354,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52599,7 +52481,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52726,7 +52608,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52848,7 +52730,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -52970,7 +52852,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53092,7 +52974,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53222,7 +53104,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53352,7 +53234,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53482,7 +53364,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53612,7 +53494,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53742,7 +53624,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -53872,7 +53754,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54002,7 +53884,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54132,7 +54014,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54228,7 +54110,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54327,7 +54209,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54426,7 +54308,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54526,7 +54408,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54629,7 +54511,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54726,7 +54608,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54823,7 +54705,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -54923,7 +54805,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -55023,7 +54905,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -55123,7 +55005,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -55225,7 +55107,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -55357,7 +55239,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -55491,7 +55373,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -55623,7 +55505,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -55749,7 +55631,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -55878,7 +55760,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -56107,7 +55989,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -56337,7 +56219,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -56570,7 +56452,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -56803,7 +56685,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -57036,7 +56918,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -57509,7 +57391,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57566,7 +57448,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -57603,7 +57485,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57679,7 +57561,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57755,7 +57637,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57812,7 +57694,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -57849,7 +57731,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57906,7 +57788,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -57943,7 +57825,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58000,7 +57882,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58037,7 +57919,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58094,7 +57976,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58131,7 +58013,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58188,7 +58070,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58225,7 +58107,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58282,7 +58164,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58319,7 +58201,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58376,7 +58258,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58413,7 +58295,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58470,7 +58352,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58553,7 +58435,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58621,7 +58503,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58691,7 +58573,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58791,7 +58673,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58860,7 +58742,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58930,7 +58812,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -58998,7 +58880,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59070,7 +58952,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59139,7 +59021,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59211,7 +59093,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59278,7 +59160,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59350,7 +59232,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59417,7 +59299,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59489,7 +59371,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59557,7 +59439,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59629,7 +59511,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59697,7 +59579,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59769,7 +59651,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59837,7 +59719,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -59909,7 +59791,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -59977,7 +59859,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60115,36 +59997,32 @@ i32.load offset=8 i32.const 2 i32.shr_u + local.tee $3 i32.const 1 i32.add i32.lt_s - br_if $folding-inner22 + br_if $folding-inner21 local.get $7 i32.load offset=4 i32.const 1 i32.add - local.set $3 - local.get $0 - i32.load offset=4 local.set $2 local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u + i32.load offset=4 local.set $0 i32.const 0 local.set $1 - loop $for-loop|0193 - local.get $0 + loop $for-loop|0192 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add f32.const 0 f32.const 255 - local.get $2 + local.get $0 local.get $1 i32.const 2 i32.shl @@ -60166,7 +60044,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0193 + br $for-loop|0192 end end local.get $7 @@ -60179,35 +60057,31 @@ i32.load offset=8 i32.const 2 i32.shr_u + local.tee $4 i32.const 8 i32.add i32.lt_s - br_if $folding-inner22 + br_if $folding-inner21 local.get $7 i32.load offset=4 i32.const 8 i32.add - local.set $4 - local.get $5 - i32.load offset=4 local.set $3 local.get $5 - i32.load offset=8 - i32.const 2 - i32.shr_u + i32.load offset=4 local.set $2 i32.const 0 local.set $1 - loop $for-loop|0199 + loop $for-loop|0197 local.get $1 - local.get $2 + local.get $4 i32.lt_s if local.get $1 - local.get $4 + local.get $3 i32.add i32.const 255 - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl @@ -60230,7 +60104,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0199 + br $for-loop|0197 end end i32.const 10 @@ -60287,37 +60161,33 @@ i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set - local.get $7 - i32.load offset=8 local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - i32.lt_s - br_if $folding-inner22 + local.tee $4 + local.get $7 + i32.load offset=8 + i32.gt_s + br_if $folding-inner21 local.get $7 - i32.load offset=4 - local.set $4 - local.get $0 i32.load offset=4 local.set $3 local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u + i32.load offset=4 local.set $2 i32.const 0 local.set $1 - loop $for-loop|0205 + loop $for-loop|0202 local.get $1 - local.get $2 + local.get $4 i32.lt_s if local.get $1 - local.get $4 + local.get $3 i32.add i32.const 255 - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl @@ -60333,7 +60203,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0205 + br $for-loop|0202 end end local.get $7 @@ -60361,7 +60231,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -60396,7 +60266,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60484,7 +60354,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -60519,7 +60389,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60607,7 +60477,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -60642,7 +60512,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60730,7 +60600,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -60765,7 +60635,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60857,7 +60727,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -60892,7 +60762,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -60984,7 +60854,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -61019,7 +60889,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -61111,7 +60981,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -61146,7 +61016,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -61238,7 +61108,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -61273,7 +61143,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -61365,7 +61235,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -61400,7 +61270,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -61492,7 +61362,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -61527,7 +61397,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -61617,7 +61487,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner21 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61706,12 +61576,12 @@ i32.const 0 i32.gt_s if - loop $while-continue|0209 + loop $while-continue|0206 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|0209 + br $while-continue|0206 end end end @@ -61827,8 +61697,8 @@ end i32.const 1360 i32.const 1632 - i32.const 1899 - i32.const 47 + i32.const 1902 + i32.const 5 call $~lib/builtins/abort unreachable end @@ -61953,42 +61823,42 @@ end i32.const 0 i32.const 1568 - i32.const 878 + i32.const 885 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 879 + i32.const 886 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 880 + i32.const 887 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 882 + i32.const 889 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 883 + i32.const 890 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 884 + i32.const 891 i32.const 3 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/typedarray.ts b/tests/compiler/std/typedarray.ts index e877cd07a4..05029b9be0 100644 --- a/tests/compiler/std/typedarray.ts +++ b/tests/compiler/std/typedarray.ts @@ -753,7 +753,7 @@ testArrayWrap(); testArrayWrap(); testArrayWrap(); -function valuesEqual(target: T, compare: valueof[]): void { +function valuesEqual>(target: T, compare: valueof[]): void { let len = target.length; assert(len == compare.length); for (let i = 0; i < len; i++) { @@ -771,7 +771,7 @@ let setSource2: f32[] = [4, 5, 6]; let setSource3: f64[] = [Infinity, NaN, -Infinity]; let setSource7: i8[] = [-110, -111, -112]; -function testTypedArraySet(): void { +function testTypedArraySet>(): void { let setSource4 = new Int64Array(3); setSource4[0] = 7; setSource4[1] = 8; @@ -812,9 +812,16 @@ function testTypedArraySet(): void { valuesEqual(a, [100, 101, 102, 103, 255, 255, 255, 0, 0, 0]); } else { // explicitly case the input values to valueof - valuesEqual(a, [100, 101, 102, 103, >1000, >1001, >1002, >-110, >-111, >-112]); + valuesEqual(a, [ + 100, 101, 102, 103, + >1000, + >1001, + >1002, + >-110, + >-111, + >-112 + ]); } - } testTypedArraySet();