diff --git a/std/assembly/index.d.ts b/std/assembly/index.d.ts index 964a968076..2a342c6bd4 100644 --- a/std/assembly/index.d.ts +++ b/std/assembly/index.d.ts @@ -609,6 +609,8 @@ declare abstract class TypedArray implements ArrayBufferView { findIndex(callbackfn: (value: T, index: i32, self: this) => bool): i32; /** The every() method tests whether all elements in the typed array pass the test implemented by the provided function. This method has the same algorithm as Array.prototype.every(). */ every(callbackfn: (value: T, index: i32, self: this) => bool): i32; + /** The set() method stores multiple values in the typed array, reading input values from a specified array. */ + set(value: SourceT, offset?: i32): void; } /** An array of twos-complement 8-bit signed integers. */ diff --git a/std/assembly/internal/typedarray.ts b/std/assembly/internal/typedarray.ts index a3f3f18533..154e9b2066 100644 --- a/std/assembly/internal/typedarray.ts +++ b/std/assembly/internal/typedarray.ts @@ -3,7 +3,8 @@ import { MAX_BLENGTH as AB_MAX_BLENGTH, allocateUnsafe, LOAD, - STORE + STORE, + HEADER_SIZE } from "./arraybuffer"; import { @@ -231,3 +232,315 @@ export function EVERY, T>( } return true; } + +@inline +export function SET, U extends number, SourceT>( + target: T, + source: SourceT, + offset: i32): void { + if (isReference()) { + if (isReference()) { + assert(target != null, "TypeError: target is null."); + assert(source != null, "TypeError: source is null."); + // @ts-ignore it must have a length property + if (source.length == 0) return; + if (source instanceof Int8Array) { + if (target instanceof Int8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8ClampedArray) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Uint8Array) { + if (target instanceof Int8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8ClampedArray) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Uint8ClampedArray) { + if (target instanceof Int8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint8ClampedArray) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Int16Array) { + if (target instanceof Int16Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint16Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Uint16Array) { + if (target instanceof Int16Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint16Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Int32Array) { + if (target instanceof Int32Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint32Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Uint32Array) { + if (target instanceof Int32Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint32Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Int64Array) { + if (target instanceof Int64Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint64Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Uint64Array) { + if (target instanceof Int64Array) { + SET_SAME(target, source, offset); + } else if (target instanceof Uint64Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Float32Array) { + if (target instanceof Float32Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (source instanceof Float64Array) { + if (target instanceof Float64Array) { + SET_SAME(target, source, offset); + } else { + SET_COPY( + target.buffer, + target.byteOffset, + source.buffer, + source.byteOffset, + offset, + source.length, + ); + } + } else if (isArray()) { + let targetBuffer = target.buffer; + let targetByteOffset = target.byteOffset; + let sourceBuffer = load(changetype(source), offsetof("buffer_")); + // @ts-ignore: this is an array, and has a length property, this is not unsafe. + // tslint:disable-next-line + let length = source.length; // adding `i32` type here supresses tslint unsafe any + + // @ts-ignore: this is an array, and has an indexed getter + // tslint:disable-next-line + var stub = unchecked(source[0]); + + // Detect stub type using instanceof. Not ergonomic but a valid workaround + if (stub instanceof i8) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof u8) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof i16) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof u16) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof i32) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof u32) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof i64) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof u64) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof f32) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } else if (stub instanceof f64) { + SET_COPY(targetBuffer, targetByteOffset, sourceBuffer, 0, offset, length); + } + } else { + // validate the lengths are within range + // @ts-ignore: source is assumed to have a length property + let sourceLength = source.length; + let targetLength = target.length; + + // tslint:disable-next-line + assert((sourceLength + offset) <= targetLength, "RangeError: Offset is too large."); + + // cache the buffer and the offset + let targetBuffer = target.buffer; + let targetByteOffset = target.byteOffset; + + /** + * In order for the source to be ArrayLike, it has to have a length property, and a + * `@operator("[]=")` getter. This is very slow because it doesn't allow for unchecked gets, + * but it is as standard compliant as we can make it. + */ + // @ts-ignore: Source is expected to have a length property + // tslint:disable-next-line + for (let i = source.length - 1; i >= 0; i--) { + STORE( + targetBuffer, + i + offset, + // @ts-ignore: Source is expected to have a getter signature + source[i], // if the object does not have a getter this throws a compiler error + targetByteOffset, + ); + } + } + } else { + assert(false, "TypeError: source is not a reference."); + } + } else { + assert(false, "TypeError: target is not a reference."); + } +} + +// SLow set copy method +@inline +function SET_COPY( + targetBuffer: ArrayBuffer, + targetBufferOffset: i32, + sourceBuffer: ArrayBuffer, + sourceBufferOffset: i32, + offset: i32, + length: i32): void { + + // slowest path, a buffer writing to itself, despite the types not lining up + if (targetBuffer == sourceBuffer) { + // copy source data to a new copy to prevent data thrashing + let bytes = length << alignof(); + let sourceCopy = allocateUnsafe(bytes); + memory.copy( + sourceCopy.data, + sourceBuffer.data + sourceBufferOffset, + bytes, + ); + + // copy the data to itself + for (let i = 0; i < length; i++) { + STORE( + targetBuffer, + i + offset, + LOAD(sourceCopy, i, 0), + targetBufferOffset, + ); + } + + // cleanup + if (isManaged(sourceCopy)) { + memory.free(changetype(sourceCopy)); + } + } else { + // copy the data directly + for (let i = 0; i < length; i++) { + STORE( + targetBuffer, + i + offset, + LOAD(sourceBuffer, i, sourceBufferOffset), + targetBufferOffset, + ); + } + } +} + +@inline +function SET_SAME, U extends number>(target: T, source: T, offset: i32): void { + // perform a memcpy + memory.copy( + // store the data at the target pointer + byteOFfset + offset << alignOf() + target.buffer.data + target.byteOffset + (offset << alignof()), + // read the data from source pointer + byteOffset + // @ts-ignore: source has a buffer and a byteOffset property because it's instanceof T + source.buffer.data + source.byteOffset, + // @ts-ignore: store source.buffer.byteLength number of bytes + source.buffer.byteLength, + ); +} diff --git a/std/assembly/typedarray.ts b/std/assembly/typedarray.ts index 97d3dbb7db..954154a301 100644 --- a/std/assembly/typedarray.ts +++ b/std/assembly/typedarray.ts @@ -9,6 +9,7 @@ import { FIND_INDEX, SOME, EVERY, + SET, } from "./internal/typedarray"; import { @@ -63,6 +64,10 @@ export class Int8Array extends TypedArray { every(callbackfn: (value: i8, index: i32, self: Int8Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Uint8Array extends TypedArray { @@ -109,6 +114,10 @@ export class Uint8Array extends TypedArray { every(callbackfn: (value: u8, index: i32, self: Uint8Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Uint8ClampedArray extends Uint8Array { @@ -151,6 +160,10 @@ export class Uint8ClampedArray extends Uint8Array { every(callbackfn: (value: u8, index: i32, self: Uint8ClampedArray) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Int16Array extends TypedArray { @@ -197,6 +210,10 @@ export class Int16Array extends TypedArray { every(callbackfn: (value: i16, index: i32, self: Int16Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Uint16Array extends TypedArray { @@ -243,6 +260,10 @@ export class Uint16Array extends TypedArray { every(callbackfn: (value: u16, index: i32, self: Uint16Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Int32Array extends TypedArray { @@ -289,6 +310,10 @@ export class Int32Array extends TypedArray { every(callbackfn: (value: i32, index: i32, self: Int32Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Uint32Array extends TypedArray { @@ -335,6 +360,10 @@ export class Uint32Array extends TypedArray { every(callbackfn: (value: u32, index: i32, self: Uint32Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Int64Array extends TypedArray { @@ -381,6 +410,10 @@ export class Int64Array extends TypedArray { every(callbackfn: (value: i64, index: i32, self: Int64Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Uint64Array extends TypedArray { @@ -427,6 +460,10 @@ export class Uint64Array extends TypedArray { every(callbackfn: (value: u64, index: i32, self: Uint64Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Float32Array extends TypedArray { @@ -473,6 +510,10 @@ export class Float32Array extends TypedArray { every(callbackfn: (value: f32, index: i32, self: Float32Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } export class Float64Array extends TypedArray { @@ -519,4 +560,8 @@ export class Float64Array extends TypedArray { every(callbackfn: (value: f64, index: i32, self: Float64Array) => bool): bool { return EVERY(this, callbackfn); } + + set(source: SourceT, offset: i32 = 0): void { + SET(this, source, offset); + } } diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index f8148ea0e3..e40d385cfd 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -771,7 +771,7 @@ if i32.const 0 i32.const 152 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index 5ba2c885fb..d410613fb8 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -904,7 +904,7 @@ if i32.const 0 i32.const 152 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 67e77e99d1..4702a340ed 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -1535,7 +1535,7 @@ if i32.const 0 i32.const 160 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1582,7 +1582,7 @@ if i32.const 0 i32.const 160 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index 5429c26bb0..fd8d23068b 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -2068,7 +2068,7 @@ if i32.const 0 i32.const 160 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -2149,7 +2149,7 @@ if i32.const 0 i32.const 160 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index cf6bc42ee4..f4558967fa 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -346,7 +346,7 @@ if i32.const 0 i32.const 8 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -393,7 +393,7 @@ if i32.const 0 i32.const 8 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index dcfaff5e63..83d84af727 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -433,7 +433,7 @@ if i32.const 0 i32.const 8 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -516,7 +516,7 @@ if i32.const 0 i32.const 8 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 86e5e770e3..f403be459f 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -31,6 +31,7 @@ (type $FUNCSIG$di (func (param i32) (result f64))) (type $FUNCSIG$ff (func (param f32) (result f32))) (type $FUNCSIG$dd (func (param f64) (result f64))) + (type $FUNCSIG$vii (func (param i32 i32))) (import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32))) (memory $0 1) (data (i32.const 8) "\11\00\00\00s\00t\00d\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s") @@ -65,6 +66,15 @@ (data (i32.const 584) "\14\00\00\00\00\00\00\00\01") (data (i32.const 608) "\02") (data (i32.const 616) "H\02\00\00\05") + (data (i32.const 624) "\0c\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03") + (data (i32.const 656) "p\02\00\00\03") + (data (i32.const 664) "\1a\00\00\00T\00y\00p\00e\00E\00r\00r\00o\00r\00:\00 \00t\00a\00r\00g\00e\00t\00 \00i\00s\00 \00n\00u\00l\00l\00.") + (data (i32.const 720) "\1a\00\00\00T\00y\00p\00e\00E\00r\00r\00o\00r\00:\00 \00s\00o\00u\00r\00c\00e\00 \00i\00s\00 \00n\00u\00l\00l\00.") + (data (i32.const 776) "\10\00\00\00i\003\002\00[\00]\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s") + (data (i32.const 816) "\1e\00\00\00S\00i\00m\00i\00l\00a\00r\00 \00T\00y\00p\00e\00d\00A\00r\00r\00a\00y\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.") + (data (i32.const 880) "\18\00\00\00F\00l\00o\00a\00t\003\002\00A\00r\00r\00a\00y\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.") + (data (i32.const 936) " \00\00\00R\00a\00n\00g\00e\00E\00r\00r\00o\00r\00:\00 \00O\00f\00f\00s\00e\00t\00 \00i\00s\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00.") + (data (i32.const 1008) "\15\00\00\00a\00r\00r\00a\00y\00l\00i\00k\00e\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.") (table $0 101 funcref) (elem (i32.const 0) $null $~lib/internal/sort/COMPARATOR~anonymous|1 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|9 $std/typedarray/testReduce~anonymous|9 $std/typedarray/testReduce~anonymous|11 $std/typedarray/testReduce~anonymous|12 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|9 $std/typedarray/testReduce~anonymous|9 $std/typedarray/testReduce~anonymous|11 $std/typedarray/testReduce~anonymous|12 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|31 $std/typedarray/testArrayMap~anonymous|31 $std/typedarray/testArrayMap~anonymous|33 $std/typedarray/testArrayMap~anonymous|34 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArraySome~anonymous|36 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArraySome~anonymous|36 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArraySome~anonymous|36 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArraySome~anonymous|42 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArraySome~anonymous|42 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArraySome~anonymous|46 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArraySome~anonymous|46 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArraySome~anonymous|50 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArraySome~anonymous|50 $std/typedarray/testArraySome~anonymous|53 $std/typedarray/testArraySome~anonymous|54 $std/typedarray/testArraySome~anonymous|55 $std/typedarray/testArraySome~anonymous|56 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayFindIndex~anonymous|58 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayFindIndex~anonymous|58 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayFindIndex~anonymous|58 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArrayFindIndex~anonymous|64 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArrayFindIndex~anonymous|64 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArrayFindIndex~anonymous|68 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArrayFindIndex~anonymous|68 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArrayFindIndex~anonymous|72 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArrayFindIndex~anonymous|72 $std/typedarray/testArraySome~anonymous|53 $std/typedarray/testArrayFindIndex~anonymous|76 $std/typedarray/testArraySome~anonymous|55 $std/typedarray/testArrayFindIndex~anonymous|78 $std/typedarray/testArrayEvery~anonymous|79 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayEvery~anonymous|81 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayEvery~anonymous|81 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArrayEvery~anonymous|85 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArrayEvery~anonymous|81 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArrayEvery~anonymous|89 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArrayEvery~anonymous|81 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArrayEvery~anonymous|93 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArrayEvery~anonymous|95 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArrayEvery~anonymous|97 $std/typedarray/testArraySome~anonymous|53 $std/typedarray/testArrayEvery~anonymous|99 $std/typedarray/testArraySome~anonymous|55) (global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0)) @@ -81,6 +91,8 @@ (global $std/typedarray/multisubarr1 (mut i32) (i32.const 0)) (global $std/typedarray/multisubarr2 (mut i32) (i32.const 0)) (global $std/typedarray/multisubarr3 (mut i32) (i32.const 0)) + (global $std/typedarray/arrayLikeValue (mut i32) (i32.const 0)) + (global $std/typedarray/setSource (mut i32) (i32.const 656)) (export "memory" (memory $0)) (export "table" (table $0)) (start $start) @@ -416,7 +428,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -481,7 +493,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -538,7 +550,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -595,7 +607,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1087,7 +1099,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -1114,7 +1126,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -1205,7 +1217,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -1774,7 +1786,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -1798,7 +1810,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -1839,7 +1851,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -1939,7 +1951,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -2469,7 +2481,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -2759,7 +2771,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -2898,7 +2910,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -4207,7 +4219,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -4353,7 +4365,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -4680,7 +4692,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -4885,7 +4897,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -8120,112 +8132,12674 @@ unreachable end ) - (func $start:std/typedarray (; 193 ;) (type $_) - (local $0 i32) - (local $1 i32) - i32.const 624 - global.set $~lib/allocator/arena/startOffset - global.get $~lib/allocator/arena/startOffset - global.set $~lib/allocator/arena/offset - i32.const 0 - call $std/typedarray/testInstantiate - i32.const 5 - call $std/typedarray/testInstantiate - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - global.set $std/typedarray/arr - global.get $std/typedarray/arr - i32.const 0 - i32.const 1 - call $~lib/internal/typedarray/TypedArray#__set - global.get $std/typedarray/arr - i32.const 1 - i32.const 2 - call $~lib/internal/typedarray/TypedArray#__set - global.get $std/typedarray/arr - i32.const 2 - i32.const 3 - call $~lib/internal/typedarray/TypedArray#__set - global.get $std/typedarray/arr - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 8 - i32.const 96 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $std/typedarray/arr - i32.load offset=4 - if - i32.const 0 - i32.const 8 - i32.const 97 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $std/typedarray/arr - i32.load offset=8 - i32.const 12 - i32.ne - if - i32.const 0 - i32.const 8 - i32.const 98 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $std/typedarray/arr - i32.const 0 - call $~lib/internal/typedarray/TypedArray#__get - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 8 - i32.const 99 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $std/typedarray/arr - i32.const 1 - call $~lib/internal/typedarray/TypedArray#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 8 - i32.const 100 - i32.const 0 - call $~lib/env/abort - unreachable + (func $~lib/internal/memory/memcpy (; 193 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + loop $continue|0 + local.get $1 + i32.const 3 + i32.and + local.get $2 + local.get $2 + select + if + local.get $0 + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end end - global.get $std/typedarray/arr - i32.const 2 - call $~lib/internal/typedarray/TypedArray#__get + local.get $0 i32.const 3 - i32.ne + i32.and + i32.eqz if - i32.const 0 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + end + local.get $2 i32.const 8 - i32.const 101 - i32.const 0 - call $~lib/env/abort - unreachable + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $1 + i32.const 2 + i32.add + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.get $1 + i32.load8_u + i32.store8 + end + return end - global.get $std/typedarray/arr - i32.const 2 - call $~lib/typedarray/Int32Array#subarray - global.set $std/typedarray/arr - global.get $std/typedarray/arr + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + local.get $0 + i32.const 3 + i32.and + local.tee $3 + i32.const 1 + i32.ne + if + local.get $3 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $5 + local.get $0 + local.get $1 + local.tee $3 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $1 + local.set $0 + local.get $1 + local.get $3 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.load + local.tee $3 + i32.const 8 + i32.shl + local.get $5 + i32.const 24 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 5 + i32.add + i32.load + local.tee $5 + i32.const 8 + i32.shl + local.get $3 + i32.const 24 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 9 + i32.add + i32.load + local.tee $3 + i32.const 8 + i32.shl + local.get $5 + i32.const 24 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 13 + i32.add + i32.load + local.tee $5 + i32.const 8 + i32.shl + local.get $3 + i32.const 24 + i32.shr_u + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + end + br $break|2 + end + local.get $1 + i32.load + local.set $5 + local.get $0 + local.get $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + if + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.load + local.tee $3 + i32.const 16 + i32.shl + local.get $5 + i32.const 16 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 6 + i32.add + i32.load + local.tee $5 + i32.const 16 + i32.shl + local.get $3 + i32.const 16 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 10 + i32.add + i32.load + local.tee $3 + i32.const 16 + i32.shl + local.get $5 + i32.const 16 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 14 + i32.add + i32.load + local.tee $5 + i32.const 16 + i32.shl + local.get $3 + i32.const 16 + i32.shr_u + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + end + br $break|2 + end + local.get $1 + i32.load + local.set $5 + local.get $0 + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + if + local.get $0 + local.get $1 + i32.const 3 + i32.add + i32.load + local.tee $3 + i32.const 24 + i32.shl + local.get $5 + i32.const 8 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 7 + i32.add + i32.load + local.tee $5 + i32.const 24 + i32.shl + local.get $3 + i32.const 8 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 11 + i32.add + i32.load + local.tee $3 + i32.const 24 + i32.shl + local.get $5 + i32.const 8 + i32.shr_u + i32.or + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 15 + i32.add + i32.load + local.tee $5 + i32.const 24 + i32.shl + local.get $3 + i32.const 8 + i32.shr_u + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + end + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.get $1 + local.tee $3 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $1 + local.set $0 + local.get $1 + local.get $3 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + local.tee $3 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $1 + local.set $0 + local.get $1 + local.get $3 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + local.tee $3 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $1 + local.set $0 + local.get $1 + local.get $3 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $3 + local.set $0 + local.get $3 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load8_u + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.get $1 + i32.load8_u + i32.store8 + end + ) + (func $~lib/internal/memory/memmove (; 194 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.eq + if + return + end + local.get $1 + local.get $2 + i32.add + local.get $0 + i32.le_u + local.tee $3 + i32.eqz + if + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.le_u + local.set $3 + end + local.get $3 + if + local.get $0 + local.get $1 + local.get $2 + call $~lib/internal/memory/memcpy + return + end + local.get $0 + local.get $1 + i32.lt_u + if + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + loop $continue|0 + local.get $0 + i32.const 7 + i32.and + if + local.get $2 + i32.eqz + if + return + end + local.get $2 + i32.const 1 + i32.sub + local.set $2 + local.get $0 + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + br $continue|0 + end + end + loop $continue|1 + local.get $2 + i32.const 8 + i32.ge_u + if + local.get $0 + local.get $1 + i64.load + i64.store + local.get $2 + i32.const 8 + i32.sub + local.set $2 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + br $continue|1 + end + end + end + loop $continue|2 + local.get $2 + if + local.get $0 + local.tee $4 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $4 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|2 + end + end + else + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + loop $continue|3 + local.get $0 + local.get $2 + i32.add + i32.const 7 + i32.and + if + local.get $2 + i32.eqz + if + return + end + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + local.get $0 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + end + loop $continue|4 + local.get $2 + i32.const 8 + i32.ge_u + if + local.get $2 + i32.const 8 + i32.sub + local.tee $2 + local.get $0 + i32.add + local.get $1 + local.get $2 + i32.add + i64.load + i64.store + br $continue|4 + end + end + end + loop $continue|5 + local.get $2 + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + local.get $0 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + end + end + ) + (func $~lib/typedarray/Int8Array#set> (; 195 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + i32.store8 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + i32.store8 offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 196 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load + i32.load + call $~lib/internal/memory/memmove + end + ) + (func $~lib/typedarray/Int8Array#set (; 197 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store8 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store8 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 198 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + 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 $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 3 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load offset=8 + i64.store8 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 3 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + i64.load offset=8 + i64.store8 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 199 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + i32.store8 offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 200 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int8Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint8Array#set (; 201 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store8 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store8 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $std/typedarray/testArraySet (; 202 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int8Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $std/typedarray/testArraySet (; 203 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int8Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int16Array#set> (; 204 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + i32.store16 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + i32.store16 offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 205 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load + i32.load + call $~lib/internal/memory/memmove + end + ) + (func $~lib/typedarray/Int16Array#set (; 206 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store16 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store16 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 207 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + 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 $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 3 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load offset=8 + i64.store16 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 3 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + i64.load offset=8 + i64.store16 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 208 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + i32.const 1 + i32.shl + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + i32.store16 offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 209 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int16Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint16Array#set (; 210 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store16 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store16 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $std/typedarray/testArraySet (; 211 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int16Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Uint16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int32Array#set> (; 212 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + i32.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + i32.store offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 213 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.add + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load + i32.load + call $~lib/internal/memory/memmove + end + ) + (func $~lib/typedarray/Int32Array#set (; 214 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_s + i32.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 215 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + 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 $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 3 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load offset=8 + i64.store32 offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 3 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + i64.load offset=8 + i64.store32 offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 216 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + i32.const 2 + i32.shl + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + i32.store offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 217 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint32Array#set (; 218 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i32.trunc_f32_u + i32.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $std/typedarray/testArraySet (; 219 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Uint32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 10 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 11 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int64Array#set> (; 220 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + i64.extend_i32_s + i64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + i64.extend_i32_s + i64.store offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int64Array#set (; 221 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.add + local.get $2 + i32.const 3 + i32.shl + i32.add + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.const 8 + i32.add + i32.add + local.get $1 + i32.load + i32.load + call $~lib/internal/memory/memmove + end + ) + (func $~lib/typedarray/Int64Array#set (; 222 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i64.trunc_f32_s + i64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i64.trunc_f32_s + i64.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Int64Array#set (; 223 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + i32.const 3 + i32.shl + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + i64.extend_i32_s + i64.store offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 224 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 3 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 10 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 11 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint64Array#set (; 225 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + i64.trunc_f32_u + i64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + i64.trunc_f32_u + i64.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $std/typedarray/testArraySet (; 226 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Int64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Uint64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 3 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 10 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 11 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Float32Array#set> (; 227 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + f32.convert_i32_s + f32.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + f32.convert_i32_s + f32.store offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Float32Array#set (; 228 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + 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 $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 3 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load offset=8 + f32.convert_i64_s + f32.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 3 + i32.add + i32.const 2 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + i64.load offset=8 + f32.convert_i64_s + f32.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Float32Array#set (; 229 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + i32.const 2 + i32.shl + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + f32.convert_i32_s + f32.store offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 230 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Float32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 7 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 10 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 11 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 12 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 12 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Float64Array#set> (; 231 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.tee $2 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=4 + i32.eqz + br_if $~lib/internal/typedarray/SET>|inlined.0 + local.get $2 + i32.load + local.set $0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + i32.load offset=8 + drop + local.get $1 + i32.load + local.tee $5 + local.get $0 + i32.eq + if + local.get $2 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $3 + i32.const 8 + i32.add + local.get $5 + i32.const 8 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $2 + i32.lt_s + if + local.get $1 + i32.const 4 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $3 + i32.add + i32.load offset=8 + f64.convert_i32_s + f64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $3 + local.get $2 + i32.lt_s + if + local.get $3 + i32.const 4 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + i32.load offset=8 + f64.convert_i32_s + f64.store offset=8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 232 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 2 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + f32.load offset=8 + f64.promote_f32 + f64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 7 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + f32.load offset=8 + f64.promote_f32 + f64.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 233 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.load offset=4 + local.set $4 + 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 $3 + local.get $0 + i32.load + local.tee $0 + local.get $1 + i32.load + local.tee $6 + i32.eq + if + local.get $3 + i32.const 3 + i32.shl + local.tee $1 + call $~lib/internal/arraybuffer/allocateUnsafe + local.tee $2 + i32.const 8 + i32.add + local.get $6 + i32.const 8 + i32.add + local.get $5 + i32.add + local.get $1 + call $~lib/internal/memory/memmove + i32.const 0 + local.set $1 + loop $repeat|0 + local.get $1 + local.get $3 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load offset=8 + f64.convert_i64_s + f64.store offset=8 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $repeat|0 + end + end + else + loop $repeat|1 + local.get $2 + local.get $3 + i32.ge_s + i32.eqz + if + local.get $2 + i32.const 3 + i32.add + i32.const 3 + i32.shl + local.get $0 + i32.add + local.get $4 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.get $5 + i32.add + i64.load offset=8 + f64.convert_i64_s + f64.store offset=8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $repeat|1 + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 234 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $1 + i32.load + i32.eqz + br_if $~lib/internal/typedarray/SET|inlined.0 + local.get $1 + i32.load + i32.const 2 + i32.add + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.gt_s + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + i32.const 1 + i32.sub + local.set $0 + loop $repeat|0 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + i32.const 2 + i32.add + i32.const 3 + i32.shl + local.get $2 + i32.add + local.get $3 + i32.add + local.get $0 + f64.convert_i32_s + f64.store offset=8 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $repeat|0 + end + end + end + ) + (func $std/typedarray/testArraySet (; 235 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 10 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + global.get $std/typedarray/setSource + call $~lib/typedarray/Float64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + f64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $1 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 10 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 11 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 12 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.ne + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 12 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.ne + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $start:std/typedarray (; 236 ;) (type $_) + (local $0 i32) + (local $1 i32) + i32.const 1056 + global.set $~lib/allocator/arena/startOffset + global.get $~lib/allocator/arena/startOffset + global.set $~lib/allocator/arena/offset + i32.const 0 + call $std/typedarray/testInstantiate + i32.const 5 + call $std/typedarray/testInstantiate + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + global.set $std/typedarray/arr + global.get $std/typedarray/arr + i32.const 0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__set + global.get $std/typedarray/arr + i32.const 1 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__set + global.get $std/typedarray/arr + i32.const 2 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__set + global.get $std/typedarray/arr + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 8 + i32.const 96 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.load offset=4 + if + i32.const 0 + i32.const 8 + i32.const 97 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.load offset=8 + i32.const 12 + i32.ne + if + i32.const 0 + i32.const 8 + i32.const 98 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 8 + i32.const 99 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 8 + i32.const 100 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 8 + i32.const 101 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $std/typedarray/arr + i32.const 2 + call $~lib/typedarray/Int32Array#subarray + global.set $std/typedarray/arr + global.get $std/typedarray/arr i32.load offset=8 i32.const 2 i32.shr_u @@ -8399,15 +20973,15 @@ end local.get $0 end - if (result i32) + if global.get $std/typedarray/af64 i32.const 3 call $~lib/internal/typedarray/TypedArray#__get f64.const 7 f64.eq - else - local.get $0 + local.set $0 end + local.get $0 i32.eqz if i32.const 0 @@ -9112,11 +21686,29 @@ call $std/typedarray/testArrayEvery call $std/typedarray/testArrayEvery call $std/typedarray/testArrayEvery + i32.const 4 + call $~lib/allocator/arena/__memory_allocate + local.tee $0 + i32.const 3 + i32.store + local.get $0 + global.set $std/typedarray/arrayLikeValue + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet ) - (func $start (; 194 ;) (type $_) + (func $start (; 237 ;) (type $_) call $start:std/typedarray ) - (func $null (; 195 ;) (type $_) + (func $null (; 238 ;) (type $_) nop ) ) diff --git a/tests/compiler/std/typedarray.ts b/tests/compiler/std/typedarray.ts index 4d1311a2fa..3c3b217616 100644 --- a/tests/compiler/std/typedarray.ts +++ b/tests/compiler/std/typedarray.ts @@ -409,3 +409,112 @@ testArrayEvery(); testArrayEvery(); testArrayEvery(); testArrayEvery(); + + +class ArrayLike { + length: i32 = 3; + + @operator("[]") + protected __get(index: i32): i32 { + return index; + } +} + +var arrayLikeValue = new ArrayLike(); + +var setSource: i32[] = [1, 2, 3]; + +function testArraySet, U extends number>(): void { + var target: T = instantiate(10); + target.set(setSource, 4); + + assert(target[0] == 0, "i32[] test fails"); + assert(target[1] == 0, "i32[] test fails"); + assert(target[2] == 0, "i32[] test fails"); + assert(target[3] == 0, "i32[] test fails"); + assert(target[4] == 1, "i32[] test fails"); + assert(target[5] == 2, "i32[] test fails"); + assert(target[6] == 3, "i32[] test fails"); + assert(target[7] == 0, "i32[] test fails"); + assert(target[8] == 0, "i32[] test fails"); + assert(target[9] == 0, "i32[] test fails"); + + var similarSource = instantiate(3); + similarSource[0] = 4; + similarSource[1] = 5; + similarSource[2] = 6; + + target.set(similarSource); + + assert(target[0] == 4, "Similar TypedArray test fails."); + assert(target[1] == 5, "Similar TypedArray test fails."); + assert(target[2] == 6, "Similar TypedArray test fails."); + assert(target[3] == 0, "Similar TypedArray test fails."); + assert(target[4] == 1, "Similar TypedArray test fails."); + assert(target[5] == 2, "Similar TypedArray test fails."); + assert(target[6] == 3, "Similar TypedArray test fails."); + assert(target[7] == 0, "Similar TypedArray test fails."); + assert(target[8] == 0, "Similar TypedArray test fails."); + assert(target[9] == 0, "Similar TypedArray test fails."); + + var floatData = new Float32Array(3); + floatData[0] = 7; + floatData[1] = 8; + floatData[2] = 9; + + target.set(floatData, 7); + + assert(target[0] == 4, "Float32Array test fails."); + assert(target[1] == 5, "Float32Array test fails."); + assert(target[2] == 6, "Float32Array test fails."); + assert(target[3] == 0, "Float32Array test fails."); + assert(target[4] == 1, "Float32Array test fails."); + assert(target[5] == 2, "Float32Array test fails."); + assert(target[6] == 3, "Float32Array test fails."); + assert(target[7] == 7, "Float32Array test fails."); + assert(target[8] == 8, "Float32Array test fails."); + assert(target[9] == 9, "Float32Array test fails."); + + var integerData = new Int64Array(3); + integerData[0] = 10; + integerData[1] = 11; + integerData[2] = 12; + + target.set(integerData, 3); + + assert(target[0] == 4, "Float32Array test fails."); + assert(target[1] == 5, "Float32Array test fails."); + assert(target[2] == 6, "Float32Array test fails."); + assert(target[3] == 10, "Float32Array test fails."); + assert(target[4] == 11, "Float32Array test fails."); + assert(target[5] == 12, "Float32Array test fails."); + assert(target[6] == 3, "Float32Array test fails."); + assert(target[7] == 7, "Float32Array test fails."); + assert(target[8] == 8, "Float32Array test fails."); + assert(target[9] == 9, "Float32Array test fails."); + + target.set(arrayLikeValue, 2); + + assert(target[0] == 4, "arraylike test fails."); + assert(target[1] == 5, "arraylike test fails."); + assert(target[2] == 0, "arraylike test fails."); + assert(target[3] == 1, "arraylike test fails."); + assert(target[4] == 2, "arraylike test fails."); + assert(target[5] == 12, "arraylike test fails."); + assert(target[6] == 3, "arraylike test fails."); + assert(target[7] == 7, "arraylike test fails."); + assert(target[8] == 8, "arraylike test fails."); + assert(target[9] == 9, "arraylike test fails."); +} + +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); +testArraySet(); diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index 9b50fcbcf2..6c9609d82f 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -61,6 +61,15 @@ (data (i32.const 576) " \02\00\00\03\00\00\00") (data (i32.const 584) "\14\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00") (data (i32.const 616) "H\02\00\00\05\00\00\00") + (data (i32.const 624) "\0c\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 656) "p\02\00\00\03\00\00\00") + (data (i32.const 664) "\1a\00\00\00T\00y\00p\00e\00E\00r\00r\00o\00r\00:\00 \00t\00a\00r\00g\00e\00t\00 \00i\00s\00 \00n\00u\00l\00l\00.\00") + (data (i32.const 720) "\1a\00\00\00T\00y\00p\00e\00E\00r\00r\00o\00r\00:\00 \00s\00o\00u\00r\00c\00e\00 \00i\00s\00 \00n\00u\00l\00l\00.\00") + (data (i32.const 776) "\10\00\00\00i\003\002\00[\00]\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00") + (data (i32.const 816) "\1e\00\00\00S\00i\00m\00i\00l\00a\00r\00 \00T\00y\00p\00e\00d\00A\00r\00r\00a\00y\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.\00") + (data (i32.const 880) "\18\00\00\00F\00l\00o\00a\00t\003\002\00A\00r\00r\00a\00y\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.\00") + (data (i32.const 936) " \00\00\00R\00a\00n\00g\00e\00E\00r\00r\00o\00r\00:\00 \00O\00f\00f\00s\00e\00t\00 \00i\00s\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00.\00") + (data (i32.const 1008) "\15\00\00\00a\00r\00r\00a\00y\00l\00i\00k\00e\00 \00t\00e\00s\00t\00 \00f\00a\00i\00l\00s\00.\00") (table $0 101 funcref) (elem (i32.const 0) $null $~lib/internal/sort/COMPARATOR~anonymous|1 $std/typedarray/testReduce~anonymous|2 $std/typedarray/testReduce~anonymous|3 $std/typedarray/testReduce~anonymous|4 $std/typedarray/testReduce~anonymous|5 $std/typedarray/testReduce~anonymous|6 $std/typedarray/testReduce~anonymous|7 $std/typedarray/testReduce~anonymous|8 $std/typedarray/testReduce~anonymous|9 $std/typedarray/testReduce~anonymous|10 $std/typedarray/testReduce~anonymous|11 $std/typedarray/testReduce~anonymous|12 $std/typedarray/testReduceRight~anonymous|13 $std/typedarray/testReduceRight~anonymous|14 $std/typedarray/testReduceRight~anonymous|15 $std/typedarray/testReduceRight~anonymous|16 $std/typedarray/testReduceRight~anonymous|17 $std/typedarray/testReduceRight~anonymous|18 $std/typedarray/testReduceRight~anonymous|19 $std/typedarray/testReduceRight~anonymous|20 $std/typedarray/testReduceRight~anonymous|21 $std/typedarray/testReduceRight~anonymous|22 $std/typedarray/testReduceRight~anonymous|23 $std/typedarray/testArrayMap~anonymous|24 $std/typedarray/testArrayMap~anonymous|25 $std/typedarray/testArrayMap~anonymous|26 $std/typedarray/testArrayMap~anonymous|27 $std/typedarray/testArrayMap~anonymous|28 $std/typedarray/testArrayMap~anonymous|29 $std/typedarray/testArrayMap~anonymous|30 $std/typedarray/testArrayMap~anonymous|31 $std/typedarray/testArrayMap~anonymous|32 $std/typedarray/testArrayMap~anonymous|33 $std/typedarray/testArrayMap~anonymous|34 $std/typedarray/testArraySome~anonymous|35 $std/typedarray/testArraySome~anonymous|36 $std/typedarray/testArraySome~anonymous|37 $std/typedarray/testArraySome~anonymous|38 $std/typedarray/testArraySome~anonymous|39 $std/typedarray/testArraySome~anonymous|40 $std/typedarray/testArraySome~anonymous|41 $std/typedarray/testArraySome~anonymous|42 $std/typedarray/testArraySome~anonymous|43 $std/typedarray/testArraySome~anonymous|44 $std/typedarray/testArraySome~anonymous|45 $std/typedarray/testArraySome~anonymous|46 $std/typedarray/testArraySome~anonymous|47 $std/typedarray/testArraySome~anonymous|48 $std/typedarray/testArraySome~anonymous|49 $std/typedarray/testArraySome~anonymous|50 $std/typedarray/testArraySome~anonymous|51 $std/typedarray/testArraySome~anonymous|52 $std/typedarray/testArraySome~anonymous|53 $std/typedarray/testArraySome~anonymous|54 $std/typedarray/testArraySome~anonymous|55 $std/typedarray/testArraySome~anonymous|56 $std/typedarray/testArrayFindIndex~anonymous|57 $std/typedarray/testArrayFindIndex~anonymous|58 $std/typedarray/testArrayFindIndex~anonymous|59 $std/typedarray/testArrayFindIndex~anonymous|60 $std/typedarray/testArrayFindIndex~anonymous|61 $std/typedarray/testArrayFindIndex~anonymous|62 $std/typedarray/testArrayFindIndex~anonymous|63 $std/typedarray/testArrayFindIndex~anonymous|64 $std/typedarray/testArrayFindIndex~anonymous|65 $std/typedarray/testArrayFindIndex~anonymous|66 $std/typedarray/testArrayFindIndex~anonymous|67 $std/typedarray/testArrayFindIndex~anonymous|68 $std/typedarray/testArrayFindIndex~anonymous|69 $std/typedarray/testArrayFindIndex~anonymous|70 $std/typedarray/testArrayFindIndex~anonymous|71 $std/typedarray/testArrayFindIndex~anonymous|72 $std/typedarray/testArrayFindIndex~anonymous|73 $std/typedarray/testArrayFindIndex~anonymous|74 $std/typedarray/testArrayFindIndex~anonymous|75 $std/typedarray/testArrayFindIndex~anonymous|76 $std/typedarray/testArrayFindIndex~anonymous|77 $std/typedarray/testArrayFindIndex~anonymous|78 $std/typedarray/testArrayEvery~anonymous|79 $std/typedarray/testArrayEvery~anonymous|80 $std/typedarray/testArrayEvery~anonymous|81 $std/typedarray/testArrayEvery~anonymous|82 $std/typedarray/testArrayEvery~anonymous|83 $std/typedarray/testArrayEvery~anonymous|84 $std/typedarray/testArrayEvery~anonymous|85 $std/typedarray/testArrayEvery~anonymous|86 $std/typedarray/testArrayEvery~anonymous|87 $std/typedarray/testArrayEvery~anonymous|88 $std/typedarray/testArrayEvery~anonymous|89 $std/typedarray/testArrayEvery~anonymous|90 $std/typedarray/testArrayEvery~anonymous|91 $std/typedarray/testArrayEvery~anonymous|92 $std/typedarray/testArrayEvery~anonymous|93 $std/typedarray/testArrayEvery~anonymous|94 $std/typedarray/testArrayEvery~anonymous|95 $std/typedarray/testArrayEvery~anonymous|96 $std/typedarray/testArrayEvery~anonymous|97 $std/typedarray/testArrayEvery~anonymous|98 $std/typedarray/testArrayEvery~anonymous|99 $std/typedarray/testArrayEvery~anonymous|100) (global $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT i32 (i32.const 1)) @@ -90,7 +99,9 @@ (global $std/typedarray/multisubarr1 (mut i32) (i32.const 0)) (global $std/typedarray/multisubarr2 (mut i32) (i32.const 0)) (global $std/typedarray/multisubarr3 (mut i32) (i32.const 0)) - (global $~lib/memory/HEAP_BASE i32 (i32.const 624)) + (global $std/typedarray/arrayLikeValue (mut i32) (i32.const 0)) + (global $std/typedarray/setSource (mut i32) (i32.const 656)) + (global $~lib/memory/HEAP_BASE i32 (i32.const 1056)) (export "memory" (memory $0)) (export "table" (table $0)) (start $start) @@ -497,7 +508,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -578,7 +589,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -673,7 +684,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -754,7 +765,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -835,7 +846,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -916,7 +927,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -997,7 +1008,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1078,7 +1089,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1159,7 +1170,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1240,7 +1251,7 @@ if i32.const 0 i32.const 48 - i32.const 23 + i32.const 24 i32.const 34 call $~lib/env/abort unreachable @@ -1898,7 +1909,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -1938,7 +1949,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -2086,7 +2097,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -3122,7 +3133,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -3175,7 +3186,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -3222,7 +3233,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -3260,7 +3271,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -3409,7 +3420,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -4219,7 +4230,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -4384,7 +4395,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -4667,7 +4678,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -4828,7 +4839,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -4989,7 +5000,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -5150,7 +5161,7 @@ if i32.const 0 i32.const 48 - i32.const 50 + i32.const 51 i32.const 63 call $~lib/env/abort unreachable @@ -7338,7 +7349,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -7562,7 +7573,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -7951,7 +7962,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -8162,7 +8173,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -8373,7 +8384,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -8584,7 +8595,7 @@ if i32.const 0 i32.const 48 - i32.const 39 + i32.const 40 i32.const 63 call $~lib/env/abort unreachable @@ -14319,69 +14330,20705 @@ unreachable end ) - (func $start:std/typedarray (; 299 ;) (type $_) - (local $0 i32) - global.get $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 8 - i32.const 1 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $~lib/typedarray/Uint8Array.BYTES_PER_ELEMENT - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 8 - i32.const 2 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $~lib/typedarray/Uint8ClampedArray.BYTES_PER_ELEMENT - i32.const 1 - i32.eq + (func $std/typedarray/ArrayLike#constructor (; 299 ;) (type $ii) (param $0 i32) (result i32) + local.get $0 i32.eqz if - i32.const 0 - i32.const 8 - i32.const 3 - i32.const 0 - call $~lib/env/abort - unreachable + i32.const 4 + call $~lib/memory/memory.allocate + local.set $0 end - global.get $~lib/typedarray/Int16Array.BYTES_PER_ELEMENT + local.get $0 + i32.const 3 + i32.store + local.get $0 + ) + (func $~lib/array/Array#__unchecked_get (; 300 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load + local.set $2 + local.get $1 + local.set $3 + i32.const 0 + local.set $4 + local.get $2 + local.get $3 i32.const 2 + i32.shl + i32.add + local.get $4 + i32.add + i32.load offset=8 + ) + (func $~lib/internal/memory/memcpy (; 301 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + local.get $2 + end + if + block + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + end + br $continue|0 + end + end + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 i32.eq - i32.eqz if - i32.const 0 + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + if + block + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + end + br $continue|1 + end + end + end + local.get $2 i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 i32.const 4 - i32.const 0 - call $~lib/env/abort - unreachable + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + return end - global.get $~lib/typedarray/Uint16Array.BYTES_PER_ELEMENT - i32.const 2 - i32.eq - i32.eqz + local.get $2 + i32.const 32 + i32.ge_u if - i32.const 0 - i32.const 8 - i32.const 5 - i32.const 0 - call $~lib/env/abort - unreachable - end - global.get $~lib/typedarray/Int32Array.BYTES_PER_ELEMENT + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + block + local.get $1 + i32.load + local.set $3 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + if + block + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + end + br $continue|3 + end + end + end + br $break|2 + unreachable + end + unreachable + end + block + local.get $1 + i32.load + local.set $3 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + if + block + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + end + br $continue|4 + end + end + end + br $break|2 + unreachable + end + unreachable + end + block + local.get $1 + i32.load + local.set $3 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + if + block + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + end + br $continue|5 + end + end + end + br $break|2 + unreachable + end + unreachable + end + end + local.get $2 + i32.const 16 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + block (result i32) + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + end + block (result i32) + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + end + i32.load8_u + i32.store8 + end + ) + (func $~lib/internal/memory/memmove (; 302 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.eq + if + return + end + local.get $1 + local.get $2 + i32.add + local.get $0 + i32.le_u + local.tee $3 + if (result i32) + local.get $3 + else + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.le_u + end + if + local.get $0 + local.get $1 + local.get $2 + call $~lib/internal/memory/memcpy + return + end + local.get $0 + local.get $1 + i32.lt_u + if + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $0 + i32.const 7 + i32.and + if + block + local.get $2 + i32.eqz + if + return + end + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block (result i32) + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $3 + end + block (result i32) + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $3 + end + i32.load8_u + i32.store8 + end + br $continue|0 + end + end + end + block $break|1 + loop $continue|1 + local.get $2 + i32.const 8 + i32.ge_u + if + block + local.get $0 + local.get $1 + i64.load + i64.store + local.get $2 + i32.const 8 + i32.sub + local.set $2 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + br $continue|1 + end + end + end + end + block $break|2 + loop $continue|2 + local.get $2 + if + block + block (result i32) + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $3 + end + block (result i32) + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $3 + end + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + end + br $continue|2 + end + end + end + else + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $0 + local.get $2 + i32.add + i32.const 7 + i32.and + if + block + local.get $2 + i32.eqz + if + return + end + local.get $0 + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + end + br $continue|3 + end + end + end + block $break|4 + loop $continue|4 + local.get $2 + i32.const 8 + i32.ge_u + if + block + local.get $2 + i32.const 8 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.add + local.get $1 + local.get $2 + i32.add + i64.load + i64.store + end + br $continue|4 + end + end + end + end + block $break|5 + loop $continue|5 + local.get $2 + if + local.get $0 + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set> (; 303 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.3 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.4 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.0 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.0 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.1 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.0 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.12 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 0 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store8 offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.1 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.13 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 0 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 304 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.17 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.1 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.2 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 0 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.3 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 305 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.2 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.4 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.5 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.10 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.11 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int8Array#set (; 306 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.3 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.6 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.7 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.10 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.11 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $std/typedarray/ArrayLike#__get (; 307 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + ) + (func $~lib/typedarray/Int8Array#set (; 308 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.18 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 0 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store8 offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 309 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int8Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Int8Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Int8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint8Array#set> (; 310 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.6 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.7 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.4 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.8 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.9 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.0 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.14 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 0 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store8 offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.1 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.15 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 0 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8Array#set (; 311 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.13 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.5 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.10 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 0 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.11 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint8Array#set (; 312 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.11 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.12 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.6 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.12 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.13 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.12 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.13 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8Array#set (; 313 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.11 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.12 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.7 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.14 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.15 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.12 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.13 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8Array#set (; 314 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.14 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 0 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store8 offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 315 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Uint8Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Uint8Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Uint8Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint8ClampedArray#set> (; 316 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.9 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.10 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.1 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.8 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.16 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.17 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.7 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.16 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 0 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store8 offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.8 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.17 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 0 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8ClampedArray#set (; 317 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.16 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.1 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.18 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 0 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.19 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint8ClampedArray#set (; 318 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.14 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.1 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.15 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.10 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.20 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.21 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.9 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.14 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.10 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.15 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8ClampedArray#set (; 319 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.14 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.1 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.15 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.11 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.22 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.23 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.11 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.14 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 0 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store8 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.12 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.15 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 0 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store8 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint8ClampedArray#set (; 320 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.17 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 0 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.13 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 0 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store8 offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 321 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Uint8ClampedArray#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 255 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int16Array#set> (; 322 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.12 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.13 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.12 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.24 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.25 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.0 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.18 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 1 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store16 offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.1 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.19 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 1 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 323 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 1 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.13 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.26 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 1 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.27 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 324 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.17 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.18 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.28 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.29 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.16 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 1 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.17 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 1 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store16 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 325 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.17 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.18 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.15 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.30 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.31 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.16 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 1 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.17 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 1 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store16 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int16Array#set (; 326 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 1 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 1 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store16 offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 327 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int16Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Int16Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Int16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint16Array#set> (; 328 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.15 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.16 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.16 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.32 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.33 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.0 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.20 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 1 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store16 offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.1 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.21 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 1 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint16Array#set (; 329 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 1 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.17 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.34 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 1 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.35 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint16Array#set (; 330 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.20 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.21 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.18 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.36 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.37 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.18 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 1 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.19 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 1 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store16 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint16Array#set (; 331 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.20 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.21 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.38 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.39 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.18 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 1 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store16 offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.19 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 1 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store16 offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint16Array#set (; 332 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 1 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 1 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store16 offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 333 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Uint16Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Uint16Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Uint16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Uint16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Uint16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Uint16Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 65535 + i32.and + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int32Array#set> (; 334 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.18 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.19 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.20 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.40 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.41 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.22 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.23 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 335 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.16 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.21 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.42 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 2 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.43 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 336 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.23 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.24 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.22 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.44 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.45 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.20 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.21 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_s + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 337 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.23 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.24 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.23 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.46 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.47 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.7 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.20 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.8 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.21 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int32Array#set (; 338 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.17 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.9 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 339 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int32Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Int32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Int32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint32Array#set> (; 340 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.21 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.22 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.24 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.48 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.49 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.24 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + local.set $24 + local.get $12 + local.set $23 + local.get $20 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $23 + i32.add + local.get $24 + i32.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.25 (result i32) + local.get $13 + local.set $23 + local.get $18 + local.set $24 + local.get $14 + local.set $19 + local.get $23 + local.get $24 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + i32.load offset=8 + end + local.set $19 + local.get $12 + local.set $24 + local.get $17 + local.get $21 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint32Array#set (; 341 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.25 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.50 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 2 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.51 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint32Array#set (; 342 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.26 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.27 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.26 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.52 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.53 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.22 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.23 (result f32) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + f32.load offset=8 + end + i32.trunc_f32_u + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint32Array#set (; 343 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.26 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.27 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.27 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.54 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.55 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.22 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $19 + local.get $7 + local.set $18 + local.get $15 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $18 + i32.add + local.get $19 + i32.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.7 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.23 (result i64) + local.get $8 + local.set $18 + local.get $13 + local.set $19 + local.get $9 + local.set $14 + local.get $18 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + i64.load offset=8 + end + i32.wrap_i64 + local.set $14 + local.get $7 + local.set $19 + local.get $12 + local.get $16 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + local.get $14 + i32.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint32Array#set (; 344 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.8 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i32.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 345 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Uint32Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Uint32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Uint32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Uint32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Uint32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 10 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 11 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Uint32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 12 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Int64Array#set> (; 346 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i64) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.24 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.25 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.28 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.56 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.57 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.26 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + i64.extend_i32_s + local.set $25 + local.get $12 + local.set $24 + local.get $20 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $24 + i32.add + local.get $25 + i64.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.27 (result i32) + local.get $13 + local.set $24 + local.get $18 + local.set $19 + local.get $14 + local.set $20 + local.get $24 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $20 + i32.add + i32.load offset=8 + end + i64.extend_i32_s + local.set $25 + local.get $12 + local.set $20 + local.get $17 + local.get $21 + i32.const 3 + i32.shl + i32.add + local.get $20 + i32.add + local.get $25 + i64.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int64Array#set (; 347 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.29 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.29 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.58 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 3 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.59 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Int64Array#set (; 348 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i64) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.29 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.30 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.30 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.60 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.61 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.24 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i64.trunc_f32_s + local.set $20 + local.get $7 + local.set $19 + local.get $15 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + local.get $20 + i64.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.25 (result f32) + local.get $8 + local.set $19 + local.get $13 + local.set $14 + local.get $9 + local.set $15 + local.get $19 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $15 + i32.add + f32.load offset=8 + end + i64.trunc_f32_s + local.set $20 + local.get $7 + local.set $15 + local.get $12 + local.get $16 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + local.get $20 + i64.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Int64Array#set (; 349 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.30 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + i64.extend_i32_s + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i64.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 350 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Int64Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Int64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 10 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 11 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Int64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Uint64Array#set> (; 351 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i64) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.27 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.28 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.31 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.62 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.63 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.28 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + i64.extend_i32_s + local.set $25 + local.get $12 + local.set $24 + local.get $20 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $24 + i32.add + local.get $25 + i64.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.29 (result i32) + local.get $13 + local.set $24 + local.get $18 + local.set $19 + local.get $14 + local.set $20 + local.get $24 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $20 + i32.add + i32.load offset=8 + end + i64.extend_i32_s + local.set $25 + local.get $12 + local.set $20 + local.get $17 + local.get $21 + i32.const 3 + i32.shl + i32.add + local.get $20 + i32.add + local.get $25 + i64.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint64Array#set (; 352 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.8 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.32 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.64 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 3 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.65 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint64Array#set (; 353 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i64) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.32 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.33 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.33 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.66 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.67 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.26 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + i64.trunc_f32_u + local.set $20 + local.get $7 + local.set $19 + local.get $15 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + local.get $20 + i64.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.27 (result f32) + local.get $8 + local.set $19 + local.get $13 + local.set $14 + local.get $9 + local.set $15 + local.get $19 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $15 + i32.add + f32.load offset=8 + end + i64.trunc_f32_u + local.set $20 + local.get $7 + local.set $15 + local.get $12 + local.get $16 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + local.get $20 + i64.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Uint64Array#set (; 354 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.32 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.1 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.34 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.68 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 3 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.69 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Uint64Array#set (; 355 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.9 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + i64.extend_i32_s + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + i64.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 356 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Uint64Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Uint64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.set $1 + local.get $1 + i32.const 0 + i64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + i64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Uint64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Uint64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Uint64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 10 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 11 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Uint64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 0 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 2 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 12 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Float32Array#set> (; 357 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 f32) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.30 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.31 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.35 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.70 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.71 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.2 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.30 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + f32.convert_i32_s + local.set $25 + local.get $12 + local.set $24 + local.get $20 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + local.get $25 + f32.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.3 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.31 (result i32) + local.get $13 + local.set $24 + local.get $18 + local.set $19 + local.get $14 + local.set $20 + local.get $24 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $20 + i32.add + i32.load offset=8 + end + f32.convert_i32_s + local.set $25 + local.get $12 + local.set $20 + local.get $17 + local.get $21 + i32.const 2 + i32.shl + i32.add + local.get $20 + i32.add + local.get $25 + f32.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Float32Array#set (; 358 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.35 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.36 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.72 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 2 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.73 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Float32Array#set (; 359 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 f32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.34 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.35 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.37 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.74 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.75 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.4 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.24 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + f32.convert_i64_s + local.set $20 + local.get $7 + local.set $19 + local.get $15 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + local.get $20 + f32.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.5 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.25 (result i64) + local.get $8 + local.set $19 + local.get $13 + local.set $14 + local.get $9 + local.set $15 + local.get $19 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + i64.load offset=8 + end + f32.convert_i64_s + local.set $20 + local.get $7 + local.set $15 + local.get $12 + local.get $16 + i32.const 2 + i32.shl + i32.add + local.get $15 + i32.add + local.get $20 + f32.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Float32Array#set (; 360 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 f32) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.36 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.6 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + f32.convert_i32_s + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + f32.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 361 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Float32Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Float32Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $1 + local.get $1 + i32.const 0 + f32.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f32.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f32.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 6 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 10 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 11 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 12 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Float32Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 0 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 1 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 2 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 12 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 7 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 8 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f32.const 9 + f32.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $~lib/typedarray/Float64Array#set> (; 362 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 f64) + block $~lib/internal/typedarray/SET>|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/array/Array#get:length|inlined.33 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=4 + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET>|inlined.0 + end + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + block $~lib/array/Array#get:length|inlined.34 (result i32) + local.get $4 + local.set $9 + local.get $9 + i32.load offset=4 + end + local.set $9 + local.get $4 + i32.const 0 + call $~lib/array/Array#__unchecked_get + local.set $10 + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $6 + local.set $11 + local.get $7 + local.set $12 + local.get $8 + local.set $13 + i32.const 0 + local.set $14 + local.get $5 + local.set $15 + local.get $9 + local.set $16 + local.get $11 + local.get $13 + i32.eq + if + local.get $16 + i32.const 2 + i32.shl + local.set $17 + local.get $17 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $18 + block $~lib/memory/memory.copy|inlined.38 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.76 (result i32) + local.get $18 + local.set $19 + local.get $19 + i32.const 8 + i32.add + end + local.set $19 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.77 (result i32) + local.get $13 + local.set $20 + local.get $20 + i32.const 8 + i32.add + end + local.get $14 + i32.add + local.set $20 + local.get $17 + local.set $21 + local.get $19 + local.get $20 + local.get $21 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $21 + loop $repeat|0 + local.get $21 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.14 + local.get $11 + local.set $20 + local.get $21 + local.get $15 + i32.add + local.set $19 + block $~lib/internal/arraybuffer/LOAD|inlined.32 (result i32) + local.get $18 + local.set $22 + local.get $21 + local.set $23 + i32.const 0 + local.set $24 + local.get $22 + local.get $23 + i32.const 2 + i32.shl + i32.add + local.get $24 + i32.add + i32.load offset=8 + end + f64.convert_i32_s + local.set $25 + local.get $12 + local.set $24 + local.get $20 + local.get $19 + i32.const 3 + i32.shl + i32.add + local.get $24 + i32.add + local.get $25 + f64.store offset=8 + end + local.get $21 + i32.const 1 + i32.add + local.set $21 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $18 + loop $repeat|1 + local.get $18 + local.get $16 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.15 + local.get $11 + local.set $17 + local.get $18 + local.get $15 + i32.add + local.set $21 + block $~lib/internal/arraybuffer/LOAD|inlined.33 (result i32) + local.get $13 + local.set $24 + local.get $18 + local.set $19 + local.get $14 + local.set $20 + local.get $24 + local.get $19 + i32.const 2 + i32.shl + i32.add + local.get $20 + i32.add + i32.load offset=8 + end + f64.convert_i32_s + local.set $25 + local.get $12 + local.set $20 + local.get $17 + local.get $21 + i32.const 3 + i32.shl + i32.add + local.get $20 + i32.add + local.get $25 + f64.store offset=8 + end + local.get $18 + i32.const 1 + i32.add + local.set $18 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 363 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.11 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_SAME|inlined.0 + local.get $3 + local.set $6 + local.get $4 + local.set $7 + local.get $5 + local.set $8 + block $~lib/memory/memory.copy|inlined.39 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.78 (result i32) + local.get $6 + i32.load + local.set $9 + local.get $9 + i32.const 8 + i32.add + end + local.get $6 + i32.load offset=4 + i32.add + local.get $8 + i32.const 3 + i32.shl + i32.add + local.set $9 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.79 (result i32) + local.get $7 + i32.load + local.set $10 + local.get $10 + i32.const 8 + i32.add + end + local.get $7 + i32.load offset=4 + i32.add + local.set $10 + local.get $7 + i32.load + i32.load + local.set $11 + local.get $9 + local.get $10 + local.get $11 + call $~lib/internal/memory/memmove + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 364 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 f64) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.38 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.39 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 2 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 2 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.40 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.80 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.81 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.16 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.28 (result f32) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 2 + i32.shl + i32.add + local.get $19 + i32.add + f32.load offset=8 + end + f64.promote_f32 + local.set $20 + local.get $7 + local.set $19 + local.get $15 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + local.get $20 + f64.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.17 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.29 (result f32) + local.get $8 + local.set $19 + local.get $13 + local.set $14 + local.get $9 + local.set $15 + local.get $19 + local.get $14 + i32.const 2 + i32.shl + i32.add + local.get $15 + i32.add + f32.load offset=8 + end + f64.promote_f32 + local.set $20 + local.get $7 + local.set $15 + local.get $12 + local.get $16 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + local.get $20 + f64.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 365 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 f64) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + block $~lib/internal/typedarray/TypedArray#get:length|inlined.37 (result i32) + local.get $4 + local.set $6 + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + block $~lib/internal/typedarray/SET_COPY|inlined.0 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + local.get $4 + i32.load + local.set $8 + local.get $4 + i32.load offset=4 + local.set $9 + local.get $5 + local.set $10 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.38 (result i32) + local.get $4 + local.set $11 + local.get $11 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $11 + local.get $6 + local.get $8 + i32.eq + if + local.get $11 + i32.const 3 + i32.shl + local.set $12 + local.get $12 + call $~lib/internal/arraybuffer/allocateUnsafe + local.set $13 + block $~lib/memory/memory.copy|inlined.41 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.82 (result i32) + local.get $13 + local.set $14 + local.get $14 + i32.const 8 + i32.add + end + local.set $14 + block $~lib/arraybuffer/ArrayBuffer#get:data|inlined.83 (result i32) + local.get $8 + local.set $15 + local.get $15 + i32.const 8 + i32.add + end + local.get $9 + i32.add + local.set $15 + local.get $12 + local.set $16 + local.get $14 + local.get $15 + local.get $16 + call $~lib/internal/memory/memmove + end + block $break|0 + i32.const 0 + local.set $16 + loop $repeat|0 + local.get $16 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.18 + local.get $6 + local.set $15 + local.get $16 + local.get $10 + i32.add + local.set $14 + block $~lib/internal/arraybuffer/LOAD|inlined.26 (result i64) + local.get $13 + local.set $17 + local.get $16 + local.set $18 + i32.const 0 + local.set $19 + local.get $17 + local.get $18 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + i64.load offset=8 + end + f64.convert_i64_s + local.set $20 + local.get $7 + local.set $19 + local.get $15 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $19 + i32.add + local.get $20 + f64.store offset=8 + end + local.get $16 + i32.const 1 + i32.add + local.set $16 + br $repeat|0 + unreachable + end + unreachable + end + else + block $break|1 + i32.const 0 + local.set $13 + loop $repeat|1 + local.get $13 + local.get $11 + i32.lt_s + i32.eqz + br_if $break|1 + block $~lib/internal/arraybuffer/STORE|inlined.19 + local.get $6 + local.set $12 + local.get $13 + local.get $10 + i32.add + local.set $16 + block $~lib/internal/arraybuffer/LOAD|inlined.27 (result i64) + local.get $8 + local.set $19 + local.get $13 + local.set $14 + local.get $9 + local.set $15 + local.get $19 + local.get $14 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + i64.load offset=8 + end + f64.convert_i64_s + local.set $20 + local.get $7 + local.set $15 + local.get $12 + local.get $16 + i32.const 3 + i32.shl + i32.add + local.get $15 + i32.add + local.get $20 + f64.store offset=8 + end + local.get $13 + i32.const 1 + i32.add + local.set $13 + br $repeat|1 + unreachable + end + unreachable + end + end + end + end + ) + (func $~lib/typedarray/Float64Array#set (; 366 ;) (type $iii_) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 f64) + (local $14 i32) + block $~lib/internal/typedarray/SET|inlined.0 + local.get $0 + local.set $3 + local.get $1 + local.set $4 + local.get $2 + local.set $5 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 664 + i32.const 48 + i32.const 243 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 720 + i32.const 48 + i32.const 244 + i32.const 6 + call $~lib/env/abort + unreachable + end + local.get $4 + i32.load + i32.const 0 + i32.eq + if + br $~lib/internal/typedarray/SET|inlined.0 + end + local.get $4 + i32.load + local.set $6 + block $~lib/internal/typedarray/TypedArray#get:length|inlined.12 (result i32) + local.get $3 + local.set $7 + local.get $7 + i32.load offset=8 + i32.const 3 + i32.shr_u + end + local.set $7 + local.get $6 + local.get $5 + i32.add + local.get $7 + i32.le_s + i32.eqz + if + i32.const 936 + i32.const 48 + i32.const 455 + i32.const 8 + call $~lib/env/abort + unreachable + end + local.get $3 + i32.load + local.set $8 + local.get $3 + i32.load offset=4 + local.set $9 + block $break|0 + local.get $4 + i32.load + i32.const 1 + i32.sub + local.set $10 + loop $repeat|0 + local.get $10 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + block $~lib/internal/arraybuffer/STORE|inlined.20 + local.get $8 + local.set $11 + local.get $10 + local.get $5 + i32.add + local.set $12 + local.get $4 + local.get $10 + call $std/typedarray/ArrayLike#__get + f64.convert_i32_s + local.set $13 + local.get $9 + local.set $14 + local.get $11 + local.get $12 + i32.const 3 + i32.shl + i32.add + local.get $14 + i32.add + local.get $13 + f64.store offset=8 + end + local.get $10 + i32.const 1 + i32.sub + local.set $10 + br $repeat|0 + unreachable + end + unreachable + end + end + ) + (func $std/typedarray/testArraySet (; 367 ;) (type $_) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 10 + call $~lib/typedarray/Float64Array#constructor + local.set $0 + local.get $0 + global.get $std/typedarray/setSource + i32.const 4 + call $~lib/typedarray/Float64Array#set> + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 431 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 432 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 433 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 434 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 435 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 436 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 437 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 438 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 439 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 776 + i32.const 8 + i32.const 440 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.set $1 + local.get $1 + i32.const 0 + f64.const 4 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 1 + f64.const 5 + call $~lib/internal/typedarray/TypedArray#__set + local.get $1 + i32.const 2 + f64.const 6 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $1 + i32.const 0 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 449 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 450 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 451 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 452 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 453 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 454 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 455 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 456 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 457 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 816 + i32.const 8 + i32.const 458 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.set $2 + local.get $2 + i32.const 0 + f32.const 7 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 1 + f32.const 8 + call $~lib/internal/typedarray/TypedArray#__set + local.get $2 + i32.const 2 + f32.const 9 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $2 + i32.const 7 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 467 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 468 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 469 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 470 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 471 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 472 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 473 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 474 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 475 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 476 + i32.const 2 + call $~lib/env/abort + unreachable + end + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i64.const 10 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 1 + i64.const 11 + call $~lib/internal/typedarray/TypedArray#__set + local.get $3 + i32.const 2 + i64.const 12 + call $~lib/internal/typedarray/TypedArray#__set + local.get $0 + local.get $3 + i32.const 3 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 485 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 486 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 6 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 487 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 10 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 488 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 11 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 489 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 12 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 490 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 491 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 492 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 493 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.eq + i32.eqz + if + i32.const 880 + i32.const 8 + i32.const 494 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + global.get $std/typedarray/arrayLikeValue + i32.const 2 + call $~lib/typedarray/Float64Array#set + local.get $0 + i32.const 0 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 498 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 499 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 0 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 500 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 1 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 501 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 2 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 502 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 5 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 12 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 503 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 6 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 504 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 7 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 7 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 505 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 8 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 8 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 506 + i32.const 2 + call $~lib/env/abort + unreachable + end + local.get $0 + i32.const 9 + call $~lib/internal/typedarray/TypedArray#__get + f64.const 9 + f64.eq + i32.eqz + if + i32.const 1008 + i32.const 8 + i32.const 507 + i32.const 2 + call $~lib/env/abort + unreachable + end + ) + (func $start:std/typedarray (; 368 ;) (type $_) + (local $0 i32) + global.get $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 8 + i32.const 1 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $~lib/typedarray/Uint8Array.BYTES_PER_ELEMENT + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 8 + i32.const 2 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $~lib/typedarray/Uint8ClampedArray.BYTES_PER_ELEMENT + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 8 + i32.const 3 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $~lib/typedarray/Int16Array.BYTES_PER_ELEMENT + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 8 + i32.const 4 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $~lib/typedarray/Uint16Array.BYTES_PER_ELEMENT + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 8 + i32.const 5 + i32.const 0 + call $~lib/env/abort + unreachable + end + global.get $~lib/typedarray/Int32Array.BYTES_PER_ELEMENT i32.const 4 i32.eq i32.eqz @@ -15555,10 +36202,24 @@ call $std/typedarray/testArrayEvery call $std/typedarray/testArrayEvery call $std/typedarray/testArrayEvery - ) - (func $start (; 300 ;) (type $_) + i32.const 0 + call $std/typedarray/ArrayLike#constructor + global.set $std/typedarray/arrayLikeValue + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + call $std/typedarray/testArraySet + ) + (func $start (; 369 ;) (type $_) call $start:std/typedarray ) - (func $null (; 301 ;) (type $_) + (func $null (; 370 ;) (type $_) ) )