From 4979a91b5ae9ebf990f53a3aa53141208f6ebee4 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 08:22:32 +0300 Subject: [PATCH 01/38] wip --- package-lock.json | 18 ++-- package.json | 2 +- scripts/update-constants.js | 4 + src/glue/binaryen.d.ts | 7 ++ src/glue/binaryen.js | 165 +++++++++++++++++++----------------- src/module.ts | 14 +-- 6 files changed, 116 insertions(+), 94 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5e96cb369d..56a1c0f150 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "108.0.0-nightly.20220528", + "binaryen": "109.0.0-nightly.20220726", "long": "^5.2.0" }, "bin": { @@ -26,6 +26,10 @@ "glob": "^7.2.0", "typescript": "~4.5.2" }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/assemblyscript" @@ -394,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "108.0.0-nightly.20220528", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-108.0.0-nightly.20220528.tgz", - "integrity": "sha512-9biG357fx3NXmJNotIuY9agZBcCNHP7d1mgOGaTlPYVHZE7/61lt1IyHCXAL+W5jUOYgmFZ260PR4IbD19RKuA==", + "version": "109.0.0-nightly.20220726", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220726.tgz", + "integrity": "sha512-Bl4Yeqg6gN4Wfm5kPqQm3BUhLtpd9y3xLLQOIK+NKrbFNX1o6fMQyMlSI5e1mnYuiRMGUk9GqSetvU/Suyxi9g==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2113,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "108.0.0-nightly.20220528", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-108.0.0-nightly.20220528.tgz", - "integrity": "sha512-9biG357fx3NXmJNotIuY9agZBcCNHP7d1mgOGaTlPYVHZE7/61lt1IyHCXAL+W5jUOYgmFZ260PR4IbD19RKuA==" + "version": "109.0.0-nightly.20220726", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220726.tgz", + "integrity": "sha512-Bl4Yeqg6gN4Wfm5kPqQm3BUhLtpd9y3xLLQOIK+NKrbFNX1o6fMQyMlSI5e1mnYuiRMGUk9GqSetvU/Suyxi9g==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 9ee8797cd5..06b1955ab9 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "108.0.0-nightly.20220528", + "binaryen": "109.0.0-nightly.20220726", "long": "^5.2.0" }, "devDependencies": { diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 8ef7161811..7a7f3ea666 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,6 +11,10 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { + // ignore binaryen types which should cacheed in runtime + if (val.startsWith("binaryen._BinaryenType")) { + return $0; + } var match = val.match(/\b(_(?:Binaryen|Relooper|ExpressionRunner)\w+)\b/); if (match) { let fn = match[1]; diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index 17b3f098c9..ab1f05f196 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -38,6 +38,13 @@ export declare function _BinaryenTypeCreate(types: ArrayRef, numTypes: export declare function _BinaryenTypeArity(type: TypeRef): u32; export declare function _BinaryenTypeExpand(type: TypeRef, typesOut: ArrayRef): void; +export declare function _BinaryenTypeFuncref(): TypeRef; +export declare function _BinaryenTypeExternref(): TypeRef; +export declare function _BinaryenTypeAnyref(): TypeRef; +export declare function _BinaryenTypeEqref(): TypeRef; +export declare function _BinaryenTypeI31ref(): TypeRef; +export declare function _BinaryenTypeDataref(): TypeRef; + export declare function _BinaryenModuleCreate(): ModuleRef; export declare function _BinaryenModuleDispose(module: ModuleRef): void; diff --git a/src/glue/binaryen.js b/src/glue/binaryen.js index eb0e869fb2..cb96dcf0fb 100644 --- a/src/glue/binaryen.js +++ b/src/glue/binaryen.js @@ -23,6 +23,13 @@ export const { _BinaryenTypeArity, _BinaryenTypeExpand, + _BinaryenTypeFuncref, + _BinaryenTypeExternref, + _BinaryenTypeAnyref, + _BinaryenTypeEqref, + _BinaryenTypeI31ref, + _BinaryenTypeDataref, + _BinaryenModuleCreate, _BinaryenModuleDispose, @@ -34,14 +41,14 @@ export const { _BinaryenLiteralVec128, _BinaryenLiteralFloat32Bits, _BinaryenLiteralFloat64Bits, - + _BinaryenExpressionGetId, _BinaryenExpressionGetType, _BinaryenExpressionSetType, _BinaryenExpressionPrint, _BinaryenExpressionCopy, _BinaryenExpressionFinalize, - + _BinaryenBlock, _BinaryenBlockGetName, _BinaryenBlockSetName, @@ -51,7 +58,7 @@ export const { _BinaryenBlockAppendChild, _BinaryenBlockInsertChildAt, _BinaryenBlockRemoveChildAt, - + _BinaryenIf, _BinaryenIfGetCondition, _BinaryenIfSetCondition, @@ -59,13 +66,13 @@ export const { _BinaryenIfSetIfTrue, _BinaryenIfGetIfFalse, _BinaryenIfSetIfFalse, - + _BinaryenLoop, _BinaryenLoopGetName, _BinaryenLoopSetName, _BinaryenLoopGetBody, _BinaryenLoopSetBody, - + _BinaryenBreak, _BinaryenBreakGetName, _BinaryenBreakSetName, @@ -73,7 +80,7 @@ export const { _BinaryenBreakSetCondition, _BinaryenBreakGetValue, _BinaryenBreakSetValue, - + _BinaryenSwitch, _BinaryenSwitchGetNumNames, _BinaryenSwitchGetNameAt, @@ -87,7 +94,7 @@ export const { _BinaryenSwitchSetCondition, _BinaryenSwitchGetValue, _BinaryenSwitchSetValue, - + _BinaryenCall, _BinaryenCallGetTarget, _BinaryenCallSetTarget, @@ -100,7 +107,7 @@ export const { _BinaryenCallIsReturn, _BinaryenCallSetReturn, _BinaryenReturnCall, - + _BinaryenCallIndirect, _BinaryenCallIndirectGetTable, _BinaryenCallIndirectSetTable, @@ -115,11 +122,11 @@ export const { _BinaryenCallIndirectIsReturn, _BinaryenCallIndirectSetReturn, _BinaryenReturnCallIndirect, - + _BinaryenLocalGet, _BinaryenLocalGetGetIndex, _BinaryenLocalGetSetIndex, - + _BinaryenLocalSet, _BinaryenLocalSetIsTee, _BinaryenLocalSetGetIndex, @@ -127,23 +134,23 @@ export const { _BinaryenLocalSetGetValue, _BinaryenLocalSetSetValue, _BinaryenLocalTee, - + _BinaryenGlobalGet, _BinaryenGlobalGetGetName, _BinaryenGlobalGetSetName, - + _BinaryenGlobalSet, _BinaryenGlobalSetGetName, _BinaryenGlobalSetSetName, _BinaryenGlobalSetGetValue, _BinaryenGlobalSetSetValue, - + _BinaryenMemorySize, - + _BinaryenMemoryGrow, _BinaryenMemoryGrowGetDelta, _BinaryenMemoryGrowSetDelta, - + _BinaryenLoad, _BinaryenLoadIsAtomic, _BinaryenLoadSetAtomic, @@ -158,7 +165,7 @@ export const { _BinaryenLoadGetPtr, _BinaryenLoadSetPtr, _BinaryenAtomicLoad, - + _BinaryenStore, _BinaryenStoreIsAtomic, _BinaryenStoreSetAtomic, @@ -175,7 +182,7 @@ export const { _BinaryenStoreGetValueType, _BinaryenStoreSetValueType, _BinaryenAtomicStore, - + _BinaryenConst, _BinaryenConstGetValueI32, _BinaryenConstSetValueI32, @@ -189,13 +196,13 @@ export const { _BinaryenConstSetValueF64, _BinaryenConstGetValueV128, _BinaryenConstSetValueV128, - + _BinaryenUnary, _BinaryenUnaryGetOp, _BinaryenUnarySetOp, _BinaryenUnaryGetValue, _BinaryenUnarySetValue, - + _BinaryenBinary, _BinaryenBinaryGetOp, _BinaryenBinarySetOp, @@ -203,7 +210,7 @@ export const { _BinaryenBinarySetLeft, _BinaryenBinaryGetRight, _BinaryenBinarySetRight, - + _BinaryenSelect, _BinaryenSelectGetIfTrue, _BinaryenSelectSetIfTrue, @@ -211,19 +218,19 @@ export const { _BinaryenSelectSetIfFalse, _BinaryenSelectGetCondition, _BinaryenSelectSetCondition, - + _BinaryenDrop, _BinaryenDropGetValue, _BinaryenDropSetValue, - + _BinaryenReturn, _BinaryenReturnGetValue, _BinaryenReturnSetValue, - + _BinaryenNop, - + _BinaryenUnreachable, - + _BinaryenAtomicRMW, _BinaryenAtomicRMWGetOp, _BinaryenAtomicRMWSetOp, @@ -235,7 +242,7 @@ export const { _BinaryenAtomicRMWSetPtr, _BinaryenAtomicRMWGetValue, _BinaryenAtomicRMWSetValue, - + _BinaryenAtomicCmpxchg, _BinaryenAtomicCmpxchgGetBytes, _BinaryenAtomicCmpxchgSetBytes, @@ -247,7 +254,7 @@ export const { _BinaryenAtomicCmpxchgSetExpected, _BinaryenAtomicCmpxchgGetReplacement, _BinaryenAtomicCmpxchgSetReplacement, - + _BinaryenAtomicWait, _BinaryenAtomicWaitGetPtr, _BinaryenAtomicWaitSetPtr, @@ -257,17 +264,17 @@ export const { _BinaryenAtomicWaitSetTimeout, _BinaryenAtomicWaitGetExpectedType, _BinaryenAtomicWaitSetExpectedType, - + _BinaryenAtomicNotify, _BinaryenAtomicNotifyGetPtr, _BinaryenAtomicNotifySetPtr, _BinaryenAtomicNotifyGetNotifyCount, _BinaryenAtomicNotifySetNotifyCount, - + _BinaryenAtomicFence, _BinaryenAtomicFenceGetOrder, _BinaryenAtomicFenceSetOrder, - + _BinaryenSIMDExtract, _BinaryenSIMDExtractGetOp, _BinaryenSIMDExtractSetOp, @@ -275,7 +282,7 @@ export const { _BinaryenSIMDExtractSetVec, _BinaryenSIMDExtractGetIndex, _BinaryenSIMDExtractSetIndex, - + _BinaryenSIMDReplace, _BinaryenSIMDReplaceGetOp, _BinaryenSIMDReplaceSetOp, @@ -285,7 +292,7 @@ export const { _BinaryenSIMDReplaceSetIndex, _BinaryenSIMDReplaceGetValue, _BinaryenSIMDReplaceSetValue, - + _BinaryenSIMDShuffle, _BinaryenSIMDShuffleGetLeft, _BinaryenSIMDShuffleSetLeft, @@ -293,7 +300,7 @@ export const { _BinaryenSIMDShuffleSetRight, _BinaryenSIMDShuffleGetMask, _BinaryenSIMDShuffleSetMask, - + _BinaryenSIMDTernary, _BinaryenSIMDTernaryGetOp, _BinaryenSIMDTernarySetOp, @@ -303,7 +310,7 @@ export const { _BinaryenSIMDTernarySetB, _BinaryenSIMDTernaryGetC, _BinaryenSIMDTernarySetC, - + _BinaryenSIMDShift, _BinaryenSIMDShiftGetOp, _BinaryenSIMDShiftSetOp, @@ -311,7 +318,7 @@ export const { _BinaryenSIMDShiftSetVec, _BinaryenSIMDShiftGetShift, _BinaryenSIMDShiftSetShift, - + _BinaryenSIMDLoad, _BinaryenSIMDLoadGetOp, _BinaryenSIMDLoadSetOp, @@ -321,7 +328,7 @@ export const { _BinaryenSIMDLoadSetAlign, _BinaryenSIMDLoadGetPtr, _BinaryenSIMDLoadSetPtr, - + _BinaryenSIMDLoadStoreLane, _BinaryenSIMDLoadStoreLaneGetOp, _BinaryenSIMDLoadStoreLaneSetOp, @@ -336,7 +343,7 @@ export const { _BinaryenSIMDLoadStoreLaneGetVec, _BinaryenSIMDLoadStoreLaneSetVec, _BinaryenSIMDLoadStoreLaneIsStore, - + _BinaryenMemoryInit, _BinaryenMemoryInitGetSegment, _BinaryenMemoryInitSetSegment, @@ -346,11 +353,11 @@ export const { _BinaryenMemoryInitSetOffset, _BinaryenMemoryInitGetSize, _BinaryenMemoryInitSetSize, - + _BinaryenDataDrop, _BinaryenDataDropGetSegment, _BinaryenDataDropSetSegment, - + _BinaryenMemoryCopy, _BinaryenMemoryCopyGetDest, _BinaryenMemoryCopySetDest, @@ -358,7 +365,7 @@ export const { _BinaryenMemoryCopySetSource, _BinaryenMemoryCopyGetSize, _BinaryenMemoryCopySetSize, - + _BinaryenMemoryFill, _BinaryenMemoryFillGetDest, _BinaryenMemoryFillSetDest, @@ -366,37 +373,37 @@ export const { _BinaryenMemoryFillSetValue, _BinaryenMemoryFillGetSize, _BinaryenMemoryFillSetSize, - + _BinaryenRefNull, - + _BinaryenRefIs, _BinaryenRefIsGetOp, _BinaryenRefIsSetOp, _BinaryenRefIsGetValue, _BinaryenRefIsSetValue, - + _BinaryenRefAs, _BinaryenRefAsGetOp, _BinaryenRefAsSetOp, _BinaryenRefAsGetValue, _BinaryenRefAsSetValue, - + _BinaryenRefFunc, _BinaryenRefFuncGetFunc, _BinaryenRefFuncSetFunc, - + _BinaryenRefEq, _BinaryenRefEqGetLeft, _BinaryenRefEqSetLeft, _BinaryenRefEqGetRight, _BinaryenRefEqSetRight, - + _BinaryenTableGet, _BinaryenTableGetGetTable, _BinaryenTableGetSetTable, _BinaryenTableGetGetIndex, _BinaryenTableGetSetIndex, - + _BinaryenTableSet, _BinaryenTableSetGetTable, _BinaryenTableSetSetTable, @@ -404,11 +411,11 @@ export const { _BinaryenTableSetSetIndex, _BinaryenTableSetGetValue, _BinaryenTableSetSetValue, - + _BinaryenTableSize, _BinaryenTableSizeGetTable, _BinaryenTableSizeSetTable, - + _BinaryenTableGrow, _BinaryenTableGrowGetTable, _BinaryenTableGrowSetTable, @@ -416,7 +423,7 @@ export const { _BinaryenTableGrowSetValue, _BinaryenTableGrowGetDelta, _BinaryenTableGrowSetDelta, - + _BinaryenTry, _BinaryenTryGetName, _BinaryenTrySetName, @@ -438,7 +445,7 @@ export const { _BinaryenTryGetDelegateTarget, _BinaryenTrySetDelegateTarget, _BinaryenTryIsDelegate, - + _BinaryenThrow, _BinaryenThrowGetTag, _BinaryenThrowSetTag, @@ -448,11 +455,11 @@ export const { _BinaryenThrowAppendOperand, _BinaryenThrowInsertOperandAt, _BinaryenThrowRemoveOperandAt, - + _BinaryenRethrow, _BinaryenRethrowGetTarget, _BinaryenRethrowSetDepth, - + _BinaryenTupleMake, _BinaryenTupleMakeGetNumOperands, _BinaryenTupleMakeGetOperandAt, @@ -460,31 +467,31 @@ export const { _BinaryenTupleMakeAppendOperand, _BinaryenTupleMakeInsertOperandAt, _BinaryenTupleMakeRemoveOperandAt, - + _BinaryenTupleExtract, _BinaryenTupleExtractGetTuple, _BinaryenTupleExtractSetTuple, _BinaryenTupleExtractGetIndex, _BinaryenTupleExtractSetIndex, - + _BinaryenPop, - + _BinaryenI31New, _BinaryenI31NewGetValue, _BinaryenI31NewSetValue, - + _BinaryenI31Get, _BinaryenI31GetGetI31, _BinaryenI31GetSetI31, _BinaryenI31GetIsSigned, _BinaryenI31GetSetSigned, - + _BinaryenAddFunction, _BinaryenGetFunction, _BinaryenRemoveFunction, _BinaryenGetNumFunctions, _BinaryenGetFunctionByIndex, - + _BinaryenFunctionGetName, _BinaryenFunctionGetParams, _BinaryenFunctionGetResults, @@ -499,13 +506,13 @@ export const { _BinaryenFunctionOptimize, _BinaryenFunctionRunPasses, _BinaryenFunctionSetDebugLocation, - + _BinaryenAddFunctionImport, _BinaryenAddTableImport, _BinaryenAddMemoryImport, _BinaryenAddGlobalImport, _BinaryenAddTagImport, - + _BinaryenAddFunctionExport, _BinaryenAddTableExport, _BinaryenAddMemoryExport, @@ -518,32 +525,32 @@ export const { _BinaryenExportGetKind, _BinaryenExportGetName, _BinaryenExportGetValue, - + _BinaryenAddGlobal, _BinaryenGetGlobal, _BinaryenRemoveGlobal, _BinaryenGetNumGlobals, _BinaryenGetGlobalByIndex, - + _BinaryenGlobalGetName, _BinaryenGlobalGetType, _BinaryenGlobalIsMutable, _BinaryenGlobalGetInitExpr, - + _BinaryenAddTag, _BinaryenGetTag, _BinaryenRemoveTag, - + _BinaryenTagGetName, _BinaryenTagGetParams, _BinaryenTagGetResults, - + _BinaryenAddTable, _BinaryenRemoveTable, _BinaryenGetNumTables, _BinaryenGetTable, _BinaryenGetTableByIndex, - + _BinaryenTableGetName, _BinaryenTableSetName, _BinaryenTableGetInitial, @@ -551,22 +558,22 @@ export const { _BinaryenTableHasMax, _BinaryenTableGetMax, _BinaryenTableSetMax, - + _BinaryenAddActiveElementSegment, _BinaryenAddPassiveElementSegment, _BinaryenRemoveElementSegment, _BinaryenGetNumElementSegments, _BinaryenGetElementSegment, _BinaryenGetElementSegmentByIndex, - + _BinaryenSetMemory, _BinaryenGetNumMemorySegments, _BinaryenGetMemorySegmentByteOffset, _BinaryenGetMemorySegmentByteLength, _BinaryenCopyMemorySegmentData, - + _BinaryenSetStart, - + _BinaryenModuleParse, _BinaryenModulePrint, _BinaryenModulePrintAsmjs, @@ -581,23 +588,23 @@ export const { _BinaryenModuleGetDebugInfoFileName, _BinaryenModuleGetFeatures, _BinaryenModuleSetFeatures, - + _BinaryenAddCustomSection, - + _BinaryenExpressionGetSideEffects, - + _RelooperCreate, _RelooperAddBlock, _RelooperAddBranch, _RelooperAddBlockWithSwitch, _RelooperAddBranchForSwitch, _RelooperRenderAndDispose, - + _ExpressionRunnerCreate, _ExpressionRunnerSetLocalValue, _ExpressionRunnerSetGlobalValue, _ExpressionRunnerRunAndDispose, - + _BinaryenGetOptimizeLevel, _BinaryenSetOptimizeLevel, _BinaryenGetShrinkLevel, @@ -621,9 +628,9 @@ export const { _BinaryenSetOneCallerInlineMaxSize, _BinaryenGetAllowInliningFunctionsWithLoops, _BinaryenSetAllowInliningFunctionsWithLoops, - + // Helpers - + _malloc, _free, __i32_store8, @@ -638,7 +645,7 @@ export const { __i32_load, __f32_load, __f64_load - + } = binaryen; export default binaryen; diff --git a/src/module.ts b/src/module.ts index e461220557..944460d342 100644 --- a/src/module.ts +++ b/src/module.ts @@ -58,12 +58,12 @@ export namespace TypeRef { export const F32: TypeRef = 4 /* _BinaryenTypeFloat32 */; export const F64: TypeRef = 5 /* _BinaryenTypeFloat64 */; export const V128: TypeRef = 6 /* _BinaryenTypeVec128 */; - export const Funcref: TypeRef = 7 /* _BinaryenTypeFuncref */; - export const Externref: TypeRef = 8 /* _BinaryenTypeExternref */; - export const Anyref: TypeRef = 8 /* _BinaryenTypeAnyref */; - export const Eqref: TypeRef = 9 /* _BinaryenTypeEqref */; - export const I31ref: TypeRef = 10 /* _BinaryenTypeI31ref */; - export const Dataref: TypeRef = 11 /* _BinaryenTypeDataref */; + export const Funcref: TypeRef = binaryen._BinaryenTypeFuncref(); + export const Externref: TypeRef = binaryen._BinaryenTypeExternref(); + export const Anyref: TypeRef = binaryen._BinaryenTypeAnyref(); + export const Eqref: TypeRef = binaryen._BinaryenTypeEqref(); + export const I31ref: TypeRef = binaryen._BinaryenTypeI31ref(); + export const Dataref: TypeRef = binaryen._BinaryenTypeDataref(); export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; } @@ -85,7 +85,7 @@ export enum FeatureFlags { FunctionReferences = 4096 /* _BinaryenFeatureTypedFunctionReferences */, RelaxedSIMD = 16384 /* _BinaryenFeatureRelaxedSIMD */, ExtendedConst = 32768 /* _BinaryenFeatureExtendedConst */, - All = 57343 /* _BinaryenFeatureAll */ + All = 122879 /* _BinaryenFeatureAll */ } /** Binaryen expression id constants. */ From 4212bcd9aaf03d032cf5d566de700f7b39c2e115 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 08:42:22 +0300 Subject: [PATCH 02/38] fix --- scripts/update-constants.js | 4 ++-- src/module.ts | 20 ++++++++++++++------ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 7a7f3ea666..1ef739d0f2 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,8 +11,8 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { - // ignore binaryen types which should cacheed in runtime - if (val.startsWith("binaryen._BinaryenType")) { + // ignore binaryen types which should cached in runtime + if (val.match(/\bignore\b/)) { return $0; } var match = val.match(/\b(_(?:Binaryen|Relooper|ExpressionRunner)\w+)\b/); diff --git a/src/module.ts b/src/module.ts index 944460d342..b6e36757f1 100644 --- a/src/module.ts +++ b/src/module.ts @@ -58,12 +58,12 @@ export namespace TypeRef { export const F32: TypeRef = 4 /* _BinaryenTypeFloat32 */; export const F64: TypeRef = 5 /* _BinaryenTypeFloat64 */; export const V128: TypeRef = 6 /* _BinaryenTypeVec128 */; - export const Funcref: TypeRef = binaryen._BinaryenTypeFuncref(); - export const Externref: TypeRef = binaryen._BinaryenTypeExternref(); - export const Anyref: TypeRef = binaryen._BinaryenTypeAnyref(); - export const Eqref: TypeRef = binaryen._BinaryenTypeEqref(); - export const I31ref: TypeRef = binaryen._BinaryenTypeI31ref(); - export const Dataref: TypeRef = binaryen._BinaryenTypeDataref(); + export let Funcref: TypeRef = -1 /* ignore */; + export let Externref: TypeRef = -1 /* ignore */; + export let Anyref: TypeRef = -1 /* ignore */; + export let Eqref: TypeRef = -1 /* ignore */; + export let I31ref: TypeRef = -1 /* ignore */; + export let Dataref: TypeRef = -1 /* ignore */; export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; } @@ -1102,6 +1102,14 @@ export class Module { ) { assert(sizeType == TypeRef.I32 || sizeType == TypeRef.I64); this.lit = binaryen._malloc(binaryen._BinaryenSizeofLiteral()); + + // cache heap types + TypeRef.Funcref = binaryen._BinaryenTypeFuncref(); + TypeRef.Externref = binaryen._BinaryenTypeExternref(); + TypeRef.Anyref = binaryen._BinaryenTypeAnyref(); + TypeRef.Eqref = binaryen._BinaryenTypeEqref(); + TypeRef.I31ref = binaryen._BinaryenTypeI31ref(); + TypeRef.Dataref = binaryen._BinaryenTypeDataref(); } private lit: usize; From 90d2d8fefea259dda4dcf66551fcf3b7c665a6a7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 08:44:09 +0300 Subject: [PATCH 03/38] refactor update-constants --- scripts/update-constants.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 1ef739d0f2..2660345af5 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -12,7 +12,7 @@ var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { // ignore binaryen types which should cached in runtime - if (val.match(/\bignore\b/)) { + if (/\bignore\b/.test(val)) { return $0; } var match = val.match(/\b(_(?:Binaryen|Relooper|ExpressionRunner)\w+)\b/); From d8a55bf17ae35eec634422ef40e367d2a4053699 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 09:03:27 +0300 Subject: [PATCH 04/38] add gufa pass --- src/module.ts | 1 + tests/compiler/assert-nonnull.release.wat | 75 +--- tests/compiler/bindings/esm.release.wat | 8 +- tests/compiler/bindings/raw.release.wat | 8 +- tests/compiler/call-optional.release.wat | 2 +- .../class-static-function.release.wat | 11 +- tests/compiler/function-call.release.wat | 28 +- .../compiler/function-expression.release.wat | 8 +- tests/compiler/function-types.release.wat | 8 +- tests/compiler/inlining.release.wat | 13 +- tests/compiler/loop-flow.release.wat | 22 +- tests/compiler/number.release.wat | 78 ++-- tests/compiler/resolve-binary.release.wat | 56 +-- .../resolve-elementaccess.release.wat | 346 +++++++++--------- tests/compiler/resolve-ternary.release.wat | 94 +++-- tests/compiler/std/string.release.wat | 322 ++++++++-------- tests/compiler/templateliteral.release.wat | 322 ++++++++-------- 17 files changed, 630 insertions(+), 772 deletions(-) diff --git a/src/module.ts b/src/module.ts index b6e36757f1..df5967652f 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2365,6 +2365,7 @@ export class Module { passes.push("licm"); passes.push("merge-locals"); passes.push("reorder-locals"); + passes.push("gufa-optimizing"); passes.push("dae-optimizing"); } passes.push("optimize-instructions"); diff --git a/tests/compiler/assert-nonnull.release.wat b/tests/compiler/assert-nonnull.release.wat index 8f517ab174..24d87c1c20 100644 --- a/tests/compiler/assert-nonnull.release.wat +++ b/tests/compiler/assert-nonnull.release.wat @@ -536,10 +536,8 @@ local.get $0 i32.load call_indirect $0 (type $none_=>_i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer + drop + unreachable ) (func $export:assert-nonnull/testFn2 (param $0 i32) (result i32) (local $1 i32) @@ -584,15 +582,8 @@ local.get $0 i32.load call_indirect $0 (type $none_=>_i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return + drop + unreachable end i32.const 17808 i32.const 17856 @@ -625,35 +616,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 i32.const 0 i32.store - local.get $1 local.get $0 i32.load call_indirect $0 (type $none_=>_i32) - local.tee $0 - i32.store - local.get $0 - i32.eqz - if - i32.const 1056 - i32.const 1120 - i32.const 44 - i32.const 10 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - return + drop + unreachable end i32.const 17808 i32.const 17856 @@ -685,10 +654,8 @@ i32.load offset=4 i32.load call_indirect $0 (type $none_=>_i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer + drop + unreachable ) (func $export:assert-nonnull/testObjRet (param $0 i32) (result i32) (local $1 i32) @@ -714,36 +681,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 i32.const 0 i32.store - local.get $1 local.get $0 i32.load offset=4 i32.load call_indirect $0 (type $none_=>_i32) - local.tee $0 - i32.store - local.get $0 - i32.eqz - if - i32.const 1056 - i32.const 1120 - i32.const 52 - i32.const 10 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - return + drop + unreachable end i32.const 17808 i32.const 17856 diff --git a/tests/compiler/bindings/esm.release.wat b/tests/compiler/bindings/esm.release.wat index d46f201b4b..a5b58d7702 100644 --- a/tests/compiler/bindings/esm.release.wat +++ b/tests/compiler/bindings/esm.release.wat @@ -139,12 +139,8 @@ (local $1 i32) i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__visit - global.get $bindings/esm/mutableStringGlobal - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + i32.const 1088 + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1552 call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1248 diff --git a/tests/compiler/bindings/raw.release.wat b/tests/compiler/bindings/raw.release.wat index 92ff37695f..ca2ce46f08 100644 --- a/tests/compiler/bindings/raw.release.wat +++ b/tests/compiler/bindings/raw.release.wat @@ -149,12 +149,8 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__visit - global.get $bindings/esm/mutableStringGlobal - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + i32.const 1088 + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 diff --git a/tests/compiler/call-optional.release.wat b/tests/compiler/call-optional.release.wat index 1ad83abdcf..f17519ba7b 100644 --- a/tests/compiler/call-optional.release.wat +++ b/tests/compiler/call-optional.release.wat @@ -31,8 +31,8 @@ i32.const -2 local.set $2 end - local.get $0 local.get $1 + i32.const 3 i32.add local.get $2 i32.add diff --git a/tests/compiler/class-static-function.release.wat b/tests/compiler/class-static-function.release.wat index b63a68e416..cccc3f51b3 100644 --- a/tests/compiler/class-static-function.release.wat +++ b/tests/compiler/class-static-function.release.wat @@ -43,16 +43,7 @@ i32.const 1056 i32.load call_indirect $0 (type $none_=>_i32) - i32.const 42 - i32.ne - if - i32.const 0 - i32.const 1088 - i32.const 11 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop global.get $~lib/memory/__stack_pointer i32.const 4 i32.add diff --git a/tests/compiler/function-call.release.wat b/tests/compiler/function-call.release.wat index e99cea5dce..fa99233346 100644 --- a/tests/compiler/function-call.release.wat +++ b/tests/compiler/function-call.release.wat @@ -65,7 +65,7 @@ i32.add ) (func $start:function-call~fn2|4 (param $0 i32) (result i32) - local.get $0 + i32.const 1 ) (func $~lib/rt/itcms/visitRoots (local $0 i32) @@ -1267,9 +1267,7 @@ nop ) (func $function-call/Foo#fnRet (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - local.get $1 - local.get $2 - i32.add + i32.const 3 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -1363,16 +1361,7 @@ i32.const 1248 i32.load call_indirect $0 (type $i32_=>_i32) - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1152 - i32.const 20 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop memory.size i32.const 16 i32.shl @@ -1439,16 +1428,7 @@ i32.const 1712 i32.load call_indirect $0 (type $i32_=>_i32) - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1152 - i32.const 33 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop global.get $~lib/memory/__stack_pointer global.get $function-call/foo local.tee $0 diff --git a/tests/compiler/function-expression.release.wat b/tests/compiler/function-expression.release.wat index 1b48f86156..bb718da40a 100644 --- a/tests/compiler/function-expression.release.wat +++ b/tests/compiler/function-expression.release.wat @@ -87,12 +87,10 @@ i32.const 1 ) (func $start:function-expression~anonymous|4 (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.add + i32.const 3 ) (func $start:function-expression~anonymous|5 (param $0 i32) (param $1 i32) (result i32) - local.get $0 + i32.const 1 ) (func $start:function-expression~anonymous|6 (param $0 i32) (param $1 i32) (result i32) i32.const 42 @@ -1192,7 +1190,7 @@ end ) (func $function-expression/semanticallyAnonymous~fnDecl|0 (param $0 i64) (result i64) - local.get $0 + unreachable ) (func $function-expression/semanticallyAnonymous (local $0 i32) diff --git a/tests/compiler/function-types.release.wat b/tests/compiler/function-types.release.wat index 099f353cbb..f7b9d32a79 100644 --- a/tests/compiler/function-types.release.wat +++ b/tests/compiler/function-types.release.wat @@ -29,14 +29,10 @@ i32.add ) (func $function-types/makeAdder~anonymous|0 (param $0 i64) (param $1 i64) (result i64) - local.get $0 - local.get $1 - i64.add + i64.const 30 ) (func $function-types/makeAdder~anonymous|0 (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - f64.add + f64.const 4 ) (func $~start (local $0 i32) diff --git a/tests/compiler/inlining.release.wat b/tests/compiler/inlining.release.wat index 46aa5b6879..9ca304b81a 100644 --- a/tests/compiler/inlining.release.wat +++ b/tests/compiler/inlining.release.wat @@ -45,7 +45,7 @@ i32.const 3 ) (func $inlining/func_fe~anonymous|0 (param $0 i32) (result i32) - local.get $0 + i32.const 2 ) (func $~lib/rt/itcms/visitRoots (local $0 i32) @@ -1444,16 +1444,7 @@ i32.const 1104 i32.load call_indirect $0 (type $i32_=>_i32) - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 68 - i32.const 3 - call $~lib/builtins/abort - unreachable - end + drop global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 123 diff --git a/tests/compiler/loop-flow.release.wat b/tests/compiler/loop-flow.release.wat index 86b6f8db31..0c21d9c706 100644 --- a/tests/compiler/loop-flow.release.wat +++ b/tests/compiler/loop-flow.release.wat @@ -128,28 +128,10 @@ (func $~start i32.const 1 call $loop-flow/whileAny - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 29 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop i32.const 1 call $loop-flow/forAny - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 59 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop i32.const 1 call $loop-flow/doAny i32.const 1 diff --git a/tests/compiler/number.release.wat b/tests/compiler/number.release.wat index 546d9d890b..7aefa3b6c7 100644 --- a/tests/compiler/number.release.wat +++ b/tests/compiler/number.release.wat @@ -1757,8 +1757,8 @@ (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) (local $9 i64) (local $10 i32) @@ -1782,7 +1782,7 @@ local.tee $12 local.get $1 i64.and - local.set $7 + local.set $6 local.get $1 local.get $0 i64.shr_u @@ -1833,9 +1833,9 @@ i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -1851,7 +1851,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -1859,7 +1859,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000000000 i32.rem_u @@ -1869,7 +1869,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100000000 i32.rem_u @@ -1879,7 +1879,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10000000 i32.rem_u @@ -1889,7 +1889,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000000 i32.rem_u @@ -1899,7 +1899,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100000 i32.rem_u @@ -1909,7 +1909,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10000 i32.rem_u @@ -1919,7 +1919,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000 i32.rem_u @@ -1929,7 +1929,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100 i32.rem_u @@ -1939,7 +1939,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10 i32.rem_u @@ -1947,55 +1947,55 @@ br $break|1 end local.get $5 - local.set $6 + local.set $2 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $6 + local.set $2 end + local.get $2 local.get $4 - local.get $6 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 3456 i32.add - local.get $6 + local.get $2 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $3 local.get $5 i64.extend_i32_u local.get $10 i64.extend_i32_s i64.shl - local.get $7 + local.get $6 i64.add local.tee $0 i64.ge_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 4384 @@ -2030,11 +2030,11 @@ local.get $0 local.get $1 i64.add - local.tee $7 + local.tee $6 local.get $9 i64.sub i64.gt_u - local.get $7 + local.get $6 local.get $9 i64.lt_u i32.or @@ -2067,7 +2067,7 @@ i64.const 10 i64.mul local.set $3 - local.get $7 + local.get $6 i64.const 10 i64.mul local.tee $0 @@ -2082,11 +2082,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 3456 @@ -2099,27 +2099,27 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $0 local.get $12 i64.and - local.tee $7 + local.tee $6 local.get $3 i64.ge_u br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $7 + local.get $6 local.set $0 local.get $9 i32.const 0 - local.get $2 + local.get $8 i32.sub i32.const 2 i32.shl @@ -2153,12 +2153,12 @@ local.get $0 local.get $11 i64.add - local.tee $7 + local.tee $6 local.get $1 i64.sub i64.gt_u local.get $1 - local.get $7 + local.get $6 i64.gt_u i32.or else diff --git a/tests/compiler/resolve-binary.release.wat b/tests/compiler/resolve-binary.release.wat index c82f00f790..156fc266e8 100644 --- a/tests/compiler/resolve-binary.release.wat +++ b/tests/compiler/resolve-binary.release.wat @@ -2017,9 +2017,9 @@ i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -2035,7 +2035,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -2043,7 +2043,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 1000000000 i32.rem_u @@ -2053,7 +2053,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 100000000 i32.rem_u @@ -2063,7 +2063,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 10000000 i32.rem_u @@ -2073,7 +2073,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 1000000 i32.rem_u @@ -2083,7 +2083,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 100000 i32.rem_u @@ -2093,7 +2093,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 10000 i32.rem_u @@ -2103,7 +2103,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 1000 i32.rem_u @@ -2113,7 +2113,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 100 i32.rem_u @@ -2123,7 +2123,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $7 + local.set $2 local.get $5 i32.const 10 i32.rem_u @@ -2131,39 +2131,39 @@ br $break|1 end local.get $5 - local.set $7 + local.set $2 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $7 + local.set $2 end + local.get $2 local.get $4 - local.get $7 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 9728 i32.add - local.get $7 + local.get $2 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $3 local.get $5 i64.extend_i32_u @@ -2176,10 +2176,10 @@ i64.ge_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 10656 @@ -2266,11 +2266,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 9728 @@ -2283,10 +2283,10 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $0 local.get $12 i64.and @@ -2296,14 +2296,14 @@ br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K local.get $6 local.set $0 local.get $9 i32.const 0 - local.get $2 + local.get $8 i32.sub i32.const 2 i32.shl diff --git a/tests/compiler/resolve-elementaccess.release.wat b/tests/compiler/resolve-elementaccess.release.wat index 42b1535f70..19851b2ccc 100644 --- a/tests/compiler/resolve-elementaccess.release.wat +++ b/tests/compiler/resolve-elementaccess.release.wat @@ -1621,85 +1621,85 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $9 i32) + (local $10 i64) (local $11 i64) (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $11 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $12 i64.const 1 i64.sub - local.tee $12 + local.tee $10 local.get $1 i64.and - local.set $7 + local.set $6 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -1715,157 +1715,157 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $5 + local.get $2 i32.const 1000000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 - local.set $6 - i32.const 0 + local.get $2 local.set $5 + i32.const 0 + local.set $2 br $break|1 end i32.const 0 - local.set $6 + local.set $5 end local.get $4 - local.get $6 + local.get $5 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $6 + local.get $5 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 - local.get $3 - local.get $5 + local.set $8 + local.get $2 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $7 + local.get $6 i64.add local.tee $0 - i64.ge_u + local.get $3 + i64.le_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 2704 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -1874,12 +1874,12 @@ i32.shl i32.const 1774 i32.add - local.tee $5 + local.tee $2 i32.load16_u - local.set $2 + local.set $5 loop $while-continue|3 local.get $0 - local.get $9 + local.get $11 i64.lt_u local.get $3 local.get $0 @@ -1888,28 +1888,28 @@ i64.ge_u i32.and if (result i32) - local.get $9 + local.get $11 local.get $0 i64.sub local.get $0 local.get $1 i64.add - local.tee $7 - local.get $9 + local.tee $6 + local.get $11 i64.sub i64.gt_u - local.get $7 - local.get $9 + local.get $6 + local.get $11 i64.lt_u i32.or else i32.const 0 end if - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $2 + local.set $5 local.get $0 local.get $1 i64.add @@ -1917,8 +1917,8 @@ br $while-continue|3 end end - local.get $5 local.get $2 + local.get $5 i32.store16 local.get $4 return @@ -1926,16 +1926,16 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $3 i64.const 10 i64.mul local.set $3 - local.get $7 + local.get $6 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -1946,11 +1946,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 1776 @@ -1963,87 +1963,87 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 + local.get $3 local.get $0 - local.get $12 + local.get $10 i64.and - local.tee $7 - local.get $3 - i64.ge_u + local.tee $6 + i64.le_u br_if $while-continue|4 - end - global.get $~lib/util/number/_K - local.get $2 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $0 - local.get $9 - i32.const 0 - local.get $2 - i32.sub - i32.const 2 - i32.shl - i32.const 2704 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 1774 - i32.add - local.tee $5 - i32.load16_u - local.set $2 - loop $while-continue|6 - local.get $0 - local.get $1 - i64.lt_u - local.get $3 - local.get $0 - i64.sub + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $6 + local.set $0 local.get $11 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 2704 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 1774 + i32.add + local.tee $2 + i32.load16_u + local.set $5 + loop $while-continue|6 local.get $0 - local.get $11 - i64.add - local.tee $7 - local.get $1 - i64.sub - i64.gt_u local.get $1 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $2 - i32.const 1 - i32.sub - local.set $2 + i64.lt_u + local.get $3 local.get $0 - local.get $11 - i64.add - local.set $0 - br $while-continue|6 + i64.sub + local.get $12 + i64.ge_u + i32.and + if (result i32) + local.get $1 + local.get $0 + i64.sub + local.get $0 + local.get $12 + i64.add + local.tee $6 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $6 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $0 + local.get $12 + i64.add + local.set $0 + br $while-continue|6 + end end + local.get $2 + local.get $5 + i32.store16 + local.get $4 end - local.get $5 - local.get $2 - i32.store16 - local.get $4 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3105,26 +3105,16 @@ (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $folding-inner0 $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid end return end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end unreachable diff --git a/tests/compiler/resolve-ternary.release.wat b/tests/compiler/resolve-ternary.release.wat index f6a158d7fb..72098b78e3 100644 --- a/tests/compiler/resolve-ternary.release.wat +++ b/tests/compiler/resolve-ternary.release.wat @@ -1635,8 +1635,8 @@ (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) (local $9 i64) (local $10 i32) @@ -1660,7 +1660,7 @@ local.tee $12 local.get $1 i64.and - local.set $7 + local.set $6 local.get $1 local.get $0 i64.shr_u @@ -1711,9 +1711,9 @@ i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -1729,7 +1729,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -1737,7 +1737,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000000000 i32.rem_u @@ -1747,7 +1747,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100000000 i32.rem_u @@ -1757,7 +1757,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10000000 i32.rem_u @@ -1767,7 +1767,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000000 i32.rem_u @@ -1777,7 +1777,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100000 i32.rem_u @@ -1787,7 +1787,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10000 i32.rem_u @@ -1797,7 +1797,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 1000 i32.rem_u @@ -1807,7 +1807,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 100 i32.rem_u @@ -1817,7 +1817,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $6 + local.set $2 local.get $5 i32.const 10 i32.rem_u @@ -1825,55 +1825,55 @@ br $break|1 end local.get $5 - local.set $6 + local.set $2 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $6 + local.set $2 end + local.get $2 local.get $4 - local.get $6 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 3472 i32.add - local.get $6 + local.get $2 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $3 local.get $5 i64.extend_i32_u local.get $10 i64.extend_i32_s i64.shl - local.get $7 + local.get $6 i64.add local.tee $0 i64.ge_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 4400 @@ -1908,11 +1908,11 @@ local.get $0 local.get $1 i64.add - local.tee $7 + local.tee $6 local.get $9 i64.sub i64.gt_u - local.get $7 + local.get $6 local.get $9 i64.lt_u i32.or @@ -1945,7 +1945,7 @@ i64.const 10 i64.mul local.set $3 - local.get $7 + local.get $6 i64.const 10 i64.mul local.tee $0 @@ -1960,11 +1960,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 3472 @@ -1977,27 +1977,27 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 local.get $0 local.get $12 i64.and - local.tee $7 + local.tee $6 local.get $3 i64.ge_u br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $7 + local.get $6 local.set $0 local.get $9 i32.const 0 - local.get $2 + local.get $8 i32.sub i32.const 2 i32.shl @@ -2031,12 +2031,12 @@ local.get $0 local.get $11 i64.add - local.tee $7 + local.tee $6 local.get $1 i64.sub i64.gt_u local.get $1 - local.get $7 + local.get $6 i64.gt_u i32.or else @@ -2380,24 +2380,16 @@ end ) (func $start:resolve-ternary~anonymous|0 (param $0 i32) (result i32) - local.get $0 - i32.const 1 - i32.add + i32.const 2 ) (func $start:resolve-ternary~anonymous|1 (param $0 i32) (result i32) - local.get $0 - i32.const 2 - i32.add + i32.const 3 ) (func $resolve-ternary/g1 (param $0 i32) (result i32) - local.get $0 - i32.const 3 - i32.add + i32.const 4 ) (func $resolve-ternary/g2 (param $0 i32) (result i32) - local.get $0 - i32.const 4 - i32.add + i32.const 5 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid diff --git a/tests/compiler/std/string.release.wat b/tests/compiler/std/string.release.wat index 34f0af40e5..1ddc0bd6e9 100644 --- a/tests/compiler/std/string.release.wat +++ b/tests/compiler/std/string.release.wat @@ -5247,85 +5247,85 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $9 i32) + (local $10 i64) (local $11 i64) (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $11 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $12 i64.const 1 i64.sub - local.tee $12 + local.tee $10 local.get $1 i64.and - local.set $7 + local.set $6 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -5341,157 +5341,157 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $5 + local.get $2 i32.const 1000000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 - local.set $6 - i32.const 0 + local.get $2 local.set $5 + i32.const 0 + local.set $2 br $break|1 end i32.const 0 - local.set $6 + local.set $5 end local.get $4 - local.get $6 + local.get $5 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 23136 i32.add - local.get $6 + local.get $5 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 - local.get $3 - local.get $5 + local.set $8 + local.get $2 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $7 + local.get $6 i64.add local.tee $0 - i64.ge_u + local.get $3 + i64.le_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 24064 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -5500,12 +5500,12 @@ i32.shl i32.const 23134 i32.add - local.tee $5 + local.tee $2 i32.load16_u - local.set $2 + local.set $5 loop $while-continue|3 local.get $0 - local.get $9 + local.get $11 i64.lt_u local.get $3 local.get $0 @@ -5514,28 +5514,28 @@ i64.ge_u i32.and if (result i32) - local.get $9 + local.get $11 local.get $0 i64.sub local.get $0 local.get $1 i64.add - local.tee $7 - local.get $9 + local.tee $6 + local.get $11 i64.sub i64.gt_u - local.get $7 - local.get $9 + local.get $6 + local.get $11 i64.lt_u i32.or else i32.const 0 end if - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $2 + local.set $5 local.get $0 local.get $1 i64.add @@ -5543,8 +5543,8 @@ br $while-continue|3 end end - local.get $5 local.get $2 + local.get $5 i32.store16 local.get $4 return @@ -5552,16 +5552,16 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $3 i64.const 10 i64.mul local.set $3 - local.get $7 + local.get $6 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -5572,11 +5572,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 23136 @@ -5589,87 +5589,87 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 + local.get $3 local.get $0 - local.get $12 + local.get $10 i64.and - local.tee $7 - local.get $3 - i64.ge_u + local.tee $6 + i64.le_u br_if $while-continue|4 - end - global.get $~lib/util/number/_K - local.get $2 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $0 - local.get $9 - i32.const 0 - local.get $2 - i32.sub - i32.const 2 - i32.shl - i32.const 24064 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 23134 - i32.add - local.tee $5 - i32.load16_u - local.set $2 - loop $while-continue|6 - local.get $0 - local.get $1 - i64.lt_u - local.get $3 - local.get $0 - i64.sub + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $6 + local.set $0 local.get $11 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 24064 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 23134 + i32.add + local.tee $2 + i32.load16_u + local.set $5 + loop $while-continue|6 local.get $0 - local.get $11 - i64.add - local.tee $7 local.get $1 - i64.sub - i64.gt_u - local.get $1 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $2 - i32.const 1 - i32.sub - local.set $2 + i64.lt_u + local.get $3 local.get $0 - local.get $11 - i64.add - local.set $0 - br $while-continue|6 + i64.sub + local.get $12 + i64.ge_u + i32.and + if (result i32) + local.get $1 + local.get $0 + i64.sub + local.get $0 + local.get $12 + i64.add + local.tee $6 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $6 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $0 + local.get $12 + i64.add + local.set $0 + br $while-continue|6 + end end + local.get $2 + local.get $5 + i32.store16 + local.get $4 end - local.get $5 - local.get $2 - i32.store16 - local.get $4 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) diff --git a/tests/compiler/templateliteral.release.wat b/tests/compiler/templateliteral.release.wat index ffeef168a2..99c7c63703 100644 --- a/tests/compiler/templateliteral.release.wat +++ b/tests/compiler/templateliteral.release.wat @@ -2174,85 +2174,85 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $9 i32) + (local $10 i64) (local $11 i64) (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $11 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $12 i64.const 1 i64.sub - local.tee $12 + local.tee $10 local.get $1 i64.and - local.set $7 + local.set $6 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $8 loop $while-continue|0 - local.get $2 + local.get $8 i32.const 0 i32.gt_s if @@ -2268,157 +2268,157 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $5 + local.get $2 i32.const 1000000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 1000 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 1000 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 100 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 100 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 + local.get $2 i32.const 10 i32.div_u - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.const 10 i32.rem_u - local.set $5 + local.set $2 br $break|1 end - local.get $5 - local.set $6 - i32.const 0 + local.get $2 local.set $5 + i32.const 0 + local.set $2 br $break|1 end i32.const 0 - local.set $6 + local.set $5 end local.get $4 - local.get $6 + local.get $5 i32.or if local.get $4 - local.tee $8 + local.tee $7 i32.const 1 i32.add local.set $4 - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $6 + local.get $5 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 - local.get $3 - local.get $5 + local.set $8 + local.get $2 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $7 + local.get $6 i64.add local.tee $0 - i64.ge_u + local.get $3 + i64.le_u if global.get $~lib/util/number/_K - local.get $2 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $2 + local.get $8 i32.const 2 i32.shl i32.const 4848 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -2427,12 +2427,12 @@ i32.shl i32.const 3918 i32.add - local.tee $5 + local.tee $2 i32.load16_u - local.set $2 + local.set $5 loop $while-continue|3 local.get $0 - local.get $9 + local.get $11 i64.lt_u local.get $3 local.get $0 @@ -2441,28 +2441,28 @@ i64.ge_u i32.and if (result i32) - local.get $9 + local.get $11 local.get $0 i64.sub local.get $0 local.get $1 i64.add - local.tee $7 - local.get $9 + local.tee $6 + local.get $11 i64.sub i64.gt_u - local.get $7 - local.get $9 + local.get $6 + local.get $11 i64.lt_u i32.or else i32.const 0 end if - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $2 + local.set $5 local.get $0 local.get $1 i64.add @@ -2470,8 +2470,8 @@ br $while-continue|3 end end - local.get $5 local.get $2 + local.get $5 i32.store16 local.get $4 return @@ -2479,16 +2479,16 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $3 i64.const 10 i64.mul local.set $3 - local.get $7 + local.get $6 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -2499,11 +2499,11 @@ i64.ne if local.get $4 - local.tee $5 + local.tee $2 i32.const 1 i32.add local.set $4 - local.get $5 + local.get $2 i32.const 1 i32.shl i32.const 3920 @@ -2516,87 +2516,87 @@ i32.add i32.store16 end - local.get $2 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 + local.get $3 local.get $0 - local.get $12 + local.get $10 i64.and - local.tee $7 - local.get $3 - i64.ge_u + local.tee $6 + i64.le_u br_if $while-continue|4 - end - global.get $~lib/util/number/_K - local.get $2 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $0 - local.get $9 - i32.const 0 - local.get $2 - i32.sub - i32.const 2 - i32.shl - i32.const 4848 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 3918 - i32.add - local.tee $5 - i32.load16_u - local.set $2 - loop $while-continue|6 - local.get $0 - local.get $1 - i64.lt_u - local.get $3 - local.get $0 - i64.sub + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $6 + local.set $0 local.get $11 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 4848 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 3918 + i32.add + local.tee $2 + i32.load16_u + local.set $5 + loop $while-continue|6 local.get $0 - local.get $11 - i64.add - local.tee $7 - local.get $1 - i64.sub - i64.gt_u local.get $1 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $2 - i32.const 1 - i32.sub - local.set $2 + i64.lt_u + local.get $3 local.get $0 - local.get $11 - i64.add - local.set $0 - br $while-continue|6 + i64.sub + local.get $12 + i64.ge_u + i32.and + if (result i32) + local.get $1 + local.get $0 + i64.sub + local.get $0 + local.get $12 + i64.add + local.tee $6 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $6 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $0 + local.get $12 + i64.add + local.set $0 + br $while-continue|6 + end end + local.get $2 + local.get $5 + i32.store16 + local.get $4 end - local.get $5 - local.get $2 - i32.store16 - local.get $4 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) From 66d8b65f14f05b92752cbf5904ec6c9acdfcedc1 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 09:10:27 +0300 Subject: [PATCH 05/38] better --- src/module.ts | 2 +- tests/compiler/inlining.release.wat | 3 +- tests/compiler/loop-flow.release.wat | 11 +- tests/compiler/std-wasi/console.release.wat | 4 +- tests/compiler/std-wasi/crypto.release.wat | 4 +- tests/compiler/std-wasi/process.release.wat | 4 +- tests/compiler/std/staticarray.release.wat | 6 +- .../compiler/std/string-encoding.release.wat | 4 +- tests/compiler/std/typedarray.release.wat | 8630 ++++++++--------- tests/compiler/wasi/abort.release.wat | 4 +- tests/compiler/wasi/trace.release.wat | 4 +- 11 files changed, 4331 insertions(+), 4345 deletions(-) diff --git a/src/module.ts b/src/module.ts index df5967652f..54e83ad5ac 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2355,6 +2355,7 @@ export class Module { passes.push("merge-blocks"); passes.push("precompute-propagate"); passes.push("simplify-globals-optimizing"); + passes.push("gufa-optimizing"); } if (optimizeLevel >= 3) { passes.push("simplify-locals-nostructure"); @@ -2365,7 +2366,6 @@ export class Module { passes.push("licm"); passes.push("merge-locals"); passes.push("reorder-locals"); - passes.push("gufa-optimizing"); passes.push("dae-optimizing"); } passes.push("optimize-instructions"); diff --git a/tests/compiler/inlining.release.wat b/tests/compiler/inlining.release.wat index 9ca304b81a..4e9da8192b 100644 --- a/tests/compiler/inlining.release.wat +++ b/tests/compiler/inlining.release.wat @@ -1446,10 +1446,9 @@ call_indirect $0 (type $i32_=>_i32) drop global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 123 i32.store - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/loop-flow.release.wat b/tests/compiler/loop-flow.release.wat index 0c21d9c706..82218b6de4 100644 --- a/tests/compiler/loop-flow.release.wat +++ b/tests/compiler/loop-flow.release.wat @@ -134,15 +134,6 @@ drop i32.const 1 call $loop-flow/doAny - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 83 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + drop ) ) diff --git a/tests/compiler/std-wasi/console.release.wat b/tests/compiler/std-wasi/console.release.wat index 5da6b38550..216c352ebc 100644 --- a/tests/compiler/std-wasi/console.release.wat +++ b/tests/compiler/std-wasi/console.release.wat @@ -400,12 +400,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $2of2 + block $0of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $2of2 $2of2 $2of2 $outOfRange + br_table $0of2 $0of2 $0of2 $outOfRange end unreachable end diff --git a/tests/compiler/std-wasi/crypto.release.wat b/tests/compiler/std-wasi/crypto.release.wat index 752aa3c76f..0ab8ac506e 100644 --- a/tests/compiler/std-wasi/crypto.release.wat +++ b/tests/compiler/std-wasi/crypto.release.wat @@ -239,12 +239,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $2of2 + block $0of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $2of2 $2of2 $2of2 $outOfRange + br_table $0of2 $0of2 $0of2 $outOfRange end unreachable end diff --git a/tests/compiler/std-wasi/process.release.wat b/tests/compiler/std-wasi/process.release.wat index b67d9c41f6..1a5414f8ab 100644 --- a/tests/compiler/std-wasi/process.release.wat +++ b/tests/compiler/std-wasi/process.release.wat @@ -391,12 +391,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $2of2 + block $0of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $2of2 $2of2 $2of2 $outOfRange + br_table $0of2 $0of2 $0of2 $outOfRange end unreachable end diff --git a/tests/compiler/std/staticarray.release.wat b/tests/compiler/std/staticarray.release.wat index 4923e6b180..604fd1cd6c 100644 --- a/tests/compiler/std/staticarray.release.wat +++ b/tests/compiler/std/staticarray.release.wat @@ -4284,11 +4284,7 @@ i32.const 2 i32.shr_u local.tee $1 - i32.const 0 - i32.lt_u - i32.const 1 - local.get $1 - select + i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf34 local.get $1 i32.const 1 diff --git a/tests/compiler/std/string-encoding.release.wat b/tests/compiler/std/string-encoding.release.wat index 062dc17baa..7c9a24b3b1 100644 --- a/tests/compiler/std/string-encoding.release.wat +++ b/tests/compiler/std/string-encoding.release.wat @@ -1615,13 +1615,13 @@ local.get $2 ) (func $~lib/string/String.UTF8.encode@varargs (param $0 i32) (param $1 i32) (result i32) - block $2of2 + block $1of2 block $0of2 block $outOfRange global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of2 $2of2 $2of2 $outOfRange + br_table $0of2 $1of2 $1of2 $outOfRange end unreachable end diff --git a/tests/compiler/std/typedarray.release.wat b/tests/compiler/std/typedarray.release.wat index 8dfa871504..d465d37d90 100644 --- a/tests/compiler/std/typedarray.release.wat +++ b/tests/compiler/std/typedarray.release.wat @@ -42658,18 +42658,18 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 f32) + (local $4 i64) + (local $5 f32) + (local $6 f64) (local $7 i32) - (local $8 f64) + (local $8 i32) (local $9 i32) - (local $10 i64) + (local $10 i32) (local $11 i32) - (local $12 i32) - (local $13 f64) - (local $14 f32) - (local $15 i64) + (local $12 i64) + (local $13 f32) + (local $14 f64) + (local $15 i32) (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 @@ -42758,21 +42758,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -42786,9 +42786,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub if @@ -42799,7 +42799,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 12 i32.ne @@ -42811,7 +42811,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -42824,7 +42824,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -42837,7 +42837,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -42851,13 +42851,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#subarray - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -42871,9 +42871,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub i32.const 4 @@ -42886,7 +42886,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 4 i32.ne @@ -42898,7 +42898,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -42914,48 +42914,48 @@ global.get $~lib/memory/__stack_pointer i32.const 8 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 2 f64.const 7 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 3 f64.const 6 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 5 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 6 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $7 i32.const 7 f64.const 8 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 2 i32.const 6 call $~lib/typedarray/Float64Array#subarray - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u @@ -42969,9 +42969,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub i32.const 16 @@ -42984,7 +42984,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 32 i32.ne @@ -42998,16 +42998,16 @@ end i32.const 0 global.set $~argumentsLength - local.get $2 + local.get $7 call $~lib/typedarray/Float64Array#sort@varargs drop - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.eq if (result i32) - local.get $2 + local.get $7 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -43016,7 +43016,7 @@ i32.const 0 end if (result i32) - local.get $2 + local.get $7 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -43025,7 +43025,7 @@ i32.const 0 end if (result i32) - local.get $2 + local.get $7 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -43045,21 +43045,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.const 0 i32.const -32 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $7 i32.const 2 i32.const 256 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get if @@ -43070,7 +43070,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 @@ -43083,7 +43083,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 255 @@ -43123,31 +43123,31 @@ call $~lib/typedarray/Int8Array#__set local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 1 local.get $7 i32.load offset=8 - local.tee $2 - local.get $2 + local.tee $9 + local.get $9 i32.const 1 i32.gt_s select - local.tee $3 + local.tee $10 i32.const 3 - local.get $2 - local.get $2 + local.get $9 + local.get $9 i32.const 3 i32.gt_s select - local.tee $2 + local.tee $9 i32.lt_s if - local.get $3 - local.get $4 + local.get $8 + local.get $10 i32.add i32.const 1 - local.get $2 - local.get $3 + local.get $9 + local.get $10 i32.sub memory.fill end @@ -43156,12 +43156,12 @@ i32.const 15 i32.const 1728 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43174,25 +43174,25 @@ end local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 local.get $7 i32.load offset=8 - local.tee $3 - local.get $3 + local.tee $9 + local.get $9 i32.const 0 i32.gt_s select - local.tee $2 - local.get $3 + local.tee $10 + local.get $9 i32.lt_s if - local.get $2 - local.get $4 + local.get $8 + local.get $10 i32.add i32.const 0 - local.get $3 - local.get $2 + local.get $9 + local.get $10 i32.sub memory.fill end @@ -43201,12 +43201,12 @@ i32.const 15 i32.const 1808 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43219,34 +43219,34 @@ end local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 local.get $7 i32.load offset=8 - local.tee $2 - local.get $2 + local.tee $9 + local.get $9 i32.const 0 i32.gt_s select - local.tee $3 - local.get $2 + local.tee $10 + local.get $9 i32.const 3 i32.sub - local.tee $2 + local.tee $9 i32.const 0 - local.get $2 + local.get $9 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $9 i32.lt_s if - local.get $3 - local.get $4 + local.get $8 + local.get $10 i32.add i32.const 1 - local.get $2 - local.get $3 + local.get $9 + local.get $10 i32.sub memory.fill end @@ -43255,12 +43255,12 @@ i32.const 15 i32.const 1840 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43273,28 +43273,28 @@ end local.get $7 i32.load offset=4 - local.set $4 + local.set $8 local.get $7 i32.load offset=8 - local.tee $3 + local.tee $9 i32.const 2 i32.sub - local.tee $2 + local.tee $10 i32.const 0 - local.get $2 + local.get $10 i32.const 0 i32.gt_s select - local.tee $2 - local.get $3 + local.tee $10 + local.get $9 i32.lt_s if - local.get $2 - local.get $4 + local.get $8 + local.get $10 i32.add i32.const 2 - local.get $3 - local.get $2 + local.get $9 + local.get $10 i32.sub memory.fill end @@ -43303,12 +43303,12 @@ i32.const 15 i32.const 1872 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43321,31 +43321,31 @@ end local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 1 local.get $7 i32.load offset=8 - local.tee $2 - local.get $2 + local.tee $9 + local.get $9 i32.const 1 i32.gt_s select - local.tee $3 + local.tee $10 i32.const 0 - local.get $2 - local.get $2 + local.get $9 + local.get $9 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $9 i32.lt_s if - local.get $3 - local.get $4 + local.get $8 + local.get $10 i32.add i32.const 0 - local.get $2 - local.get $3 + local.get $9 + local.get $10 i32.sub memory.fill end @@ -43354,12 +43354,12 @@ i32.const 15 i32.const 1904 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43375,33 +43375,33 @@ i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $5 + local.tee $8 i32.store offset=8 - local.get $5 + local.get $8 i32.load offset=4 - local.set $4 + local.set $9 i32.const 0 - local.get $5 + local.get $8 i32.load offset=8 - local.tee $3 - local.get $3 + local.tee $10 + local.get $10 i32.const 0 i32.gt_s select - local.tee $2 - local.get $3 + local.tee $11 + local.get $10 i32.lt_s if - local.get $2 - local.get $4 + local.get $9 + local.get $11 i32.add i32.const 0 - local.get $3 - local.get $2 + local.get $10 + local.get $11 i32.sub memory.fill end - local.get $5 + local.get $8 i32.load offset=8 i32.const 3 i32.ne @@ -43413,9 +43413,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $8 i32.load offset=4 - local.get $5 + local.get $8 i32.load i32.sub i32.const 1 @@ -43428,7 +43428,7 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $8 i32.load offset=8 i32.const 3 i32.ne @@ -43445,12 +43445,12 @@ i32.const 15 i32.const 1936 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $5 - local.get $2 + local.get $8 + local.get $9 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43466,12 +43466,12 @@ i32.const 15 i32.const 1968 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 local.get $7 - local.get $2 + local.get $8 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -43485,29 +43485,29 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 1 i32.const 3 @@ -43517,12 +43517,12 @@ i32.const 16 i32.const 2000 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43533,7 +43533,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.const 0 i32.const 0 i32.const 2147483647 @@ -43543,12 +43543,12 @@ i32.const 16 i32.const 2048 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43559,7 +43559,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.const 1 i32.const 0 i32.const -3 @@ -43569,12 +43569,12 @@ i32.const 16 i32.const 2096 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43585,7 +43585,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.const 2 i32.const -2 i32.const 2147483647 @@ -43595,12 +43595,12 @@ i32.const 16 i32.const 2144 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43611,7 +43611,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.const 0 i32.const 1 i32.const 0 @@ -43621,12 +43621,12 @@ i32.const 16 i32.const 2192 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43638,18 +43638,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $3 + local.tee $8 i32.store offset=12 - local.get $3 + local.get $8 i32.const 0 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#fill - local.get $3 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u @@ -43663,9 +43663,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $8 i32.load offset=4 - local.get $3 + local.get $8 i32.load i32.sub i32.const 4 @@ -43678,7 +43678,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $8 i32.load offset=8 i32.const 12 i32.ne @@ -43695,12 +43695,12 @@ i32.const 16 i32.const 2240 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $8 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43716,12 +43716,12 @@ i32.const 16 i32.const 2272 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $4 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -43735,40 +43735,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $7 i32.store offset=12 - local.get $2 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $7 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $7 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $7 i32.const 5 i32.const 6 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 1 i32.const 6 call $~lib/typedarray/Int8Array#subarray - local.tee $2 + local.tee $7 i32.store offset=8 - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 2 @@ -43781,7 +43781,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 5 i32.ne @@ -43793,9 +43793,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub i32.const 1 @@ -43808,7 +43808,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 5 i32.ne @@ -43821,13 +43821,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 1 i32.const 5 call $~lib/typedarray/Int8Array#subarray - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -43840,7 +43840,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 4 i32.ne @@ -43852,9 +43852,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub i32.const 2 @@ -43867,7 +43867,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 4 i32.ne @@ -43880,13 +43880,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -43899,7 +43899,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 3 i32.ne @@ -43911,9 +43911,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=4 - local.get $2 + local.get $7 i32.load i32.sub i32.const 3 @@ -43926,7 +43926,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=8 i32.const 3 i32.ne @@ -43941,55 +43941,55 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $7 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $4 + local.tee $8 i32.store - local.get $2 + local.get $7 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2320 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44001,32 +44001,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 1 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2368 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44038,32 +44038,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 1 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2416 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44075,32 +44075,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 2 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2464 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44112,32 +44112,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2512 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44149,32 +44149,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2560 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44186,32 +44186,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 1 i32.const 2 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2608 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44223,32 +44223,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 0 i32.const -2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2656 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44260,32 +44260,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const 0 i32.const -2 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2704 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44297,32 +44297,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const -4 i32.const -3 i32.const -2 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2752 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44334,32 +44334,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const -4 i32.const -3 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2800 call $~lib/rt/__newArray - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $9 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44371,32 +44371,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $8 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $7 i32.store offset=16 - local.get $2 + local.get $7 i32.const -4 i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2848 call $~lib/rt/__newArray - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 - local.get $3 - local.get $2 + local.get $7 + local.get $8 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -44410,36 +44410,36 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $3 + local.tee $8 i32.store offset=16 - local.get $3 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u @@ -44453,9 +44453,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $8 i32.load offset=4 - local.get $3 + local.get $8 i32.load i32.sub i32.const 4 @@ -44468,7 +44468,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $8 i32.load offset=8 i32.const 12 i32.ne @@ -44481,13 +44481,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $9 i32.store offset=8 - local.get $2 + local.get $9 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -44500,7 +44500,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $9 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -44513,7 +44513,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u @@ -44527,9 +44527,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $9 i32.load offset=4 - local.get $2 + local.get $9 i32.load i32.sub if @@ -44540,7 +44540,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $9 i32.load offset=8 i32.const 8 i32.ne @@ -44553,13 +44553,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $8 i32.store offset=12 - local.get $2 + local.get $8 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -44572,7 +44572,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u @@ -44586,9 +44586,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=4 - local.get $2 + local.get $8 i32.load i32.sub if @@ -44599,7 +44599,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=8 i32.const 4 i32.ne @@ -44612,14 +44612,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $8 i32.store offset=24 - local.get $2 - local.get $4 + local.get $7 + local.get $8 i32.eq if i32.const 0 @@ -44629,11 +44629,11 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -44646,14 +44646,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=4 - local.get $2 + local.get $8 i32.load i32.sub - local.get $4 + local.get $7 i32.load offset=4 - local.get $4 + local.get $7 i32.load i32.sub i32.ne @@ -44665,9 +44665,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $8 i32.load offset=8 - local.get $4 + local.get $7 i32.load offset=8 i32.ne if @@ -44687,63 +44687,63 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $7 i64.const 0 i64.store - local.get $2 + local.get $7 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 2896 i32.store offset=4 - local.get $5 + local.get $7 i32.load offset=4 - local.set $4 - local.get $5 + local.set $8 + local.get $7 i32.load offset=8 - local.set $3 + local.set $9 loop $for-loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_s - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -44768,17 +44768,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -44786,43 +44786,43 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 - local.set $3 + local.set $9 loop $for-loop|05 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|05 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -44847,17 +44847,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -44865,43 +44865,43 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 - local.set $3 + local.set $9 loop $for-loop|013 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|013 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -44926,17 +44926,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -44944,47 +44944,47 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $9 loop $for-loop|017 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $4 - local.get $1 - i32.const 1 + local.get $8 + local.get $2 + i32.const 1 i32.shl i32.add i32.load16_s - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|017 end end - local.get $9 + local.get $1 i32.const 65535 i32.and i32.const 6 @@ -45009,17 +45009,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -45027,47 +45027,47 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $9 loop $for-loop|022 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_u - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|022 end end - local.get $9 + local.get $1 i32.const 65535 i32.and i32.const 6 @@ -45092,17 +45092,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -45110,47 +45110,47 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 + local.set $9 loop $for-loop|027 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|027 end end - local.get $9 + local.get $1 i32.const 6 i32.ne br_if $folding-inner1 @@ -45173,17 +45173,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $5 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -45191,47 +45191,47 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $9 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 + local.set $9 loop $for-loop|032 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $2 local.get $1 - local.get $5 + local.get $10 + local.get $2 + local.get $7 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|032 end end - local.get $9 + local.get $1 i32.const 6 i32.ne br_if $folding-inner1 @@ -45254,63 +45254,63 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 3120 i32.store offset=4 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 + local.set $7 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $8 loop $for-loop|037 - local.get $1 local.get $2 + local.get $8 i32.lt_s if - local.get $3 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $10 - local.get $1 local.get $4 + local.get $12 + local.get $2 + local.get $1 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|037 end end - local.get $15 + local.get $4 i64.const 6 i64.ne br_if $folding-inner1 @@ -45333,17 +45333,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $4 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $4 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -45351,47 +45351,47 @@ i32.const 3152 i32.store offset=4 i64.const 0 - local.set $15 - local.get $4 + local.set $4 + local.get $1 i32.load offset=4 - local.set $3 + local.set $7 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $8 loop $for-loop|042 - local.get $1 local.get $2 + local.get $8 i32.lt_s if - local.get $3 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $10 - local.get $1 local.get $4 + local.get $12 + local.get $2 + local.get $1 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|042 end end - local.get $15 + local.get $4 i64.const 6 i64.ne br_if $folding-inner1 @@ -45414,63 +45414,63 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $4 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $4 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 3184 i32.store offset=4 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 + local.set $7 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $8 loop $for-loop|047 - local.get $1 local.get $2 + local.get $8 i32.lt_s if - local.get $3 - local.get $1 + local.get $7 + local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $6 + local.get $5 + local.get $13 + local.get $2 local.get $1 - local.get $4 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $1 + local.set $5 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|047 end end - local.get $14 + local.get $5 f32.const 6 f32.ne br_if $folding-inner1 @@ -45493,63 +45493,63 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $4 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $4 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 3216 i32.store offset=4 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 + local.set $7 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $8 loop $for-loop|052 - local.get $1 local.get $2 + local.get $8 i32.lt_s if - local.get $3 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $14 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 + local.get $6 + local.get $14 + local.get $2 local.get $1 - local.get $4 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $13 - local.get $1 + local.set $6 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|052 end end - local.get $13 + local.get $6 f64.const 6 f64.ne br_if $folding-inner1 @@ -46133,17 +46133,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -46151,43 +46151,43 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|059 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $2 + local.get $8 i32.add i32.load8_s - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|059 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -46212,17 +46212,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -46230,43 +46230,43 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|064 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|064 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -46291,17 +46291,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -46309,43 +46309,43 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|071 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|071 end end - local.get $9 + local.get $1 i32.const 255 i32.and i32.const 6 @@ -46370,17 +46370,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -46388,47 +46388,47 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|076 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $3 - local.get $1 + local.get $8 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|076 end end - local.get $9 + local.get $1 i32.const 65535 i32.and i32.const 6 @@ -46453,17 +46453,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -46471,47 +46471,47 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|081 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $3 - local.get $1 + local.get $8 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_u - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|081 end end - local.get $9 + local.get $1 i32.const 65535 i32.and i32.const 6 @@ -46536,17 +46536,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -46554,47 +46554,47 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|086 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $3 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|086 end end - local.get $9 + local.get $1 i32.const 6 i32.ne br_if $folding-inner5 @@ -46617,17 +46617,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -46635,47 +46635,47 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $3 - local.get $4 + local.set $8 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|091 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $3 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $9 i32.const 4 global.set $~argumentsLength + local.get $1 local.get $9 local.get $2 - local.get $1 - local.get $4 + local.get $7 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|091 end end - local.get $9 + local.get $1 i32.const 6 i32.ne br_if $folding-inner5 @@ -46698,17 +46698,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -46716,47 +46716,47 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $15 - local.get $3 + local.set $4 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $7 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|096 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $7 local.get $2 - local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $10 + local.get $4 + local.get $12 + local.get $2 local.get $1 - local.get $3 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|096 end end - local.get $15 + local.get $4 i64.const 6 i64.ne br_if $folding-inner5 @@ -46779,17 +46779,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -46797,47 +46797,47 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $15 - local.get $3 + local.set $4 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $7 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|0101 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $7 local.get $2 - local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $10 + local.get $4 + local.get $12 + local.get $2 local.get $1 - local.get $3 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|0101 end end - local.get $15 + local.get $4 i64.const 6 i64.ne br_if $folding-inner5 @@ -46860,17 +46860,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -46878,47 +46878,47 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $14 - local.get $3 + local.set $5 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $7 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|0106 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $7 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $6 + local.get $5 + local.get $13 + local.get $2 local.get $1 - local.get $3 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $1 + local.set $5 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|0106 end end - local.get $14 + local.get $5 f32.const 6 f32.ne br_if $folding-inner5 @@ -46941,17 +46941,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -46959,47 +46959,47 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $13 - local.get $3 + local.set $6 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $7 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|0111 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $7 local.get $2 - local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $14 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 + local.get $6 + local.get $14 + local.get $2 local.get $1 - local.get $3 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $13 - local.get $1 + local.set $6 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|0111 end end - local.get $13 + local.get $6 f64.const 6 f64.ne br_if $folding-inner5 @@ -47025,17 +47025,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $9 + local.tee $1 i32.store - local.get $9 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -47052,90 +47052,90 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $9 + local.get $1 i32.load offset=8 - local.set $5 - local.get $9 - i32.load offset=4 - local.set $4 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|01 - local.get $5 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $4 - local.get $16 + local.get $3 + local.get $9 i32.add i32.load8_s - local.set $1 + local.set $11 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $16 + local.get $3 + local.get $10 i32.add + local.get $11 + local.get $3 local.get $1 - local.get $16 - local.get $9 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|01 end end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $3 - local.get $2 + local.get $7 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $7 + local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=8 - local.get $3 + local.get $7 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $3 + local.get $7 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $3 + local.get $7 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -47146,7 +47146,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47165,17 +47165,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $9 + local.tee $1 i32.store - local.get $9 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -47192,90 +47192,90 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $9 + local.get $1 i32.load offset=8 - local.set $5 - local.get $9 - i32.load offset=4 - local.set $4 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|03 - local.get $5 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $4 - local.get $16 + local.get $3 + local.get $9 i32.add i32.load8_u - local.set $1 + local.set $11 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $16 + local.get $3 + local.get $10 i32.add + local.get $11 + local.get $3 local.get $1 - local.get $16 - local.get $9 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|03 end end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $3 - local.get $2 + local.get $7 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $7 + local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=8 - local.get $3 + local.get $7 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $3 + local.get $7 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $3 + local.get $7 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -47286,7 +47286,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47305,17 +47305,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $9 + local.tee $1 i32.store - local.get $9 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -47332,90 +47332,90 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $9 + local.get $1 i32.load offset=8 - local.set $5 - local.get $9 - i32.load offset=4 - local.set $4 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|06 - local.get $5 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $4 - local.get $16 + local.get $3 + local.get $9 i32.add i32.load8_u - local.set $1 + local.set $11 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $16 + local.get $3 + local.get $10 i32.add + local.get $11 + local.get $3 local.get $1 - local.get $16 - local.get $9 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|06 end end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $3 - local.get $2 + local.get $7 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $7 + local.get $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $7 + local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=8 - local.get $3 + local.get $7 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $3 + local.get $7 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $3 + local.get $7 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -47426,7 +47426,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47445,17 +47445,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $12 + local.tee $1 i32.store - local.get $12 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $12 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $12 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -47472,98 +47472,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $12 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 - local.get $12 - i32.load offset=4 - local.set $7 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 1 i32.shl - local.tee $4 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 loop $for-loop|09 - local.get $9 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $7 - local.get $16 + local.get $9 + local.get $3 i32.const 1 i32.shl - local.tee $2 + local.tee $15 i32.add i32.load16_s - local.set $1 + local.set $16 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $3 + local.get $11 + local.get $15 i32.add - local.get $1 local.get $16 - local.get $12 + local.get $3 + local.get $1 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|09 end end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $5 - local.get $3 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store offset=4 - local.get $5 - local.get $4 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $5 + local.get $7 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $5 + local.get $7 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $5 + local.get $7 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -47574,7 +47574,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47593,17 +47593,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $12 + local.tee $1 i32.store - local.get $12 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $12 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $12 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -47620,98 +47620,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $12 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 - local.get $12 - i32.load offset=4 - local.set $7 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 1 i32.shl - local.tee $4 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 loop $for-loop|012 - local.get $9 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $7 - local.get $16 + local.get $9 + local.get $3 i32.const 1 i32.shl - local.tee $2 + local.tee $15 i32.add i32.load16_u - local.set $1 + local.set $16 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $3 + local.get $11 + local.get $15 i32.add - local.get $1 local.get $16 - local.get $12 + local.get $3 + local.get $1 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|012 end end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $5 - local.get $3 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store offset=4 - local.get $5 - local.get $4 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $5 + local.get $7 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $5 + local.get $7 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $5 + local.get $7 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -47722,7 +47722,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47741,17 +47741,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $12 + local.tee $1 i32.store - local.get $12 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $12 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $12 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -47768,98 +47768,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $12 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 - local.get $12 - i32.load offset=4 - local.set $7 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 2 i32.shl - local.tee $4 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 loop $for-loop|015 - local.get $9 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $7 - local.get $16 + local.get $9 + local.get $3 i32.const 2 i32.shl - local.tee $2 + local.tee $15 i32.add i32.load - local.set $1 + local.set $16 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $3 + local.get $11 + local.get $15 i32.add - local.get $1 local.get $16 - local.get $12 + local.get $3 + local.get $1 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|015 end end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $5 - local.get $3 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store offset=4 - local.get $5 - local.get $4 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $5 + local.get $7 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $5 + local.get $7 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $5 + local.get $7 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -47870,7 +47870,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47889,17 +47889,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $12 + local.tee $1 i32.store - local.get $12 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $12 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $12 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -47916,98 +47916,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $12 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 - local.get $12 - i32.load offset=4 - local.set $7 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 2 i32.shl - local.tee $4 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 loop $for-loop|018 - local.get $9 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $7 - local.get $16 + local.get $9 + local.get $3 i32.const 2 i32.shl - local.tee $2 + local.tee $15 i32.add i32.load - local.set $1 + local.set $16 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $3 + local.get $11 + local.get $15 i32.add - local.get $1 local.get $16 - local.get $12 + local.get $3 + local.get $1 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|018 end end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $5 - local.get $3 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $3 + local.get $7 + local.get $11 i32.store offset=4 - local.get $5 - local.get $4 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $5 + local.get $7 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $5 + local.get $7 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $5 + local.get $7 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -48018,7 +48018,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48037,17 +48037,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $11 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $11 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -48064,98 +48064,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $11 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $11 - i32.load offset=4 - local.set $5 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 3 i32.shl - local.tee $3 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 loop $for-loop|021 - local.get $7 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $5 - local.get $16 + local.get $9 + local.get $3 i32.const 3 i32.shl - local.tee $1 + local.tee $15 i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 - i32.add - local.get $10 - local.get $16 local.get $11 + local.get $15 + i32.add + local.get $4 + local.get $3 + local.get $1 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|021 end end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $4 - local.get $2 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store offset=4 - local.get $4 - local.get $3 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner16 - local.get $4 + local.get $7 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner17 - local.get $4 + local.get $7 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -48166,7 +48166,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48185,17 +48185,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $11 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $11 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -48212,98 +48212,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $11 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $11 - i32.load offset=4 - local.set $5 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 3 i32.shl - local.tee $3 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 loop $for-loop|024 - local.get $7 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $5 - local.get $16 + local.get $9 + local.get $3 i32.const 3 i32.shl - local.tee $1 + local.tee $15 i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 - i32.add - local.get $10 - local.get $16 local.get $11 + local.get $15 + i32.add + local.get $4 + local.get $3 + local.get $1 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|024 end end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $4 - local.get $2 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store offset=4 - local.get $4 - local.get $3 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner16 - local.get $4 + local.get $7 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner17 - local.get $4 + local.get $7 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -48314,7 +48314,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48333,17 +48333,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $11 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $11 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -48360,98 +48360,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $11 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $11 - i32.load offset=4 - local.set $5 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 2 i32.shl - local.tee $3 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 loop $for-loop|028 - local.get $7 - local.get $16 - i32.gt_s - if - local.get $5 - local.get $16 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $9 + local.get $3 i32.const 2 i32.shl - local.tee $1 + local.tee $15 i32.add f32.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 - i32.add - local.get $6 - local.get $16 local.get $11 + local.get $15 + i32.add + local.get $5 + local.get $3 + local.get $1 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|028 end end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $4 - local.get $2 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store offset=4 - local.get $4 - local.get $3 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner16 - local.get $4 + local.get $7 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner17 - local.get $4 + local.get $7 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -48462,7 +48462,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48481,17 +48481,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $11 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $11 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -48508,98 +48508,98 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i64.const 0 i64.store - local.get $11 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $11 - i32.load offset=4 - local.set $5 + local.set $8 local.get $1 + i32.load offset=4 + local.set $9 + local.get $7 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 3 i32.shl - local.tee $3 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 loop $for-loop|031 - local.get $7 - local.get $16 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $5 - local.get $16 + local.get $9 + local.get $3 i32.const 3 i32.shl - local.tee $1 + local.tee $15 i32.add f64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 - i32.add - local.get $8 - local.get $16 local.get $11 + local.get $15 + i32.add + local.get $6 + local.get $3 + local.get $1 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $16 + local.get $3 i32.const 1 i32.add - local.set $16 + local.set $3 br $for-loop|031 end end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $4 - local.get $2 + local.get $7 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $7 + local.get $11 i32.store offset=4 - local.get $4 - local.get $3 + local.get $7 + local.get $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner16 - local.get $4 + local.get $7 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner17 - local.get $4 + local.get $7 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -48635,17 +48635,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -48653,39 +48653,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4304 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|0633 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0633 end end @@ -48697,39 +48697,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4336 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|04 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04 end end @@ -48755,17 +48755,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -48773,39 +48773,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4368 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|07 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|07 end end @@ -48817,39 +48817,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4400 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|048 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|048 end end @@ -48875,17 +48875,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -48893,39 +48893,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4432 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|010 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.09 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|010 end end @@ -48937,39 +48937,39 @@ global.get $~lib/memory/__stack_pointer i32.const 4464 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|0412 - local.get $2 - local.get $9 - i32.gt_s - if + local.get $1 + local.get $7 + i32.lt_s + if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0111 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0412 end end @@ -48995,17 +48995,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -49013,43 +49013,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4496 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|014 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|014 end end @@ -49061,43 +49061,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4528 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0415 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0415 end end @@ -49123,17 +49123,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -49141,43 +49141,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4560 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|016 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|016 end end @@ -49189,43 +49189,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4592 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0417 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0417 end end @@ -49251,17 +49251,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -49269,43 +49269,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4624 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|01834 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|01834 end end @@ -49317,43 +49317,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4656 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0419 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0419 end end @@ -49379,17 +49379,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -49397,43 +49397,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4688 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|020 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|020 end end @@ -49445,43 +49445,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4720 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0421 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0421 end end @@ -49507,17 +49507,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -49525,43 +49525,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4752 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|023 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|023 end end @@ -49573,43 +49573,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4784 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0424 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0424 end end @@ -49635,17 +49635,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -49653,43 +49653,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4816 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|025 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|025 end end @@ -49701,43 +49701,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4848 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0426 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0426 end end @@ -49763,17 +49763,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -49781,43 +49781,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4880 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|02835 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $1 + local.get $2 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|02835 end end @@ -49829,43 +49829,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4912 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0429 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $1 + local.get $2 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0429 end end @@ -49891,17 +49891,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -49909,43 +49909,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4944 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|030 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $9 - local.get $3 + local.get $6 + local.get $1 + local.get $2 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|030 end end @@ -49957,43 +49957,43 @@ global.get $~lib/memory/__stack_pointer i32.const 4976 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0431 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $9 - local.get $3 + local.get $6 + local.get $1 + local.get $2 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0431 end end @@ -50019,103 +50019,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5008 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 loop $for-loop|033 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|033 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5040 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 loop $for-loop|0434 - local.get $2 - local.get $9 - i32.gt_s - if - local.get $3 - local.get $9 + local.get $1 + local.get $7 + i32.lt_s + if + local.get $1 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0434 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50138,103 +50138,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5072 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 loop $for-loop|035 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|035 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5104 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 loop $for-loop|0436 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0436 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50257,103 +50257,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5136 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.037 loop $for-loop|038 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.037 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|038 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0139 loop $for-loop|0440 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0139 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0440 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50376,111 +50376,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 loop $for-loop|041 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|041 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5232 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 loop $for-loop|0442 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0442 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50503,111 +50503,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5264 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 loop $for-loop|043 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|043 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5296 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 loop $for-loop|0444 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0444 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50630,111 +50630,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5328 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 loop $for-loop|045 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|045 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 loop $for-loop|0446 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0446 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50757,111 +50757,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 loop $for-loop|049 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|049 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5424 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 loop $for-loop|0450 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $4 + local.get $1 + local.get $2 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0450 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -50884,111 +50884,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5456 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 loop $for-loop|051 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|051 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5488 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 loop $for-loop|0452 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0452 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -51011,111 +51011,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5520 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 loop $for-loop|053 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|053 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5552 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 loop $for-loop|0454 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0454 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -51138,111 +51138,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5584 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 loop $for-loop|055 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|055 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 loop $for-loop|0456 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0456 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -51265,111 +51265,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5648 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 loop $for-loop|057 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|057 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 5680 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 loop $for-loop|0458 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0458 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner26 @@ -51392,103 +51392,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 loop $for-loop|060 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|060 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 loop $for-loop|0461 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0461 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -51511,103 +51511,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 loop $for-loop|062 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|062 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 loop $for-loop|0463 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0463 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -51630,103 +51630,103 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 loop $for-loop|065 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|065 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 loop $for-loop|0467 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0467 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -51749,111 +51749,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 loop $for-loop|068 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|068 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 loop $for-loop|0469 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0469 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -51876,111 +51876,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 loop $for-loop|070 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|070 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 loop $for-loop|0471 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0471 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52003,111 +52003,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 loop $for-loop|072 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|072 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 loop $for-loop|0473 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0473 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52130,111 +52130,111 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 loop $for-loop|074 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|074 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 loop $for-loop|0475 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $9 - local.get $3 + local.get $1 + local.get $2 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0475 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52276,45 +52276,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 loop $for-loop|077 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|077 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 @@ -52323,45 +52323,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 loop $for-loop|0478 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0478 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52403,45 +52403,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 loop $for-loop|079 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|079 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 @@ -52450,45 +52450,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 loop $for-loop|0480 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0480 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52530,45 +52530,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 loop $for-loop|082 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 2 i32.shl i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|082 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 @@ -52577,45 +52577,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 loop $for-loop|0483 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 2 i32.shl i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0483 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52657,45 +52657,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 loop $for-loop|084 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|084 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const 1 i32.ne br_if $folding-inner27 @@ -52704,45 +52704,45 @@ i32.store offset=4 local.get $2 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $9 + local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 loop $for-loop|0485 - local.get $9 + local.get $1 i32.const 0 i32.ge_s if + local.get $3 local.get $1 - local.get $9 i32.const 3 i32.shl i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $1 local.get $2 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $9 + local.get $1 i32.const 1 i32.sub - local.set $9 + local.set $1 br $for-loop|0485 end end i32.const -1 - local.set $9 + local.set $1 end - local.get $9 + local.get $1 i32.const -1 i32.ne br_if $folding-inner28 @@ -52765,17 +52765,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -52783,40 +52783,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|087 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|087 end end @@ -52828,40 +52828,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|0488 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0488 end end @@ -52887,17 +52887,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -52905,40 +52905,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|089 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|089 end end @@ -52950,40 +52950,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6512 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|0490 - local.get $2 - local.get $9 - i32.gt_s - if - local.get $3 - local.get $9 + local.get $1 + local.get $7 + i32.lt_s + if + local.get $1 + local.get $3 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0490 end end @@ -53009,17 +53009,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -53027,40 +53027,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6544 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|092 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.091 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|092 end end @@ -53072,40 +53072,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6576 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $7 loop $for-loop|0494 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if + local.get $1 local.get $3 - local.get $9 i32.add i32.load8_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0193 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0494 end end @@ -53131,17 +53131,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -53149,44 +53149,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6608 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|095 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|095 end end @@ -53198,44 +53198,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0496 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0496 end end @@ -53261,17 +53261,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -53279,44 +53279,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|097 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|097 end end @@ -53328,44 +53328,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6704 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0498 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0498 end end @@ -53391,17 +53391,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -53409,44 +53409,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6736 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|099 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|099 end end @@ -53458,44 +53458,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6768 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|04100 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04100 end end @@ -53521,17 +53521,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -53539,44 +53539,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0102 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0102 end end @@ -53588,44 +53588,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=4 - local.get $4 + local.get $2 i32.load offset=4 local.set $3 i32.const 0 - local.set $9 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|04103 - local.get $2 - local.get $9 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if local.get $3 - local.get $9 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $8 local.get $1 - local.get $9 - local.get $4 + local.get $2 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04103 end end @@ -53651,17 +53651,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -53669,44 +53669,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6864 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0104 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0104 end end @@ -53718,44 +53718,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6896 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|04105 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04105 end end @@ -53781,17 +53781,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -53799,44 +53799,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0107 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 6928 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0107 end end @@ -53848,44 +53848,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|04108 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $10 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 - local.get $9 - local.get $3 + local.get $4 + local.get $1 + local.get $2 i32.const 6960 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04108 end end @@ -53911,17 +53911,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $2 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -53929,44 +53929,44 @@ global.get $~lib/memory/__stack_pointer i32.const 6992 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0109 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $1 + local.get $2 i32.const 6992 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0109 end end @@ -53978,44 +53978,44 @@ global.get $~lib/memory/__stack_pointer i32.const 7024 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|04110 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $1 + local.get $2 i32.const 7024 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04110 end end @@ -54041,17 +54041,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $2 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -54059,44 +54059,44 @@ global.get $~lib/memory/__stack_pointer i32.const 7056 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|0112 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $9 - local.get $3 + local.get $6 + local.get $1 + local.get $2 i32.const 7056 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0112 end end @@ -54108,44 +54108,44 @@ global.get $~lib/memory/__stack_pointer i32.const 7088 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $2 + local.set $3 i32.const 0 - local.set $9 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|04113 local.get $1 - local.get $9 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $9 - local.get $3 - i32.const 7088 + local.get $6 + local.get $1 + local.get $2 + i32.const 7088 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|04113 end end @@ -54176,14 +54176,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54193,7 +54193,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54203,7 +54203,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54213,34 +54213,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7200 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 - local.set $3 + local.set $7 loop $for-loop|0116 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0116 end end @@ -54272,14 +54272,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54290,7 +54290,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54301,7 +54301,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54312,34 +54312,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7232 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 - local.set $3 + local.set $7 loop $for-loop|0121 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0121 end end @@ -54371,14 +54371,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54389,7 +54389,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54400,7 +54400,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54411,34 +54411,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7264 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 - local.set $3 + local.set $7 loop $for-loop|0128 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0128 end end @@ -54470,14 +54470,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54487,7 +54487,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54497,7 +54497,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54507,38 +54507,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7296 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $7 loop $for-loop|0133 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_s i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0133 end end @@ -54570,14 +54570,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54588,7 +54588,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54599,7 +54599,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54610,38 +54610,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7328 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $7 loop $for-loop|0138 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_u i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0138 end end @@ -54673,14 +54673,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54689,7 +54689,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54698,7 +54698,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54707,38 +54707,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7360 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 + local.set $7 loop $for-loop|0143 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0143 end end @@ -54770,14 +54770,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54786,7 +54786,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54795,7 +54795,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $5 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54804,38 +54804,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7392 i32.store offset=8 - local.get $5 + local.get $1 i32.load offset=4 - local.set $4 + local.set $3 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 + local.set $7 loop $for-loop|0148 - local.get $1 - local.get $3 + local.get $2 + local.get $7 i32.lt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $5 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0148 end end @@ -54867,14 +54867,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54884,7 +54884,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54894,7 +54894,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -54904,38 +54904,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7424 i32.store offset=8 - local.get $4 + local.get $1 i32.load offset=4 local.set $3 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0153 - local.get $1 local.get $2 + local.get $7 i32.lt_s if local.get $3 - local.get $1 + local.get $2 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $4 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0153 end end @@ -54967,14 +54967,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -54984,7 +54984,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -54994,7 +54994,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -55004,38 +55004,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7456 i32.store offset=8 - local.get $4 + local.get $1 i32.load offset=4 local.set $3 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0158 - local.get $1 local.get $2 + local.get $7 i32.lt_s if local.get $3 - local.get $1 + local.get $2 i32.const 3 i32.shl i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $4 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0158 end end @@ -55067,14 +55067,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -55084,7 +55084,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -55094,7 +55094,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -55104,38 +55104,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7488 i32.store offset=8 - local.get $4 + local.get $1 i32.load offset=4 local.set $3 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0163 - local.get $1 local.get $2 + local.get $7 i32.lt_s if local.get $3 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add f32.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $4 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0163 end end @@ -55167,14 +55167,14 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.const 7152 i32.const 0 @@ -55184,7 +55184,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1 i32.const 7152 i32.const 1 @@ -55194,7 +55194,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $4 + local.get $1 i32.const 2 i32.const 7152 i32.const 2 @@ -55204,38 +55204,38 @@ global.get $~lib/memory/__stack_pointer i32.const 7520 i32.store offset=8 - local.get $4 + local.get $1 i32.load offset=4 local.set $3 i32.const 0 - local.set $1 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 + local.set $7 loop $for-loop|0168 - local.get $1 local.get $2 + local.get $7 i32.lt_s if local.get $3 - local.get $1 + local.get $2 i32.const 3 i32.shl i32.add f64.load i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 - local.get $4 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0168 end end @@ -55248,7 +55248,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $9 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -55258,118 +55258,118 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $3 - call $~lib/typedarray/Int8Array#constructor local.tee $2 + call $~lib/typedarray/Int8Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $7 i32.store offset=8 loop $for-loop|0114 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set + local.get $7 local.get $1 - local.get $9 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0114 end end - local.get $2 + local.get $3 i32.load offset=4 - local.get $2 + local.get $3 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 - local.set $9 + local.set $1 loop $for-loop|1 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 call $~lib/typedarray/Int8Array#__get i32.const 7616 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $9 + local.get $1 i32.sub call $~lib/array/Array#__get i32.extend8_s i32.ne br_if $folding-inner31 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 - local.get $1 + local.get $2 i32.load offset=4 - local.get $1 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE - local.get $1 + local.get $2 i32.store offset=16 - local.get $1 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $1 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $1 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $1 + local.get $2 i32.const 3 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -55380,7 +55380,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $9 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -55390,120 +55390,120 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $3 - call $~lib/typedarray/Uint8Array#constructor local.tee $2 + call $~lib/typedarray/Uint8Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $7 i32.store offset=8 loop $for-loop|0115 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set + local.get $7 local.get $1 - local.get $9 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0115 end end - local.get $2 + local.get $3 i32.load offset=4 - local.get $2 + local.get $3 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 - local.set $9 + local.set $1 loop $for-loop|1116 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 call $~lib/typedarray/Uint8Array#__get i32.const 7616 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $9 + local.get $1 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner31 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|1116 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 - local.get $1 + local.get $2 i32.load offset=4 - local.get $1 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE - local.get $1 + local.get $2 i32.store offset=16 - local.get $1 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $1 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $1 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $1 + local.get $2 i32.const 3 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -55514,7 +55514,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $9 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -55524,120 +55524,120 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $3 - call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $2 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $7 i32.store offset=8 loop $for-loop|0117 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set + local.get $7 local.get $1 - local.get $9 i32.const 7616 - local.get $9 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|0117 end end - local.get $2 + local.get $3 i32.load offset=4 - local.get $2 + local.get $3 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 - local.set $9 + local.set $1 loop $for-loop|1118 - local.get $3 - local.get $9 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $9 + local.get $3 + local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $9 + local.get $1 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner31 - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 + local.set $1 br $for-loop|1118 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 - local.get $1 + local.get $2 i32.load offset=4 - local.get $1 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE - local.get $1 + local.get $2 i32.store offset=16 - local.get $1 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $1 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $1 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $1 + local.get $2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -55666,82 +55666,82 @@ local.get $1 i32.const 7628 i32.load - local.tee $3 - call $~lib/typedarray/Int16Array#constructor local.tee $2 + call $~lib/typedarray/Int16Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0171 - local.get $3 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set + local.get $7 local.get $1 - local.get $16 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0171 end end - local.get $2 + local.get $3 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1119 - local.get $3 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Int16Array#__get i32.const 7616 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i32.extend16_s i32.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1119 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 - local.get $1 + local.get $2 call $~lib/typedarray/Int16Array#reverse local.tee $1 i32.store offset=16 @@ -55792,85 +55792,85 @@ local.get $1 i32.const 7628 i32.load - local.tee $3 - call $~lib/typedarray/Uint16Array#constructor local.tee $2 + call $~lib/typedarray/Uint16Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|02136 - local.get $3 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set + local.get $7 local.get $1 - local.get $16 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|02136 end end - local.get $2 + local.get $3 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $16 + local.set $1 loop $for-loop|124 - local.get $3 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $2 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Uint16Array#__get i32.const 7616 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i32.const 65535 i32.and i32.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|124 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 - local.get $1 + local.get $2 call $~lib/typedarray/Int16Array#reverse local.tee $1 i32.store offset=16 @@ -55921,118 +55921,120 @@ local.get $1 i32.const 7628 i32.load - local.tee $11 + local.tee $2 call $~lib/typedarray/Int32Array#constructor - local.tee $9 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $2 call $~lib/typedarray/Int32Array#constructor local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|029 - local.get $11 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $9 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set local.get $7 - local.get $16 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|029 end end - local.get $9 + i32.const 0 + local.set $1 + local.get $3 i32.load offset=4 - local.set $5 - local.get $9 + local.set $8 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $3 + local.set $9 loop $while-continue|0 - local.get $0 - local.get $4 + local.get $1 + local.get $10 i32.lt_u if - local.get $5 - local.get $0 + local.get $8 + local.get $1 i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 i32.load - local.set $2 + local.set $15 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $5 - local.get $3 - local.get $0 i32.sub i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 i32.load i32.store - local.get $1 - local.get $2 + local.get $11 + local.get $15 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|132 - local.get $11 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $9 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Int32Array#__get i32.const 7616 - local.get $11 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i32.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|132 end end @@ -56041,87 +56043,87 @@ i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $7 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $3 i32.load offset=4 - local.set $5 - local.get $7 + local.set $7 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $4 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $3 + local.set $8 loop $while-continue|0121 - local.get $1 - local.get $4 + local.get $2 + local.get $9 i32.lt_u if - local.get $5 - local.get $1 + local.get $7 + local.get $2 i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 i32.load - local.set $2 - local.get $0 - local.get $5 - local.get $3 - local.get $1 + local.set $11 + local.get $10 + local.get $7 + local.get $8 + local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 i32.load i32.store - local.get $0 - local.get $2 + local.get $10 + local.get $11 i32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0121 end end end - local.get $7 + local.get $3 i32.store offset=16 - local.get $7 + local.get $3 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $7 + local.get $3 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $7 + local.get $3 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $7 + local.get $3 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -56140,130 +56142,130 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.const 20 memory.fill - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $11 + local.tee $2 call $~lib/typedarray/Uint32Array#constructor - local.tee $9 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $2 call $~lib/typedarray/Uint32Array#constructor local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|037175 - local.get $11 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $9 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set local.get $7 - local.get $16 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|037175 end end i32.const 0 - local.set $0 - local.get $9 + local.set $1 + local.get $3 i32.load offset=4 - local.set $5 - local.get $9 + local.set $8 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $3 + local.set $9 loop $while-continue|0123 - local.get $0 - local.get $4 + local.get $1 + local.get $10 i32.lt_u if - local.get $5 - local.get $0 + local.get $8 + local.get $1 i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 i32.load - local.set $2 + local.set $15 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $5 - local.get $3 - local.get $0 i32.sub i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 i32.load i32.store - local.get $1 - local.get $2 + local.get $11 + local.get $15 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0123 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|140 - local.get $11 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $9 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $11 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i32.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|140 end end @@ -56271,87 +56273,87 @@ local.get $7 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $7 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $3 i32.load offset=4 - local.set $5 - local.get $7 + local.set $7 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $4 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $3 + local.set $8 loop $while-continue|0125 - local.get $1 - local.get $4 + local.get $2 + local.get $9 i32.lt_u if - local.get $5 - local.get $1 + local.get $7 + local.get $2 i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 i32.load - local.set $2 - local.get $0 - local.get $5 - local.get $3 - local.get $1 + local.set $11 + local.get $10 + local.get $7 + local.get $8 + local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 i32.load i32.store - local.get $0 - local.get $2 + local.get $10 + local.get $11 i32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0125 end end end - local.get $7 + local.get $3 i32.store offset=16 - local.get $7 + local.get $3 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $7 + local.get $3 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $7 + local.get $3 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $7 + local.get $3 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -56370,221 +56372,221 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.const 20 memory.fill - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $9 + local.tee $2 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $2 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|045126 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $5 - local.get $16 + local.get $7 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|045126 end end i32.const 0 - local.set $0 - local.get $7 + local.set $1 + local.get $3 i32.load offset=4 - local.set $4 - local.get $7 + local.set $8 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $3 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $2 + local.set $9 loop $while-continue|0127 - local.get $0 - local.get $3 + local.get $1 + local.get $10 i32.lt_u if - local.get $4 - local.get $0 + local.get $8 + local.get $1 i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 i64.load - local.set $10 + local.set $4 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $4 - local.get $2 - local.get $0 i32.sub i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 i64.load i64.store - local.get $1 - local.get $10 + local.get $11 + local.get $4 i64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0127 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|148 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $9 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i64.extend_i32_s i64.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|148 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $5 + local.set $7 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $3 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 loop $while-continue|0129 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_u if - local.get $4 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 i64.load - local.set $10 - local.get $0 - local.get $4 + local.set $4 + local.get $10 + local.get $7 + local.get $8 local.get $2 - local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 i64.load i64.store - local.get $0 local.get $10 + local.get $4 i64.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0129 end end end - local.get $5 + local.get $3 i32.store offset=16 - local.get $5 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 i64.ne br_if $folding-inner32 - local.get $5 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 i64.ne br_if $folding-inner33 - local.get $5 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 i64.ne br_if $folding-inner34 - local.get $5 + local.get $3 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -56603,221 +56605,221 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.const 20 memory.fill - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $9 + local.tee $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $7 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $5 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|053130 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $5 - local.get $16 + local.get $7 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|053130 end end i32.const 0 - local.set $0 - local.get $7 + local.set $1 + local.get $3 i32.load offset=4 - local.set $4 - local.get $7 + local.set $8 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $3 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $2 + local.set $9 loop $while-continue|0132 - local.get $0 - local.get $3 + local.get $1 + local.get $10 i32.lt_u if - local.get $4 - local.get $0 + local.get $8 + local.get $1 i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 i64.load - local.set $10 + local.set $4 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $4 - local.get $2 - local.get $0 i32.sub i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 i64.load i64.store - local.get $1 - local.get $10 + local.get $11 + local.get $4 i64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0132 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|156 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $9 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get i64.extend_i32_s i64.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|156 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $5 + local.set $7 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $3 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 loop $while-continue|0134 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_u if - local.get $4 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 i64.load - local.set $10 - local.get $0 - local.get $4 + local.set $4 + local.get $10 + local.get $7 + local.get $8 local.get $2 - local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 i64.load i64.store - local.get $0 local.get $10 + local.get $4 i64.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0134 end end end - local.get $5 + local.get $3 i32.store offset=16 - local.get $5 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 i64.ne br_if $folding-inner32 - local.get $5 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 i64.ne br_if $folding-inner33 - local.get $5 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 i64.ne br_if $folding-inner34 - local.get $5 + local.get $3 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -56836,221 +56838,221 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.const 20 memory.fill - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $9 + local.tee $2 call $~lib/typedarray/Float32Array#constructor - local.tee $7 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $2 call $~lib/typedarray/Float32Array#constructor - local.tee $5 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|061 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $5 - local.get $16 + local.get $7 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|061 end end i32.const 0 - local.set $0 - local.get $7 + local.set $1 + local.get $3 i32.load offset=4 - local.set $4 - local.get $7 + local.set $8 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $3 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $2 + local.set $9 loop $while-continue|0135 - local.get $0 - local.get $3 + local.get $1 + local.get $10 i32.lt_u if - local.get $4 - local.get $0 + local.get $8 + local.get $1 i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 f32.load - local.set $6 + local.set $5 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $4 - local.get $2 - local.get $0 i32.sub i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $11 f32.load f32.store - local.get $1 - local.get $6 + local.get $11 + local.get $5 f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0135 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|164 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $9 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get f32.convert_i32_s f32.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|164 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $5 + local.set $7 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $3 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 loop $while-continue|0137 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_u if - local.get $4 - local.get $1 + local.get $7 + local.get $2 i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 f32.load - local.set $6 - local.get $0 - local.get $4 + local.set $5 + local.get $10 + local.get $7 + local.get $8 local.get $2 - local.get $1 i32.sub i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $10 f32.load f32.store - local.get $0 - local.get $6 + local.get $10 + local.get $5 f32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0137 end end end - local.get $5 + local.get $3 i32.store offset=16 - local.get $5 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 f32.ne br_if $folding-inner32 - local.get $5 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 f32.ne br_if $folding-inner33 - local.get $5 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 f32.ne br_if $folding-inner34 - local.get $5 + local.get $3 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -57069,222 +57071,222 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.const 20 memory.fill - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $9 + local.tee $2 call $~lib/typedarray/Float64Array#constructor - local.tee $7 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $2 call $~lib/typedarray/Float64Array#constructor - local.tee $5 + local.tee $7 i32.store offset=8 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|069 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $5 - local.get $16 + local.get $7 + local.get $1 i32.const 7616 - local.get $16 + local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|069 end end i32.const 0 - local.set $0 - local.get $7 + local.set $1 + local.get $3 i32.load offset=4 - local.set $4 - local.get $7 + local.set $8 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $9 i32.const 1 i32.gt_u if - local.get $1 + local.get $9 i32.const 1 i32.shr_u - local.set $3 - local.get $1 + local.set $10 + local.get $9 i32.const 1 i32.sub - local.set $2 + local.set $9 loop $while-continue|0138 - local.get $0 - local.get $3 + local.get $1 + local.get $10 i32.lt_u if - local.get $4 - local.get $0 + local.get $8 + local.get $1 i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 f64.load - local.set $8 + local.set $6 + local.get $11 + local.get $8 + local.get $9 local.get $1 - local.get $4 - local.get $2 - local.get $0 i32.sub i32.const 3 i32.shl i32.add - local.tee $1 + local.tee $11 f64.load f64.store - local.get $1 - local.get $8 + local.get $11 + local.get $6 f64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0138 end end end i32.const 0 - local.set $16 + local.set $1 loop $for-loop|172 - local.get $9 - local.get $16 - i32.gt_s + local.get $1 + local.get $2 + i32.lt_s if - local.get $7 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $9 + local.get $2 i32.const 1 i32.sub - local.get $16 + local.get $1 i32.sub call $~lib/array/Array#__get f64.convert_i32_s f64.ne br_if $folding-inner31 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|172 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $5 + local.set $7 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $8 i32.const 1 i32.gt_u if - local.get $0 + local.get $8 i32.const 1 i32.shr_u - local.set $3 - local.get $0 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $2 + local.set $8 loop $while-continue|0140 - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.lt_u if - local.get $4 - local.get $1 + local.get $7 + local.get $2 i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 f64.load - local.set $8 - local.get $0 - local.get $4 + local.set $6 + local.get $10 + local.get $7 + local.get $8 local.get $2 - local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $0 + local.tee $10 f64.load f64.store - local.get $0 - local.get $8 + local.get $10 + local.get $6 f64.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0140 end end end - local.get $5 + local.get $3 i32.store offset=16 - local.get $5 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 f64.ne br_if $folding-inner32 - local.get $5 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 f64.ne br_if $folding-inner33 - local.get $5 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 f64.ne br_if $folding-inner34 - local.get $5 + local.get $3 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -57308,33 +57310,31 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=12 - local.get $4 + local.get $2 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set - i32.const 0 - local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $3 i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $7 loop $while-continue|0141 local.get $0 local.get $3 i32.lt_s if - local.get $2 + local.get $7 local.get $0 local.tee $1 i32.const 3 @@ -57367,44 +57367,44 @@ end block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.set $16 + local.set $1 i32.const 0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $4 + local.get $2 i32.load offset=4 - local.set $0 + local.set $2 loop $while-continue|0142 + local.get $0 local.get $1 - local.get $16 i32.gt_s if i32.const 1 - local.get $0 - local.get $16 + local.get $2 + local.get $1 i32.const 3 i32.shl i32.add f64.load - local.tee $8 + local.tee $6 f64.const nan:0x8000000000000 f64.eq - local.get $8 - local.get $8 + local.get $6 + local.get $6 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $while-continue|0142 end end @@ -57422,35 +57422,35 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $1 i32.store offset=24 - local.get $4 + local.get $1 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set i32.const 0 local.set $0 i32.const -1 - local.set $1 + local.set $2 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u local.tee $3 i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 + local.set $7 loop $while-continue|0143 local.get $0 local.get $3 i32.lt_s if - local.get $2 + local.get $7 local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.shl i32.add @@ -57458,7 +57458,7 @@ f32.const nan:0x400000 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $1 + local.get $2 i32.const 1 i32.add local.set $0 @@ -57466,9 +57466,9 @@ end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -57481,44 +57481,44 @@ end block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.set $1 + local.set $2 i32.const 0 - local.get $4 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $4 + local.get $1 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|077 - local.get $1 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if i32.const 1 - local.get $0 local.get $1 + local.get $2 i32.const 2 i32.shl i32.add f32.load - local.tee $6 + local.tee $5 f32.const nan:0x400000 f32.eq - local.get $6 - local.get $6 + local.get $5 + local.get $5 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|077 end end @@ -57551,41 +57551,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -57599,13 +57599,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -57645,56 +57645,56 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -57721,56 +57721,56 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -57797,41 +57797,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -57845,13 +57845,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -57891,41 +57891,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -57939,13 +57939,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -57985,41 +57985,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -58033,13 +58033,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58079,41 +58079,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -58127,13 +58127,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58173,41 +58173,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -58221,13 +58221,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58267,41 +58267,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -58315,13 +58315,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58361,41 +58361,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 4 f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -58409,13 +58409,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58455,41 +58455,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -58503,13 +58503,13 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -58596,51 +58596,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|083 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|083 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -58654,60 +58654,60 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $7 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $8 + local.get $7 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 - local.get $3 + local.get $7 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $7 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $3 + local.get $7 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|187 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Int8Array#__get - local.get $0 - local.get $16 + local.get $7 + local.get $1 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|187 end end @@ -58734,29 +58734,29 @@ local.get $0 i32.const 10940 i32.load - local.tee $3 + local.tee $0 call $~lib/typedarray/Uint8Array#constructor local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|092144 - local.get $3 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if local.get $2 - local.get $16 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|092144 end end @@ -58764,50 +58764,50 @@ local.tee $1 local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 + local.get $3 local.get $2 i32.load offset=4 local.get $2 i32.load i32.sub - local.tee $0 + local.tee $1 local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $0 + local.tee $3 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|197 - local.get $3 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if local.get $2 - local.get $16 + local.get $1 call $~lib/typedarray/Uint8Array#__get - local.get $0 - local.get $16 + local.get $3 + local.get $1 call $~lib/typedarray/Uint8Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|197 end end @@ -58834,52 +58834,52 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0102145 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0102145 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -58893,60 +58893,60 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $7 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $8 + local.get $7 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 - local.get $3 + local.get $7 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $7 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $3 + local.get $7 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1107 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get - local.get $0 - local.get $16 + local.get $7 + local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1107 end end @@ -58973,51 +58973,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0112147 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0112147 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59033,11 +59033,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 1 i32.and br_if $folding-inner20 @@ -59045,48 +59045,48 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1117 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1117 end end @@ -59113,52 +59113,52 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0122 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0122 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59174,11 +59174,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 1 i32.and br_if $folding-inner20 @@ -59186,48 +59186,48 @@ i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1127 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1127 end end @@ -59254,50 +59254,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0132 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0132 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59313,11 +59313,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and br_if $folding-inner20 @@ -59325,48 +59325,48 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1137 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1137 end end @@ -59393,50 +59393,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0142 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0142 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59452,11 +59452,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and br_if $folding-inner20 @@ -59464,48 +59464,48 @@ i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1147 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1147 end end @@ -59532,51 +59532,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0152 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0152 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59592,11 +59592,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and br_if $folding-inner20 @@ -59604,48 +59604,48 @@ i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1157 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1157 end end @@ -59672,51 +59672,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0162 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0162 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59732,11 +59732,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and br_if $folding-inner20 @@ -59744,48 +59744,48 @@ i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1167 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1167 end end @@ -59812,51 +59812,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0172 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0172 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -59872,11 +59872,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and br_if $folding-inner20 @@ -59884,48 +59884,48 @@ i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1177 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1177 end end @@ -59952,51 +59952,51 @@ local.get $0 i32.const 10940 i32.load - local.tee $5 + local.tee $0 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|0182 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 i32.const 10928 - local.get $16 + local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|0182 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $3 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -60012,11 +60012,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and br_if $folding-inner20 @@ -60024,48 +60024,48 @@ i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 - local.set $16 + local.set $1 loop $for-loop|1187 - local.get $5 - local.get $16 + local.get $0 + local.get $1 i32.gt_s if - local.get $4 - local.get $16 + local.get $2 + local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $0 - local.get $16 + local.get $8 + local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne br_if $folding-inner19 - local.get $16 + local.get $1 i32.const 1 i32.add - local.set $16 + local.set $1 br $for-loop|1187 end end @@ -60087,126 +60087,126 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 f32.const 400 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const inf call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $3 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $3 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $3 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $5 + local.tee $7 i32.store offset=16 - local.get $5 + local.get $7 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $5 + local.get $7 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.load offset=8 local.get $0 i32.load offset=8 + local.get $1 + i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.add i32.lt_s br_if $folding-inner22 - local.get $7 + local.get $0 i32.load offset=4 i32.const 1 i32.add - local.set $3 - local.get $0 + local.set $8 + local.get $1 i32.load offset=4 - local.set $2 - local.get $0 + local.set $9 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $2 loop $for-loop|0193 - local.get $0 local.get $1 + local.get $2 i32.gt_s if - local.get $1 - local.get $3 + local.get $2 + local.get $8 i32.add f32.const 0 f32.const 255 + local.get $9 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add f32.load - local.tee $6 + local.tee $5 f32.min f32.max i32.trunc_sat_f32_u i32.const 0 - local.get $6 - local.get $6 + local.get $5 + local.get $5 f32.sub f32.const 0 f32.eq select i32.store8 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0193 end end - local.get $7 - local.get $4 + local.get $0 + local.get $3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> - local.get $7 + local.get $0 i32.load offset=8 - local.get $5 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -60214,53 +60214,53 @@ i32.add i32.lt_s br_if $folding-inner22 - local.get $7 + local.get $0 i32.load offset=4 i32.const 8 i32.add - local.set $4 - local.get $5 + local.set $1 + local.get $7 i32.load offset=4 local.set $3 - local.get $5 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $7 i32.const 0 - local.set $1 + local.set $2 loop $for-loop|0199 - local.get $1 local.get $2 + local.get $7 i32.lt_s if local.get $1 - local.get $4 + local.get $2 i32.add i32.const 255 local.get $3 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $8 i32.sub i32.const 31 i32.shr_s - local.get $0 + local.get $8 i32.or - local.get $0 + local.get $8 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0199 end end @@ -60269,106 +60269,106 @@ i32.const 63 i32.const 15280 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=28 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 300 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 100 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const -1 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $3 i32.store - local.get $5 + local.get $3 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set - local.get $7 - i32.load offset=8 local.get $0 i32.load offset=8 + local.get $1 + i32.load offset=8 i32.const 2 i32.shr_u i32.lt_s br_if $folding-inner22 - local.get $7 - i32.load offset=4 - local.set $4 local.get $0 i32.load offset=4 - local.set $3 - local.get $0 + local.set $7 + local.get $1 + i32.load offset=4 + local.set $8 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 - i32.const 0 local.set $1 + i32.const 0 + local.set $2 loop $for-loop|0205 local.get $1 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 - local.get $4 + local.get $2 + local.get $7 i32.add i32.const 255 - local.get $3 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.tee $0 - local.get $0 + local.tee $9 + local.get $9 i32.const 255 i32.gt_u select i32.store8 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0205 end end - local.get $7 - local.get $5 + local.get $0 + local.get $3 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -60376,12 +60376,12 @@ i32.const 63 i32.const 15312 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 local.set $0 @@ -60403,17 +60403,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -60445,9 +60445,9 @@ i32.const 15344 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 local.get $0 call $~lib/util/sort/SORT @@ -60455,21 +60455,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -60478,25 +60478,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15376 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 15376 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 1 @@ -60526,17 +60526,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -60568,9 +60568,9 @@ i32.const 15408 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 local.get $0 call $~lib/util/sort/SORT @@ -60578,21 +60578,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -60601,25 +60601,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15440 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 15440 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 1 @@ -60649,17 +60649,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -60691,9 +60691,9 @@ i32.const 15472 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 local.get $0 call $~lib/util/sort/SORT @@ -60701,21 +60701,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -60724,25 +60724,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15504 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 15504 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 @@ -60772,17 +60772,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -60814,9 +60814,9 @@ i32.const 15536 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -60826,21 +60826,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -60849,27 +60849,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15568 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15568 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 1 @@ -60899,17 +60899,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -60941,9 +60941,9 @@ i32.const 15600 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -60953,21 +60953,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -60976,27 +60976,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15632 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15632 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 1 @@ -61026,17 +61026,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -61068,9 +61068,9 @@ i32.const 15664 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -61080,21 +61080,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -61103,27 +61103,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15696 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15696 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -61153,17 +61153,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -61195,9 +61195,9 @@ i32.const 15728 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -61207,21 +61207,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -61230,27 +61230,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15760 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15760 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 1 @@ -61280,17 +61280,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 0 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -61322,9 +61322,9 @@ i32.const 15792 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -61334,21 +61334,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -61357,27 +61357,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15824 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15824 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 1 @@ -61407,17 +61407,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 0 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -61449,9 +61449,9 @@ i32.const 15856 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -61461,21 +61461,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -61484,27 +61484,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15888 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 1 @@ -61534,17 +61534,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 2 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 0 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -61576,9 +61576,9 @@ i32.const 15920 i32.store end - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -61588,21 +61588,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner36 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner37 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -61611,27 +61611,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15952 i32.store offset=8 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15952 call $~lib/util/sort/SORT - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne br_if $folding-inner39 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner40 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 1 diff --git a/tests/compiler/wasi/abort.release.wat b/tests/compiler/wasi/abort.release.wat index 92a18cbb31..057961b964 100644 --- a/tests/compiler/wasi/abort.release.wat +++ b/tests/compiler/wasi/abort.release.wat @@ -22,12 +22,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $2of2 + block $0of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $2of2 $2of2 $2of2 $outOfRange + br_table $0of2 $0of2 $0of2 $outOfRange end unreachable end diff --git a/tests/compiler/wasi/trace.release.wat b/tests/compiler/wasi/trace.release.wat index b2c02e1f68..7c56b38c05 100644 --- a/tests/compiler/wasi/trace.release.wat +++ b/tests/compiler/wasi/trace.release.wat @@ -43,12 +43,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $2of2 + block $0of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $2of2 $2of2 $2of2 $outOfRange + br_table $0of2 $0of2 $0of2 $outOfRange end unreachable end From 318de98f007093715258602016020200fe22cb4b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 09:57:26 +0300 Subject: [PATCH 06/38] simplify update-constants --- scripts/update-constants.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 2660345af5..8ef7161811 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,10 +11,6 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { - // ignore binaryen types which should cached in runtime - if (/\bignore\b/.test(val)) { - return $0; - } var match = val.match(/\b(_(?:Binaryen|Relooper|ExpressionRunner)\w+)\b/); if (match) { let fn = match[1]; From cba4ddceeb57d8e32c9523cee018f08f948d7dd2 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 10:01:14 +0300 Subject: [PATCH 07/38] refactor TypeRef --- src/module.ts | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/module.ts b/src/module.ts index 54e83ad5ac..56c7258567 100644 --- a/src/module.ts +++ b/src/module.ts @@ -58,13 +58,15 @@ export namespace TypeRef { export const F32: TypeRef = 4 /* _BinaryenTypeFloat32 */; export const F64: TypeRef = 5 /* _BinaryenTypeFloat64 */; export const V128: TypeRef = 6 /* _BinaryenTypeVec128 */; - export let Funcref: TypeRef = -1 /* ignore */; - export let Externref: TypeRef = -1 /* ignore */; - export let Anyref: TypeRef = -1 /* ignore */; - export let Eqref: TypeRef = -1 /* ignore */; - export let I31ref: TypeRef = -1 /* ignore */; - export let Dataref: TypeRef = -1 /* ignore */; export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; + + // Will define in Module's constructor + export let Funcref: TypeRef = -1; + export let Externref: TypeRef = -1; + export let Anyref: TypeRef = -1; + export let Eqref: TypeRef = -1; + export let I31ref: TypeRef = -1; + export let Dataref: TypeRef = -1; } /** Binaryen feature constants. */ From 3681c5c58727a9a9e4bf31407d34e67c9efc94fe Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 19:18:32 +0300 Subject: [PATCH 08/38] better --- scripts/update-constants.js | 4 ++++ src/glue/binaryen.d.ts | 2 ++ src/glue/binaryen.js | 15 ++------------- src/module.ts | 29 ++++++++++++----------------- 4 files changed, 20 insertions(+), 30 deletions(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 8ef7161811..45b2ac50f1 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,6 +11,10 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { + // ignore binaryen types which should cacheed in runtime + if (val.startsWith("binaryen.")) { + return $0; + } var match = val.match(/\b(_(?:Binaryen|Relooper|ExpressionRunner)\w+)\b/); if (match) { let fn = match[1]; diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index ab1f05f196..7cf557efb4 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -602,6 +602,8 @@ export declare function _BinaryenModuleOptimize(module: ModuleRef): void; export declare function _BinaryenModuleRunPasses(module: ModuleRef, passes: ArrayRef, numPasses: Index): void; export declare function _BinaryenModuleAutoDrop(module: ModuleRef): void; export declare function _BinaryenModuleAllocateAndWrite(out: ArrayRef, module: ModuleRef, sourceMapUrl: StringRef): void; +export declare function _BinaryenModuleAllocateAndWriteText(module: ModuleRef): StringRef; +export declare function _BinaryenModuleAllocateAndWriteStackIR(module: ModuleRef): StringRef; export declare function _BinaryenModuleRead(input: ArrayRef, inputSize: usize): ModuleRef; export declare function _BinaryenModuleInterpret(module: ModuleRef): void; export declare function _BinaryenModuleAddDebugInfoFileName(module: ModuleRef, filename: StringRef): Index; diff --git a/src/glue/binaryen.js b/src/glue/binaryen.js index cb96dcf0fb..02e1400954 100644 --- a/src/glue/binaryen.js +++ b/src/glue/binaryen.js @@ -4,19 +4,6 @@ */ import binaryen from "../../lib/binaryen.js"; -import { Module } from "../module.ts"; - -Module.prototype.toText = function toText(watFormat = true) { - if (watFormat) { - // NOTE: Conversion to StackIR can yield conversion artifacts like sequences - // of unreachable statements not actually emitted by the compiler. Optimizing - // StackIR removes these again, but may also suppress useless code emitted by - // the compiler that's then no longer visible in tests. Both not ideal. - return binaryen.wrapModule(this.ref).emitStackIR(/* optimize-stack-ir */ true); - } else { - return binaryen.wrapModule(this.ref).emitText(); - } -}; export const { _BinaryenTypeCreate, @@ -582,6 +569,8 @@ export const { _BinaryenModuleRunPasses, _BinaryenModuleAutoDrop, _BinaryenModuleAllocateAndWrite, + _BinaryenModuleAllocateAndWriteText, + _BinaryenModuleAllocateAndWriteStackIR, _BinaryenModuleRead, _BinaryenModuleInterpret, _BinaryenModuleAddDebugInfoFileName, diff --git a/src/module.ts b/src/module.ts index 56c7258567..a429e04a76 100644 --- a/src/module.ts +++ b/src/module.ts @@ -58,15 +58,13 @@ export namespace TypeRef { export const F32: TypeRef = 4 /* _BinaryenTypeFloat32 */; export const F64: TypeRef = 5 /* _BinaryenTypeFloat64 */; export const V128: TypeRef = 6 /* _BinaryenTypeVec128 */; + export const Funcref = binaryen._BinaryenTypeFuncref(); + export const Externref = binaryen._BinaryenTypeExternref(); + export const Anyref = binaryen._BinaryenTypeAnyref(); + export const Eqref = binaryen._BinaryenTypeEqref(); + export const I31ref = binaryen._BinaryenTypeI31ref(); + export const Dataref = binaryen._BinaryenTypeDataref(); export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; - - // Will define in Module's constructor - export let Funcref: TypeRef = -1; - export let Externref: TypeRef = -1; - export let Anyref: TypeRef = -1; - export let Eqref: TypeRef = -1; - export let I31ref: TypeRef = -1; - export let Dataref: TypeRef = -1; } /** Binaryen feature constants. */ @@ -1104,14 +1102,6 @@ export class Module { ) { assert(sizeType == TypeRef.I32 || sizeType == TypeRef.I64); this.lit = binaryen._malloc(binaryen._BinaryenSizeofLiteral()); - - // cache heap types - TypeRef.Funcref = binaryen._BinaryenTypeFuncref(); - TypeRef.Externref = binaryen._BinaryenTypeExternref(); - TypeRef.Anyref = binaryen._BinaryenTypeAnyref(); - TypeRef.Eqref = binaryen._BinaryenTypeEqref(); - TypeRef.I31ref = binaryen._BinaryenTypeI31ref(); - TypeRef.Dataref = binaryen._BinaryenTypeDataref(); } private lit: usize; @@ -2532,7 +2522,12 @@ export class Module { } toText(watFormat: bool = true): string { - throw new Error("not implemented"); // JS glue overrides this + var textPtr = watFormat + ? binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref) + : binaryen._BinaryenModuleAllocateAndWriteText(this.ref); + var text = readString(textPtr); + if (textPtr) binaryen._free(textPtr); + return text || ""; } private cachedStringsToPointers: Map = new Map(); From 9f76a5a97dae42c56a002b15f3392c6810fc248c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 19:35:13 +0300 Subject: [PATCH 09/38] better comment --- scripts/update-constants.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 45b2ac50f1..9c3d4d91fa 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,7 +11,7 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { - // ignore binaryen types which should cacheed in runtime + // ignore values which has runtime assignments if (val.startsWith("binaryen.")) { return $0; } From 6203797fbf37d6f963098fb7ba4263bdf95e2034 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 19:36:37 +0300 Subject: [PATCH 10/38] typo --- scripts/update-constants.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/update-constants.js b/scripts/update-constants.js index 9c3d4d91fa..572aabaab7 100644 --- a/scripts/update-constants.js +++ b/scripts/update-constants.js @@ -11,7 +11,7 @@ const srcfile = path.join(__dirname, "..", "src", "module.ts"); var src = fs.readFileSync(srcfile, "utf8") .replace(/(?:enum|namespace) (\w+) \{([^}]*)\}/g, function($0) { return $0.replace(/(\w+)[ ]+=[ ]+([^,;\n]+)/g, function($0, key, val) { - // ignore values which has runtime assignments + // ignore values which have runtime assignments if (val.startsWith("binaryen.")) { return $0; } From 4c736c5cbfb117313ca98858ba94be9de98b5d98 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Jul 2022 20:04:39 +0300 Subject: [PATCH 11/38] run stack-ir passes for watFormat --- src/module.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/module.ts b/src/module.ts index a429e04a76..5b4bbc09db 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2522,9 +2522,16 @@ export class Module { } toText(watFormat: bool = true): string { - var textPtr = watFormat - ? binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref) - : binaryen._BinaryenModuleAllocateAndWriteText(this.ref); + var textPtr: usize = 0; + if (watFormat) { + this.runPasses([ + 'generate-stack-ir', + 'optimize-stack-ir' + ]); + textPtr = binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref); + } else { + textPtr = binaryen._BinaryenModuleAllocateAndWriteText(this.ref); + } var text = readString(textPtr); if (textPtr) binaryen._free(textPtr); return text || ""; From 232a197120a1d19abd07c0c4001a95e351c50896 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 27 Jul 2022 07:29:56 +0300 Subject: [PATCH 12/38] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 56a1c0f150..6013c00f8b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220726", + "binaryen": "109.0.0-nightly.20220727", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220726", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220726.tgz", - "integrity": "sha512-Bl4Yeqg6gN4Wfm5kPqQm3BUhLtpd9y3xLLQOIK+NKrbFNX1o6fMQyMlSI5e1mnYuiRMGUk9GqSetvU/Suyxi9g==", + "version": "109.0.0-nightly.20220727", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220727.tgz", + "integrity": "sha512-4PayRX//66IJqFknLwqrXPRL5woloj70FOZwv0yJMR5XU8wxoIih/uryWSH6dBUvUtRSpVSR6py4bsAZhKhdSg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220726", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220726.tgz", - "integrity": "sha512-Bl4Yeqg6gN4Wfm5kPqQm3BUhLtpd9y3xLLQOIK+NKrbFNX1o6fMQyMlSI5e1mnYuiRMGUk9GqSetvU/Suyxi9g==" + "version": "109.0.0-nightly.20220727", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220727.tgz", + "integrity": "sha512-4PayRX//66IJqFknLwqrXPRL5woloj70FOZwv0yJMR5XU8wxoIih/uryWSH6dBUvUtRSpVSR6py4bsAZhKhdSg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 06b1955ab9..e2ad951043 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220726", + "binaryen": "109.0.0-nightly.20220727", "long": "^5.2.0" }, "devDependencies": { From ad0ef3eda2b10aa1bdeccfb45a011e5168e04782 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 27 Jul 2022 07:32:51 +0300 Subject: [PATCH 13/38] simplify toText back --- src/module.ts | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/module.ts b/src/module.ts index 5b4bbc09db..181bd45860 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2522,16 +2522,9 @@ export class Module { } toText(watFormat: bool = true): string { - var textPtr: usize = 0; - if (watFormat) { - this.runPasses([ - 'generate-stack-ir', - 'optimize-stack-ir' - ]); - textPtr = binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref); - } else { - textPtr = binaryen._BinaryenModuleAllocateAndWriteText(this.ref); - } + var textPtr = watFormat + ? binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref) // TODO: add optimize arg + : binaryen._BinaryenModuleAllocateAndWriteText(this.ref); var text = readString(textPtr); if (textPtr) binaryen._free(textPtr); return text || ""; From f15af2502ba229df557a30e4f6b1f7ea7d75b3dc Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 27 Jul 2022 07:44:45 +0300 Subject: [PATCH 14/38] add uncheckeds for glue helpers in module --- src/module.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/module.ts b/src/module.ts index 181bd45860..6a4d3b13a9 100644 --- a/src/module.ts +++ b/src/module.ts @@ -3120,7 +3120,7 @@ function allocU8Array(u8s: Uint8Array | null): usize { var len = u8s.length; var ptr = binaryen._malloc(len); for (let i = 0; i < len; ++i) { - binaryen.__i32_store8(ptr + i, u8s[i]); + binaryen.__i32_store8(ptr + i, unchecked(u8s[i])); } return ptr; } @@ -3131,7 +3131,7 @@ function allocI32Array(i32s: i32[] | null): usize { var ptr = binaryen._malloc(len << 2); var idx = ptr; for (let i = 0; i < len; ++i) { - let val = i32s[i]; + let val = unchecked(i32s[i]); binaryen.__i32_store(idx, val); idx += 4; } @@ -3144,7 +3144,7 @@ function allocU32Array(u32s: u32[] | null): usize { var ptr = binaryen._malloc(len << 2); var idx = ptr; for (let i = 0; i < len; ++i) { - let val = u32s[i]; + let val = unchecked(u32s[i]); binaryen.__i32_store(idx, val); idx += 4; } @@ -3159,7 +3159,7 @@ export function allocPtrArray(ptrs: usize[] | null): usize { var ptr = binaryen._malloc(len << 2); var idx = ptr; for (let i = 0, k = len; i < k; ++i) { - let val = ptrs[i]; + let val = unchecked(ptrs[i]); binaryen.__i32_store(idx, val); idx += 4; } @@ -3230,7 +3230,7 @@ function allocString(str: string | null): usize { function readBuffer(ptr: usize, len: i32): Uint8Array { var ret = new Uint8Array(len); for (let i = 0; i < len; ++i) { - ret[i] = binaryen.__i32_load8_u(ptr + i); + unchecked(ret[i] = binaryen.__i32_load8_u(ptr + i)); } return ret; } From 62bf533a7d4f698c39a3b0aa339463dfb69adc34 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 28 Jul 2022 01:18:47 +0300 Subject: [PATCH 15/38] add Strings to FeatureFlags. More uncheckeds --- src/module.ts | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/src/module.ts b/src/module.ts index 6a4d3b13a9..f466018e17 100644 --- a/src/module.ts +++ b/src/module.ts @@ -85,6 +85,7 @@ export enum FeatureFlags { FunctionReferences = 4096 /* _BinaryenFeatureTypedFunctionReferences */, RelaxedSIMD = 16384 /* _BinaryenFeatureRelaxedSIMD */, ExtendedConst = 32768 /* _BinaryenFeatureExtendedConst */, + Strings = 65536 /* _BinaryenFeatureStringss */, All = 122879 /* _BinaryenFeatureAll */ } @@ -1173,7 +1174,7 @@ export class Module { assert(bytes.length == 16); var out = this.lit; for (let i = 0; i < 16; ++i) { - binaryen.__i32_store8(out + i, bytes[i]); + binaryen.__i32_store8(out + i, unchecked(bytes[i])); } binaryen._BinaryenLiteralVec128(out, out); return binaryen._BinaryenConst(this.ref, out); @@ -1545,7 +1546,7 @@ export class Module { var numNames = names.length; var strs = new Array(numNames); for (let i = 0; i < numNames; ++i) { - strs[i] = this.allocStringCached(names[i]); + unchecked(strs[i] = this.allocStringCached(names[i])); } var cArr = allocPtrArray(strs); var cStr = this.allocStringCached(defaultName); @@ -2080,15 +2081,16 @@ export class Module { var offs = new Array(k); var sizs = new Array(k); for (let i = 0; i < k; ++i) { - let segment = segments[i]; + let segment = unchecked(segments[i]); let buffer = segment.buffer; let offset = segment.offset; - segs[i] = allocU8Array(buffer); - psvs[i] = 0; // no passive segments currently - offs[i] = target == Target.WASM64 + unchecked(segs[i] = allocU8Array(buffer)); + unchecked(psvs[i] = 0); // no passive segments currently + unchecked(offs[i] = target == Target.WASM64 ? this.i64(i64_low(offset), i64_high(offset)) - : this.i32(i64_low(offset)); - sizs[i] = buffer.length; + : this.i32(i64_low(offset)) + ); + unchecked(sizs[i] = buffer.length); } var cArr1 = allocPtrArray(segs); var cArr2 = allocU8Array(psvs); @@ -2102,7 +2104,7 @@ export class Module { binaryen._free(cArr2); binaryen._free(cArr1); for (let i = k - 1; i >= 0; --i) { - binaryen._free(segs[i]); + binaryen._free(unchecked(segs[i])); } } @@ -2122,7 +2124,7 @@ export class Module { var numNames = funcs.length; var names = new Array(numNames); for (let i = 0; i < numNames; ++i) { - names[i] = this.allocStringCached(funcs[i]); + unchecked(names[i] = this.allocStringCached(funcs[i])); } var cArr = allocPtrArray(names); var tableRef = binaryen._BinaryenGetTable(this.ref, cStr); @@ -2675,7 +2677,7 @@ export function expandType(type: TypeRef): TypeRef[] { binaryen._BinaryenTypeExpand(type, cArr); var types = new Array(arity); for (let i: u32 = 0; i < arity; ++i) { - types[i] = binaryen.__i32_load(cArr + (i << 2)); + unchecked(types[i] = binaryen.__i32_load(cArr + (i << 2))); } binaryen._free(cArr); return types; @@ -2912,7 +2914,7 @@ export function getFunctionVars(func: FunctionRef): TypeRef[] { var count = binaryen._BinaryenFunctionGetNumVars(func); var types = new Array(count); for (let i: Index = 0; i < count; ++i) { - types[i] = binaryen._BinaryenFunctionGetVar(func, i); + unchecked(types[i] = binaryen._BinaryenFunctionGetVar(func, i)); } return types; } @@ -3048,17 +3050,17 @@ export class SwitchBuilder { var entry = new Array(1 + numValues + 1); var labels = new Array(numCases); for (let i = 0; i < numCases; ++i) { - labels[i] = `case${i}${labelPostfix}`; + unchecked(labels[i] = `case${i}${labelPostfix}`); } entry[0] = module.local_set(localIndex, this.condition, false); // u32 for (let i = 0; i < numValues; ++i) { - let index = indexes[i]; - entry[1 + i] = module.br(labels[index], + let index = unchecked(indexes[i]); + unchecked(entry[1 + i] = module.br(labels[index], module.binary(BinaryOp.EqI32, module.local_get(localIndex, TypeRef.I32), module.i32(values[i]) ) - ); + )); } var defaultIndex = this.defaultIndex; var defaultLabel = `default${labelPostfix}`; @@ -3071,7 +3073,7 @@ export class SwitchBuilder { for (let i = 1; i < numCases; ++i) { let block = cases[i - 1]; block.unshift(current); - current = module.block(labels[i], block); + current = module.block(unchecked(labels[i]), block); } var lastCase = cases[numCases - 1]; lastCase.unshift(current); From 32bef8f4d21556a754f40e294e263a33dfb702d9 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 28 Jul 2022 05:41:08 +0300 Subject: [PATCH 16/38] update binaryen. Add stringref types --- package-lock.json | 14 +++++++------- package.json | 2 +- src/glue/binaryen.d.ts | 4 ++++ src/glue/binaryen.js | 4 ++++ src/module.ts | 6 +++++- 5 files changed, 21 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6013c00f8b..e96f35fffe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220727", + "binaryen": "109.0.0-nightly.20220728", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220727", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220727.tgz", - "integrity": "sha512-4PayRX//66IJqFknLwqrXPRL5woloj70FOZwv0yJMR5XU8wxoIih/uryWSH6dBUvUtRSpVSR6py4bsAZhKhdSg==", + "version": "109.0.0-nightly.20220728", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220728.tgz", + "integrity": "sha512-/r211zBKPAi0fZoCKHejamt3SLKsocLgvzPZ4CAVHecPUJTPFe3yGogmzblp9g5JT4ubU0itMgY6/U0W5XgIdg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220727", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220727.tgz", - "integrity": "sha512-4PayRX//66IJqFknLwqrXPRL5woloj70FOZwv0yJMR5XU8wxoIih/uryWSH6dBUvUtRSpVSR6py4bsAZhKhdSg==" + "version": "109.0.0-nightly.20220728", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220728.tgz", + "integrity": "sha512-/r211zBKPAi0fZoCKHejamt3SLKsocLgvzPZ4CAVHecPUJTPFe3yGogmzblp9g5JT4ubU0itMgY6/U0W5XgIdg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index e2ad951043..6950ae77fa 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220727", + "binaryen": "109.0.0-nightly.20220728", "long": "^5.2.0" }, "devDependencies": { diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index 7cf557efb4..49597a8f9f 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -44,6 +44,10 @@ export declare function _BinaryenTypeAnyref(): TypeRef; export declare function _BinaryenTypeEqref(): TypeRef; export declare function _BinaryenTypeI31ref(): TypeRef; export declare function _BinaryenTypeDataref(): TypeRef; +export declare function _BinaryenTypeStringref(): TypeRef; +export declare function _BinaryenTypeStringviewWTF8(): TypeRef; +export declare function _BinaryenTypeStringviewWTF16(): TypeRef; +export declare function _BinaryenTypeStringviewIter(): TypeRef; export declare function _BinaryenModuleCreate(): ModuleRef; export declare function _BinaryenModuleDispose(module: ModuleRef): void; diff --git a/src/glue/binaryen.js b/src/glue/binaryen.js index 02e1400954..5fa0fb290b 100644 --- a/src/glue/binaryen.js +++ b/src/glue/binaryen.js @@ -16,6 +16,10 @@ export const { _BinaryenTypeEqref, _BinaryenTypeI31ref, _BinaryenTypeDataref, + _BinaryenTypeStringref, + _BinaryenTypeStringviewWTF8, + _BinaryenTypeStringviewWTF16, + _BinaryenTypeStringviewIter, _BinaryenModuleCreate, _BinaryenModuleDispose, diff --git a/src/module.ts b/src/module.ts index f466018e17..5568d2ab2d 100644 --- a/src/module.ts +++ b/src/module.ts @@ -64,6 +64,10 @@ export namespace TypeRef { export const Eqref = binaryen._BinaryenTypeEqref(); export const I31ref = binaryen._BinaryenTypeI31ref(); export const Dataref = binaryen._BinaryenTypeDataref(); + export const Stringref = binaryen._BinaryenTypeStringref(); + export const StringviewWTF8 = binaryen._BinaryenTypeStringviewWTF8(); + export const StringviewWTF16 = binaryen._BinaryenTypeStringviewWTF16(); + export const StringviewIter = binaryen._BinaryenTypeStringviewIter(); export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; } @@ -85,7 +89,7 @@ export enum FeatureFlags { FunctionReferences = 4096 /* _BinaryenFeatureTypedFunctionReferences */, RelaxedSIMD = 16384 /* _BinaryenFeatureRelaxedSIMD */, ExtendedConst = 32768 /* _BinaryenFeatureExtendedConst */, - Strings = 65536 /* _BinaryenFeatureStringss */, + Strings = 65536 /* _BinaryenFeatureStrings */, All = 122879 /* _BinaryenFeatureAll */ } From 34702fa3596e7a1368f7ed07228a7f1807d9e9a7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 28 Jul 2022 06:22:47 +0300 Subject: [PATCH 17/38] upd --- package-lock.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index ddb0e48cf3..92b50bd456 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,10 +30,6 @@ "node": ">=16.0.0", "npm": ">=7.0.0" }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - }, "funding": { "type": "opencollective", "url": "https://opencollective.com/assemblyscript" From 577ed1182bd5392952a0d51daedd4112f194b71b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 06:53:13 +0300 Subject: [PATCH 18/38] update binaryen --- package-lock.json | 14 +- package.json | 2 +- src/glue/binaryen.d.ts | 2 +- src/module.ts | 2 +- tests/compiler/assert-nonnull.release.wat | 2 + tests/compiler/bindings/esm.release.wat | 12 + tests/compiler/bindings/raw.release.wat | 12 + tests/compiler/call-super.release.wat | 2 + tests/compiler/class-implements.release.wat | 2 + .../class-overloading-cast.release.wat | 2 + tests/compiler/class-overloading.release.wat | 2 + tests/compiler/class.release.wat | 2 + tests/compiler/constructor.release.wat | 2 + tests/compiler/do.release.wat | 2 + tests/compiler/duplicate-fields.release.wat | 2 + .../compiler/empty-exportruntime.release.wat | 2 + tests/compiler/empty-new.release.wat | 2 + .../exportstar-rereexport.release.wat | 2 + .../extends-baseaggregate.release.wat | 2 + tests/compiler/extends-recursive.release.wat | 2 + .../compiler/field-initialization.release.wat | 4 + tests/compiler/field.release.wat | 2 + tests/compiler/for.release.wat | 2 + tests/compiler/function-call.release.wat | 2 + .../compiler/function-expression.release.wat | 2 + tests/compiler/function-types.release.wat | 2 + tests/compiler/getter-call.release.wat | 4 + tests/compiler/heap.release.wat | 2 + tests/compiler/infer-array.release.wat | 10 + tests/compiler/infer-generic.release.wat | 2 + tests/compiler/inlining.release.wat | 4 + tests/compiler/instanceof-class.release.wat | 2 + tests/compiler/issues/1095.release.wat | 2 + tests/compiler/issues/1225.release.wat | 2 + tests/compiler/issues/1699.release.wat | 2 + tests/compiler/issues/2166.release.wat | 2 + tests/compiler/issues/2322/index.release.wat | 2 + tests/compiler/logical.release.wat | 2 + tests/compiler/managed-cast.release.wat | 2 + tests/compiler/memory.release.wat | 10 + tests/compiler/new.release.wat | 2 + tests/compiler/number.release.wat | 2 + tests/compiler/object-literal.release.wat | 6 + .../optional-typeparameters.release.wat | 2 + tests/compiler/reexport.release.wat | 2 + tests/compiler/rereexport.release.wat | 2 + tests/compiler/resolve-access.release.wat | 6 + tests/compiler/resolve-binary.release.wat | 2 + .../resolve-elementaccess.release.wat | 2 + .../resolve-function-expression.release.wat | 4 + tests/compiler/resolve-new.release.wat | 2 + .../resolve-propertyaccess.release.wat | 2 + tests/compiler/resolve-ternary.release.wat | 2 + tests/compiler/resolve-unary.release.wat | 2 + tests/compiler/return-unreachable.release.wat | 2 + tests/compiler/rt/finalize.release.wat | 2 + tests/compiler/rt/instanceof.release.wat | 2 + .../rt/runtime-incremental-export.release.wat | 2 + .../rt/runtime-minimal-export.release.wat | 4 + tests/compiler/simd.release.wat | 2 + tests/compiler/std-wasi/console.release.wat | 4 + tests/compiler/std-wasi/crypto.release.wat | 6 + tests/compiler/std-wasi/process.release.wat | 6 + tests/compiler/std/array-access.release.wat | 10 + tests/compiler/std/array-literal.release.wat | 2 + tests/compiler/std/array.release.wat | 136 +++++++ tests/compiler/std/arraybuffer.release.wat | 2 + tests/compiler/std/dataview.release.wat | 2 + tests/compiler/std/date.release.wat | 24 ++ tests/compiler/std/map.release.wat | 20 + tests/compiler/std/math.release.wat | 14 + tests/compiler/std/new.release.wat | 2 + .../std/operator-overloading.release.wat | 2 + tests/compiler/std/set.release.wat | 22 ++ tests/compiler/std/static-array.release.wat | 2 + tests/compiler/std/staticarray.release.wat | 58 +++ .../std/string-casemapping.release.wat | 6 + .../compiler/std/string-encoding.release.wat | 2 + tests/compiler/std/string.release.wat | 6 + tests/compiler/std/symbol.release.wat | 8 + tests/compiler/std/typedarray.release.wat | 342 ++++++++++++++++++ tests/compiler/std/uri.release.wat | 2 + tests/compiler/super-inline.release.wat | 2 + tests/compiler/templateliteral.release.wat | 8 + tests/compiler/throw.release.wat | 2 + tests/compiler/typeof.release.wat | 2 + tests/compiler/wasi/trace.release.wat | 2 + tests/compiler/while.release.wat | 2 + 88 files changed, 872 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 92b50bd456..47232bbfdf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220728", + "binaryen": "109.0.0-nightly.20220730", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220728", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220728.tgz", - "integrity": "sha512-/r211zBKPAi0fZoCKHejamt3SLKsocLgvzPZ4CAVHecPUJTPFe3yGogmzblp9g5JT4ubU0itMgY6/U0W5XgIdg==", + "version": "109.0.0-nightly.20220730", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220730.tgz", + "integrity": "sha512-pytRpzYsosF+3lwyg/xeZapnVO1Y/lKmILsgYAXV42/KLa/GJvlMjBCwBzQGlGg+zM4CLfb4llZpLXGKnJzceQ==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220728", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220728.tgz", - "integrity": "sha512-/r211zBKPAi0fZoCKHejamt3SLKsocLgvzPZ4CAVHecPUJTPFe3yGogmzblp9g5JT4ubU0itMgY6/U0W5XgIdg==" + "version": "109.0.0-nightly.20220730", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220730.tgz", + "integrity": "sha512-pytRpzYsosF+3lwyg/xeZapnVO1Y/lKmILsgYAXV42/KLa/GJvlMjBCwBzQGlGg+zM4CLfb4llZpLXGKnJzceQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 93834fb657..83cb0004a6 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220728", + "binaryen": "109.0.0-nightly.20220730", "long": "^5.2.0" }, "devDependencies": { diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index 49597a8f9f..f91e469a00 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -607,7 +607,7 @@ export declare function _BinaryenModuleRunPasses(module: ModuleRef, passes: Arra export declare function _BinaryenModuleAutoDrop(module: ModuleRef): void; export declare function _BinaryenModuleAllocateAndWrite(out: ArrayRef, module: ModuleRef, sourceMapUrl: StringRef): void; export declare function _BinaryenModuleAllocateAndWriteText(module: ModuleRef): StringRef; -export declare function _BinaryenModuleAllocateAndWriteStackIR(module: ModuleRef): StringRef; +export declare function _BinaryenModuleAllocateAndWriteStackIR(module: ModuleRef, optimize: bool): StringRef; export declare function _BinaryenModuleRead(input: ArrayRef, inputSize: usize): ModuleRef; export declare function _BinaryenModuleInterpret(module: ModuleRef): void; export declare function _BinaryenModuleAddDebugInfoFileName(module: ModuleRef, filename: StringRef): Index; diff --git a/src/module.ts b/src/module.ts index 5568d2ab2d..3244d05c4c 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2529,7 +2529,7 @@ export class Module { toText(watFormat: bool = true): string { var textPtr = watFormat - ? binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref) // TODO: add optimize arg + ? binaryen._BinaryenModuleAllocateAndWriteStackIR(this.ref, true) : binaryen._BinaryenModuleAllocateAndWriteText(this.ref); var text = readString(textPtr); if (textPtr) binaryen._free(textPtr); diff --git a/tests/compiler/assert-nonnull.release.wat b/tests/compiler/assert-nonnull.release.wat index 24d87c1c20..3ad8fd4a36 100644 --- a/tests/compiler/assert-nonnull.release.wat +++ b/tests/compiler/assert-nonnull.release.wat @@ -139,10 +139,12 @@ end local.get $0 i32.load + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $export:assert-nonnull/testProp (param $0 i32) (result i32) (local $1 i32) diff --git a/tests/compiler/bindings/esm.release.wat b/tests/compiler/bindings/esm.release.wat index a5b58d7702..4a285f1eb4 100644 --- a/tests/compiler/bindings/esm.release.wat +++ b/tests/compiler/bindings/esm.release.wat @@ -1128,6 +1128,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1160,6 +1161,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2438,10 +2440,12 @@ local.get $0 local.get $1 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $export:bindings/esm/stringFunctionOptional@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2491,6 +2495,7 @@ local.get $0 local.get $1 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -2499,6 +2504,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -2912,10 +2918,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -3130,10 +3138,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -3272,10 +3282,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 diff --git a/tests/compiler/bindings/raw.release.wat b/tests/compiler/bindings/raw.release.wat index ca2ce46f08..7fa12720bd 100644 --- a/tests/compiler/bindings/raw.release.wat +++ b/tests/compiler/bindings/raw.release.wat @@ -1128,6 +1128,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1160,6 +1161,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2438,10 +2440,12 @@ local.get $0 local.get $1 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $export:bindings/esm/stringFunctionOptional@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2491,6 +2495,7 @@ local.get $0 local.get $1 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -2499,6 +2504,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -2912,10 +2918,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -3130,10 +3138,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 @@ -3272,10 +3282,12 @@ end br $folding-inner1 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 18608 diff --git a/tests/compiler/call-super.release.wat b/tests/compiler/call-super.release.wat index 1f66273759..b29236e5ae 100644 --- a/tests/compiler/call-super.release.wat +++ b/tests/compiler/call-super.release.wat @@ -884,6 +884,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -916,6 +917,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/class-implements.release.wat b/tests/compiler/class-implements.release.wat index de6f1dc31a..6515a87ad7 100644 --- a/tests/compiler/class-implements.release.wat +++ b/tests/compiler/class-implements.release.wat @@ -898,6 +898,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -930,6 +931,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/class-overloading-cast.release.wat b/tests/compiler/class-overloading-cast.release.wat index 9b3b0d2bb3..a010778c2a 100644 --- a/tests/compiler/class-overloading-cast.release.wat +++ b/tests/compiler/class-overloading-cast.release.wat @@ -920,6 +920,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -952,6 +953,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/class-overloading.release.wat b/tests/compiler/class-overloading.release.wat index ff4df62b21..3a45a0173e 100644 --- a/tests/compiler/class-overloading.release.wat +++ b/tests/compiler/class-overloading.release.wat @@ -944,6 +944,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -976,6 +977,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/class.release.wat b/tests/compiler/class.release.wat index f912da8398..d549355183 100644 --- a/tests/compiler/class.release.wat +++ b/tests/compiler/class.release.wat @@ -1024,6 +1024,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1056,6 +1057,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/constructor.release.wat b/tests/compiler/constructor.release.wat index cb96b2304a..8710b644b2 100644 --- a/tests/compiler/constructor.release.wat +++ b/tests/compiler/constructor.release.wat @@ -947,6 +947,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -979,6 +980,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/do.release.wat b/tests/compiler/do.release.wat index d62f29d1f4..27d1524cfb 100644 --- a/tests/compiler/do.release.wat +++ b/tests/compiler/do.release.wat @@ -884,6 +884,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -916,6 +917,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/duplicate-fields.release.wat b/tests/compiler/duplicate-fields.release.wat index de6a5d9544..0ba35afd52 100644 --- a/tests/compiler/duplicate-fields.release.wat +++ b/tests/compiler/duplicate-fields.release.wat @@ -1032,6 +1032,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1064,6 +1065,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/empty-exportruntime.release.wat b/tests/compiler/empty-exportruntime.release.wat index 5e8a23b58b..583f044a69 100644 --- a/tests/compiler/empty-exportruntime.release.wat +++ b/tests/compiler/empty-exportruntime.release.wat @@ -1030,6 +1030,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1062,6 +1063,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/empty-new.release.wat b/tests/compiler/empty-new.release.wat index bbe6dc5941..05676aa0de 100644 --- a/tests/compiler/empty-new.release.wat +++ b/tests/compiler/empty-new.release.wat @@ -880,6 +880,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -912,6 +913,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/exportstar-rereexport.release.wat b/tests/compiler/exportstar-rereexport.release.wat index de594b1be2..ea5271aa41 100644 --- a/tests/compiler/exportstar-rereexport.release.wat +++ b/tests/compiler/exportstar-rereexport.release.wat @@ -915,6 +915,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -947,6 +948,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/extends-baseaggregate.release.wat b/tests/compiler/extends-baseaggregate.release.wat index 5447244b76..d8e65ef1a7 100644 --- a/tests/compiler/extends-baseaggregate.release.wat +++ b/tests/compiler/extends-baseaggregate.release.wat @@ -1030,6 +1030,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1062,6 +1063,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/extends-recursive.release.wat b/tests/compiler/extends-recursive.release.wat index cc4c9842b2..ff6b34bfbe 100644 --- a/tests/compiler/extends-recursive.release.wat +++ b/tests/compiler/extends-recursive.release.wat @@ -882,6 +882,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -914,6 +915,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/field-initialization.release.wat b/tests/compiler/field-initialization.release.wat index d8f9c226ad..6b77d3dfaa 100644 --- a/tests/compiler/field-initialization.release.wat +++ b/tests/compiler/field-initialization.release.wat @@ -1037,6 +1037,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1069,6 +1070,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2206,6 +2208,7 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -2237,6 +2240,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $2 i32.store offset=4 local.get $0 diff --git a/tests/compiler/field.release.wat b/tests/compiler/field.release.wat index 8526f3d8e0..c29bf04d7b 100644 --- a/tests/compiler/field.release.wat +++ b/tests/compiler/field.release.wat @@ -1015,6 +1015,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1047,6 +1048,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/for.release.wat b/tests/compiler/for.release.wat index cb9acc257b..0803ba5f4d 100644 --- a/tests/compiler/for.release.wat +++ b/tests/compiler/for.release.wat @@ -884,6 +884,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -916,6 +917,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/function-call.release.wat b/tests/compiler/function-call.release.wat index fa99233346..4b07a84eeb 100644 --- a/tests/compiler/function-call.release.wat +++ b/tests/compiler/function-call.release.wat @@ -922,6 +922,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -954,6 +955,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/function-expression.release.wat b/tests/compiler/function-expression.release.wat index bb718da40a..e11e1ff131 100644 --- a/tests/compiler/function-expression.release.wat +++ b/tests/compiler/function-expression.release.wat @@ -1081,6 +1081,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1113,6 +1114,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/function-types.release.wat b/tests/compiler/function-types.release.wat index f7b9d32a79..3841458c85 100644 --- a/tests/compiler/function-types.release.wat +++ b/tests/compiler/function-types.release.wat @@ -196,10 +196,12 @@ local.get $0 i32.load call_indirect $0 (type $i32_i32_=>_i32) + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 i32.const 3 i32.ne if diff --git a/tests/compiler/getter-call.release.wat b/tests/compiler/getter-call.release.wat index 8c4538296b..75a5e7ccaa 100644 --- a/tests/compiler/getter-call.release.wat +++ b/tests/compiler/getter-call.release.wat @@ -887,6 +887,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -919,6 +920,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1358,10 +1360,12 @@ i32.const 1456 i32.load call_indirect $0 (type $none_=>_i32) + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) diff --git a/tests/compiler/heap.release.wat b/tests/compiler/heap.release.wat index 04805b3570..1eae6dcc58 100644 --- a/tests/compiler/heap.release.wat +++ b/tests/compiler/heap.release.wat @@ -1119,6 +1119,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 call $~lib/rt/tlsf/checkUsedBlock local.tee $0 @@ -1127,6 +1128,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $0 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/infer-array.release.wat b/tests/compiler/infer-array.release.wat index c055b1145c..487c046058 100644 --- a/tests/compiler/infer-array.release.wat +++ b/tests/compiler/infer-array.release.wat @@ -1051,6 +1051,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1083,6 +1084,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1765,6 +1767,7 @@ local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 2 @@ -1785,6 +1788,7 @@ i32.const 1 local.get $1 call $~lib/array/Array#__uset + local.get $2 local.get $3 i32.store offset=12 local.get $3 @@ -1799,6 +1803,7 @@ local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 2 @@ -1819,6 +1824,7 @@ i32.const 1 local.get $1 call $~lib/array/Array#__uset + local.get $2 local.get $3 i32.store offset=8 local.get $3 @@ -1829,6 +1835,7 @@ local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 2 @@ -1849,6 +1856,7 @@ i32.const 1 i32.const 0 call $~lib/array/Array#__uset + local.get $1 local.get $2 i32.store offset=12 local.get $2 @@ -1922,6 +1930,7 @@ local.get $0 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 2 @@ -1950,6 +1959,7 @@ i32.const 1968 call $~lib/rt/__newArray call $~lib/array/Array#__uset + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/infer-generic.release.wat b/tests/compiler/infer-generic.release.wat index 6279d2b748..591b9e567c 100644 --- a/tests/compiler/infer-generic.release.wat +++ b/tests/compiler/infer-generic.release.wat @@ -909,6 +909,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -941,6 +942,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/inlining.release.wat b/tests/compiler/inlining.release.wat index 4e9da8192b..d6cd251b24 100644 --- a/tests/compiler/inlining.release.wat +++ b/tests/compiler/inlining.release.wat @@ -896,6 +896,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -928,6 +929,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1512,6 +1514,7 @@ i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $2 local.get $0 i32.eqz if @@ -1531,6 +1534,7 @@ local.get $0 i32.const 2 i32.store offset=4 + local.get $2 local.get $0 i32.store local.get $0 diff --git a/tests/compiler/instanceof-class.release.wat b/tests/compiler/instanceof-class.release.wat index 8a55e8b949..c49cdbe0a7 100644 --- a/tests/compiler/instanceof-class.release.wat +++ b/tests/compiler/instanceof-class.release.wat @@ -898,6 +898,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -930,6 +931,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/issues/1095.release.wat b/tests/compiler/issues/1095.release.wat index af20bd99bf..18d6b778e8 100644 --- a/tests/compiler/issues/1095.release.wat +++ b/tests/compiler/issues/1095.release.wat @@ -1019,6 +1019,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1051,6 +1052,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/issues/1225.release.wat b/tests/compiler/issues/1225.release.wat index 09bcc40685..b3357bf022 100644 --- a/tests/compiler/issues/1225.release.wat +++ b/tests/compiler/issues/1225.release.wat @@ -893,6 +893,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -925,6 +926,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/issues/1699.release.wat b/tests/compiler/issues/1699.release.wat index 4bd0b09542..16b7e8cfd8 100644 --- a/tests/compiler/issues/1699.release.wat +++ b/tests/compiler/issues/1699.release.wat @@ -1026,6 +1026,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1058,6 +1059,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/issues/2166.release.wat b/tests/compiler/issues/2166.release.wat index c02200ee5d..5186120f98 100644 --- a/tests/compiler/issues/2166.release.wat +++ b/tests/compiler/issues/2166.release.wat @@ -893,6 +893,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -925,6 +926,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/issues/2322/index.release.wat b/tests/compiler/issues/2322/index.release.wat index 6fa036930f..5063c0c50c 100644 --- a/tests/compiler/issues/2322/index.release.wat +++ b/tests/compiler/issues/2322/index.release.wat @@ -883,6 +883,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -915,6 +916,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/logical.release.wat b/tests/compiler/logical.release.wat index e6503c7536..4f4d826a61 100644 --- a/tests/compiler/logical.release.wat +++ b/tests/compiler/logical.release.wat @@ -884,6 +884,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -916,6 +917,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/managed-cast.release.wat b/tests/compiler/managed-cast.release.wat index 7ab03bc3d4..23b014480f 100644 --- a/tests/compiler/managed-cast.release.wat +++ b/tests/compiler/managed-cast.release.wat @@ -888,6 +888,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -920,6 +921,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/memory.release.wat b/tests/compiler/memory.release.wat index 2342a4f84e..fa940780be 100644 --- a/tests/compiler/memory.release.wat +++ b/tests/compiler/memory.release.wat @@ -73,8 +73,10 @@ global.get $memory/ptr i32.const 16 i32.add + local.set $0 i32.const 1104 global.set $memory/ptr + local.get $0 i32.const 1104 i32.ne if @@ -88,8 +90,10 @@ global.get $memory/ptr i32.const 8 i32.add + local.set $0 i32.const 1112 global.set $memory/ptr + local.get $0 i32.const 1112 i32.ne if @@ -103,8 +107,10 @@ global.get $memory/ptr i32.const 4 i32.add + local.set $0 i32.const 1116 global.set $memory/ptr + local.get $0 i32.const 1116 i32.ne if @@ -118,8 +124,10 @@ global.get $memory/ptr i32.const 2 i32.add + local.set $0 i32.const 1118 global.set $memory/ptr + local.get $0 i32.const 1118 i32.ne if @@ -133,8 +141,10 @@ global.get $memory/ptr i32.const 1 i32.add + local.set $0 i32.const 1119 global.set $memory/ptr + local.get $0 i32.const 1119 i32.ne if diff --git a/tests/compiler/new.release.wat b/tests/compiler/new.release.wat index bf063a2cfe..3239aae343 100644 --- a/tests/compiler/new.release.wat +++ b/tests/compiler/new.release.wat @@ -924,6 +924,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -956,6 +957,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/number.release.wat b/tests/compiler/number.release.wat index 7aefa3b6c7..6330554bc3 100644 --- a/tests/compiler/number.release.wat +++ b/tests/compiler/number.release.wat @@ -931,6 +931,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -963,6 +964,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/object-literal.release.wat b/tests/compiler/object-literal.release.wat index 943f5dd550..5681aa5932 100644 --- a/tests/compiler/object-literal.release.wat +++ b/tests/compiler/object-literal.release.wat @@ -829,6 +829,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -861,6 +862,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2043,6 +2045,7 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -2107,6 +2110,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $1 i32.store offset=8 local.get $1 @@ -2414,6 +2418,7 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -2472,6 +2477,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $1 i32.store offset=16 local.get $1 diff --git a/tests/compiler/optional-typeparameters.release.wat b/tests/compiler/optional-typeparameters.release.wat index 13005e7d0e..a9f0479817 100644 --- a/tests/compiler/optional-typeparameters.release.wat +++ b/tests/compiler/optional-typeparameters.release.wat @@ -896,6 +896,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -928,6 +929,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/reexport.release.wat b/tests/compiler/reexport.release.wat index 227e72b848..81b84e2a8d 100644 --- a/tests/compiler/reexport.release.wat +++ b/tests/compiler/reexport.release.wat @@ -917,6 +917,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -949,6 +950,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/rereexport.release.wat b/tests/compiler/rereexport.release.wat index 905a617af1..10fd08e6a7 100644 --- a/tests/compiler/rereexport.release.wat +++ b/tests/compiler/rereexport.release.wat @@ -915,6 +915,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -947,6 +948,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-access.release.wat b/tests/compiler/resolve-access.release.wat index 2f6c9bb56f..7154d45403 100644 --- a/tests/compiler/resolve-access.release.wat +++ b/tests/compiler/resolve-access.release.wat @@ -1037,6 +1037,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1069,6 +1070,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2064,10 +2066,12 @@ i32.load offset=4 i64.load call $~lib/number/U64#toString + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 19760 @@ -2144,10 +2148,12 @@ local.get $0 i64.load call $~lib/number/U64#toString + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $resolve-access/propertyAccess (result i32) (local $0 i32) diff --git a/tests/compiler/resolve-binary.release.wat b/tests/compiler/resolve-binary.release.wat index 156fc266e8..937580483a 100644 --- a/tests/compiler/resolve-binary.release.wat +++ b/tests/compiler/resolve-binary.release.wat @@ -1231,6 +1231,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1263,6 +1264,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-elementaccess.release.wat b/tests/compiler/resolve-elementaccess.release.wat index 19851b2ccc..abfafb2a6d 100644 --- a/tests/compiler/resolve-elementaccess.release.wat +++ b/tests/compiler/resolve-elementaccess.release.wat @@ -1089,6 +1089,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1121,6 +1122,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-function-expression.release.wat b/tests/compiler/resolve-function-expression.release.wat index 9b5467d348..24604eceb8 100644 --- a/tests/compiler/resolve-function-expression.release.wat +++ b/tests/compiler/resolve-function-expression.release.wat @@ -924,6 +924,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -956,6 +957,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1142,6 +1144,7 @@ br $__inlined_func$~lib/util/number/itoa32 end global.get $~lib/memory/__stack_pointer + local.set $5 i32.const 0 local.get $0 i32.sub @@ -1502,6 +1505,7 @@ i32.const 0 local.get $4 memory.fill + local.get $5 local.get $2 i32.store local.get $2 diff --git a/tests/compiler/resolve-new.release.wat b/tests/compiler/resolve-new.release.wat index 767da2e72c..27b367c391 100644 --- a/tests/compiler/resolve-new.release.wat +++ b/tests/compiler/resolve-new.release.wat @@ -889,6 +889,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -921,6 +922,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-propertyaccess.release.wat b/tests/compiler/resolve-propertyaccess.release.wat index 7633236b17..0fe509bcf9 100644 --- a/tests/compiler/resolve-propertyaccess.release.wat +++ b/tests/compiler/resolve-propertyaccess.release.wat @@ -924,6 +924,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -956,6 +957,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-ternary.release.wat b/tests/compiler/resolve-ternary.release.wat index 72098b78e3..93eb6c9de6 100644 --- a/tests/compiler/resolve-ternary.release.wat +++ b/tests/compiler/resolve-ternary.release.wat @@ -928,6 +928,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -960,6 +961,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/resolve-unary.release.wat b/tests/compiler/resolve-unary.release.wat index 0a439e4858..248aedb32d 100644 --- a/tests/compiler/resolve-unary.release.wat +++ b/tests/compiler/resolve-unary.release.wat @@ -950,6 +950,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -982,6 +983,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/return-unreachable.release.wat b/tests/compiler/return-unreachable.release.wat index ef22c1a601..27c5e15f17 100644 --- a/tests/compiler/return-unreachable.release.wat +++ b/tests/compiler/return-unreachable.release.wat @@ -1022,6 +1022,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1054,6 +1055,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/rt/finalize.release.wat b/tests/compiler/rt/finalize.release.wat index cb83e0fd41..cda58d5bc5 100644 --- a/tests/compiler/rt/finalize.release.wat +++ b/tests/compiler/rt/finalize.release.wat @@ -902,6 +902,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -934,6 +935,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/rt/instanceof.release.wat b/tests/compiler/rt/instanceof.release.wat index 376715d693..a76a053ef8 100644 --- a/tests/compiler/rt/instanceof.release.wat +++ b/tests/compiler/rt/instanceof.release.wat @@ -927,6 +927,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -959,6 +960,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/rt/runtime-incremental-export.release.wat b/tests/compiler/rt/runtime-incremental-export.release.wat index 5e8a23b58b..583f044a69 100644 --- a/tests/compiler/rt/runtime-incremental-export.release.wat +++ b/tests/compiler/rt/runtime-incremental-export.release.wat @@ -1030,6 +1030,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1062,6 +1063,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/rt/runtime-minimal-export.release.wat b/tests/compiler/rt/runtime-minimal-export.release.wat index ed4afb8117..5e71ab1e11 100644 --- a/tests/compiler/rt/runtime-minimal-export.release.wat +++ b/tests/compiler/rt/runtime-minimal-export.release.wat @@ -1278,6 +1278,7 @@ i32.load offset=4 i32.const -4 i32.and + local.set $1 local.get $0 i32.const 1484 i32.lt_u @@ -1311,6 +1312,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $6 local.get $0 i32.const 4 i32.sub @@ -1343,10 +1345,12 @@ i32.const 1 i32.or i32.store + local.get $6 local.get $4 call $~lib/rt/tlsf/insertBlock end end + local.get $1 local.set $0 br $while-continue|2 end diff --git a/tests/compiler/simd.release.wat b/tests/compiler/simd.release.wat index b44285b861..78fd59a5c1 100644 --- a/tests/compiler/simd.release.wat +++ b/tests/compiler/simd.release.wat @@ -962,6 +962,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -994,6 +995,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) diff --git a/tests/compiler/std-wasi/console.release.wat b/tests/compiler/std-wasi/console.release.wat index 216c352ebc..2e38dd0afd 100644 --- a/tests/compiler/std-wasi/console.release.wat +++ b/tests/compiler/std-wasi/console.release.wat @@ -2047,6 +2047,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -2079,6 +2080,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2172,6 +2174,7 @@ return end local.get $1 + local.set $2 local.get $1 local.get $1 i32.const 20 @@ -2260,6 +2263,7 @@ local.set $1 i32.const 3 global.set $~argumentsLength + local.get $2 local.get $5 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs diff --git a/tests/compiler/std-wasi/crypto.release.wat b/tests/compiler/std-wasi/crypto.release.wat index 0ab8ac506e..1694b017cb 100644 --- a/tests/compiler/std-wasi/crypto.release.wat +++ b/tests/compiler/std-wasi/crypto.release.wat @@ -1454,6 +1454,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -1486,6 +1487,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -3167,6 +3169,7 @@ return end local.get $0 + local.set $1 local.get $0 local.get $0 i32.const 20 @@ -3255,6 +3258,7 @@ local.set $0 i32.const 3 global.set $~argumentsLength + local.get $1 local.get $4 local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs @@ -3374,10 +3378,12 @@ i32.store local.get $0 call $~lib/typedarray/Uint8Array#join + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/console/console.log (param $0 i32) global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std-wasi/process.release.wat b/tests/compiler/std-wasi/process.release.wat index 1a5414f8ab..bb25399c2f 100644 --- a/tests/compiler/std-wasi/process.release.wat +++ b/tests/compiler/std-wasi/process.release.wat @@ -2038,6 +2038,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -2070,6 +2071,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2163,6 +2165,7 @@ return end local.get $0 + local.set $1 local.get $0 local.get $0 i32.const 20 @@ -2251,6 +2254,7 @@ local.set $0 i32.const 3 global.set $~argumentsLength + local.get $1 local.get $4 local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs @@ -5035,10 +5039,12 @@ local.get $2 i32.sub call $~lib/rt/itcms/__renew + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/array-access.release.wat b/tests/compiler/std/array-access.release.wat index 5d8f11cce1..5238741786 100644 --- a/tests/compiler/std/array-access.release.wat +++ b/tests/compiler/std/array-access.release.wat @@ -222,6 +222,7 @@ local.get $0 i32.load offset=4 i32.load offset=4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -230,6 +231,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 17712 @@ -278,6 +280,7 @@ i32.load offset=16 i32.const 1 i32.shr_u + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -286,6 +289,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 17712 @@ -333,6 +337,7 @@ i32.store offset=4 local.get $0 call $~lib/string/String#startsWith + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -341,6 +346,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 17712 @@ -396,6 +402,7 @@ i32.load offset=16 i32.const 1 i32.shr_u + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -404,6 +411,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 17712 @@ -462,6 +470,7 @@ i32.store offset=4 local.get $0 call $~lib/string/String#startsWith + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -470,6 +479,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 17712 diff --git a/tests/compiler/std/array-literal.release.wat b/tests/compiler/std/array-literal.release.wat index d7487ded79..759ed6bb88 100644 --- a/tests/compiler/std/array-literal.release.wat +++ b/tests/compiler/std/array-literal.release.wat @@ -1110,6 +1110,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1142,6 +1143,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/array.release.wat b/tests/compiler/std/array.release.wat index 02a578b075..3f53794c51 100644 --- a/tests/compiler/std/array.release.wat +++ b/tests/compiler/std/array.release.wat @@ -1457,6 +1457,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -1489,6 +1490,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2761,9 +2763,11 @@ i32.shl i32.add i32.load + local.set $2 local.get $0 local.get $1 i32.store offset=12 + local.get $2 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 @@ -3784,6 +3788,7 @@ i32.shl i32.add f32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -3793,8 +3798,11 @@ i32.shl i32.add f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -3813,10 +3821,14 @@ i32.add local.tee $6 f32.load offset=4 + local.set $5 local.get $6 f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -3884,10 +3896,14 @@ i32.add local.tee $1 f32.load offset=4 + local.set $5 local.get $1 f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -4622,6 +4638,7 @@ i32.shl i32.add f64.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -4631,8 +4648,11 @@ i32.shl i32.add f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -4651,10 +4671,14 @@ i32.add local.tee $6 f64.load offset=8 + local.set $5 local.get $6 f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -4722,10 +4746,14 @@ i32.add local.tee $1 f64.load offset=8 + local.set $5 local.get $1 f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -5480,6 +5508,7 @@ i32.shl i32.add i32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -5489,8 +5518,11 @@ i32.shl i32.add i32.load + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -5509,10 +5541,14 @@ i32.add local.tee $5 i32.load offset=4 + local.set $6 local.get $5 i32.load + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -5580,10 +5616,14 @@ i32.add local.tee $1 i32.load offset=4 + local.set $5 local.get $1 i32.load + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -6288,6 +6328,7 @@ i32.shl i32.add i32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -6297,8 +6338,11 @@ i32.shl i32.add i32.load + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -6317,10 +6361,14 @@ i32.add local.tee $5 i32.load offset=4 + local.set $6 local.get $5 i32.load + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -6388,10 +6436,14 @@ i32.add local.tee $1 i32.load offset=4 + local.set $5 local.get $1 i32.load + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -12342,9 +12394,11 @@ i32.const 8160 i32.store offset=4 call $~lib/math/NativeMath.random + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8160 i32.store offset=8 + local.get $6 i32.const 8156 i32.load i32.const 1 @@ -12475,10 +12529,12 @@ local.get $0 i32.const 9984 call $~lib/array/Array#join + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/array/Array#toString (param $0 i32) (result i32) (local $1 i32) @@ -12689,10 +12745,12 @@ i32.load offset=12 i32.const 9984 call $~lib/util/string/joinStringArray + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/array/Array#toString (param $0 i32) (result i32) (local $1 i32) @@ -12900,10 +12958,12 @@ local.get $0 i32.const 9984 call $~lib/array/Array#join + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/array/Array<~lib/array/Array>#toString (param $0 i32) (result i32) (local $1 i32) @@ -13014,12 +13074,14 @@ local.get $6 if global.get $~lib/memory/__stack_pointer + local.set $2 local.get $6 call $~lib/array/Array#toString local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 i32.store offset=8 + local.get $2 local.get $0 local.get $6 call $~lib/string/String.__concat @@ -13054,12 +13116,14 @@ local.get $1 if global.get $~lib/memory/__stack_pointer + local.set $2 local.get $1 call $~lib/array/Array#toString local.set $1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 + local.get $2 local.get $0 local.get $1 call $~lib/string/String.__concat @@ -15402,6 +15466,7 @@ i32.load offset=4 local.tee $9 i32.load + local.set $10 local.get $9 local.get $9 i32.const 4 @@ -15422,6 +15487,7 @@ local.get $0 local.get $8 i32.store offset=12 + local.get $10 global.set $std/array/i global.get $std/array/i i32.const 41 @@ -16029,6 +16095,7 @@ i32.const 44 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 4 i32.const 0 i32.const 6 @@ -16043,6 +16110,7 @@ local.get $8 i32.load offset=12 call $~lib/util/bytes/REVERSE + local.get $0 local.get $8 i32.store offset=16 local.get $8 @@ -16079,6 +16147,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 8 i32.const 0 i32.const 6 @@ -16093,6 +16162,7 @@ local.get $1 i32.load offset=12 call $~lib/util/bytes/REVERSE + local.get $0 local.get $1 i32.store offset=12 i32.const 0 @@ -16131,6 +16201,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 17 i32.const 0 i32.const 6 @@ -16145,6 +16216,7 @@ local.get $1 i32.load offset=12 call $~lib/util/bytes/REVERSE + local.get $0 local.get $1 i32.store offset=4 local.get $1 @@ -16181,6 +16253,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 7 i32.const 1 i32.const 10 @@ -16190,6 +16263,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store + local.get $0 local.get $1 call $~lib/array/Array#reverse local.tee $1 @@ -16230,6 +16304,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 8 i32.const 1 i32.const 10 @@ -16239,6 +16314,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store + local.get $0 local.get $1 call $~lib/array/Array#reverse local.tee $0 @@ -16279,6 +16355,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 9 i32.const 1 i32.const 10 @@ -16288,6 +16365,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store + local.get $0 local.get $1 call $~lib/array/Array#reverse local.tee $0 @@ -19236,6 +19314,7 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -19323,6 +19402,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $10 i32.store offset=12 local.get $10 @@ -19480,8 +19560,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6608 @@ -19542,8 +19624,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6640 @@ -19606,8 +19690,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6672 @@ -19670,8 +19756,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6704 @@ -19750,8 +19838,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6736 @@ -19841,8 +19931,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 6768 @@ -19931,8 +20023,10 @@ i32.shl i32.add i32.load + local.set $3 i32.const 3 global.set $~argumentsLength + local.get $3 local.get $0 local.get $1 i32.const 6848 @@ -19981,8 +20075,10 @@ i32.shl i32.add i32.load + local.set $3 i32.const 3 global.set $~argumentsLength + local.get $3 local.get $0 local.get $1 i32.const 6880 @@ -20033,8 +20129,10 @@ i32.shl i32.add i32.load + local.set $3 i32.const 3 global.set $~argumentsLength + local.get $3 local.get $0 local.get $1 i32.const 6912 @@ -20085,8 +20183,10 @@ i32.shl i32.add i32.load + local.set $3 i32.const 3 global.set $~argumentsLength + local.get $3 local.get $0 local.get $1 i32.const 6944 @@ -20924,8 +21024,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 7296 @@ -20983,8 +21085,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 7328 @@ -21058,8 +21162,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 7360 @@ -21144,8 +21250,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 7392 @@ -21230,8 +21338,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $0 local.get $1 i32.const 7424 @@ -21310,6 +21420,7 @@ i32.const 3 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer + local.set $1 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $3 @@ -21388,6 +21499,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $9 i32.store offset=4 local.get $9 @@ -21405,10 +21517,12 @@ local.get $9 i32.const 0 call $~lib/array/Array#__get + local.set $7 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 i32.store + local.get $7 local.get $0 i32.const 0 call $~lib/array/Array#__get @@ -23923,6 +24037,7 @@ i32.const 9472 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -24030,6 +24145,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 i32.store offset=156 global.get $~lib/memory/__stack_pointer @@ -24039,6 +24155,7 @@ i32.const 9504 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 0 local.set $3 global.get $~lib/memory/__stack_pointer @@ -24165,6 +24282,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $4 i32.store offset=156 global.get $~lib/memory/__stack_pointer @@ -25834,12 +25952,14 @@ local.get $8 if global.get $~lib/memory/__stack_pointer + local.set $9 local.get $8 call $~lib/array/Array#toString local.set $8 global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 + local.get $9 local.get $0 local.get $8 call $~lib/string/String.__concat @@ -25874,12 +25994,14 @@ local.get $1 if global.get $~lib/memory/__stack_pointer + local.set $2 local.get $1 call $~lib/array/Array#toString local.set $1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 + local.get $2 local.get $0 local.get $1 call $~lib/string/String.__concat @@ -26048,12 +26170,14 @@ local.get $8 if global.get $~lib/memory/__stack_pointer + local.set $9 local.get $8 call $~lib/array/Array#toString local.set $8 global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 + local.get $9 local.get $0 local.get $8 call $~lib/string/String.__concat @@ -26088,12 +26212,14 @@ local.get $1 if global.get $~lib/memory/__stack_pointer + local.set $2 local.get $1 call $~lib/array/Array#toString local.set $1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 + local.get $2 local.get $0 local.get $1 call $~lib/string/String.__concat @@ -26270,12 +26396,14 @@ local.get $8 if global.get $~lib/memory/__stack_pointer + local.set $9 local.get $8 call $~lib/array/Array<~lib/array/Array>#toString local.set $8 global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 + local.get $9 local.get $0 local.get $8 call $~lib/string/String.__concat @@ -26310,12 +26438,14 @@ local.get $1 if global.get $~lib/memory/__stack_pointer + local.set $2 local.get $1 call $~lib/array/Array<~lib/array/Array>#toString local.set $1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 + local.get $2 local.get $0 local.get $1 call $~lib/string/String.__concat @@ -26490,6 +26620,7 @@ local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -26644,6 +26775,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $10 i32.store offset=140 global.get $~lib/memory/__stack_pointer @@ -26788,6 +26920,7 @@ local.get $1 i32.store offset=152 global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=164 @@ -26882,6 +27015,7 @@ global.get $~lib/memory/__stack_pointer local.get $4 i32.store + local.get $2 local.get $4 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 @@ -27230,10 +27364,12 @@ i32.load offset=16 i32.const 2 i32.shr_s + local.set $0 local.get $1 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/array/Array#concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) diff --git a/tests/compiler/std/arraybuffer.release.wat b/tests/compiler/std/arraybuffer.release.wat index 8f68ae2e30..3027a1cec3 100644 --- a/tests/compiler/std/arraybuffer.release.wat +++ b/tests/compiler/std/arraybuffer.release.wat @@ -1027,6 +1027,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1059,6 +1060,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/dataview.release.wat b/tests/compiler/std/dataview.release.wat index 44177e1cae..297e632860 100644 --- a/tests/compiler/std/dataview.release.wat +++ b/tests/compiler/std/dataview.release.wat @@ -1033,6 +1033,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1065,6 +1066,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/date.release.wat b/tests/compiler/std/date.release.wat index dd4b00d71a..6df9d5dd59 100644 --- a/tests/compiler/std/date.release.wat +++ b/tests/compiler/std/date.release.wat @@ -1394,6 +1394,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1426,6 +1427,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -3385,6 +3387,7 @@ i32.store offset=16 else global.get $~lib/memory/__stack_pointer + local.set $3 local.get $1 call $~lib/number/I32#toString local.set $1 @@ -3394,6 +3397,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=8 + local.get $3 local.get $1 i32.const 4 call $~lib/string/String#padStart @@ -3660,10 +3664,12 @@ local.get $0 i32.const 3584 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 112 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/date/Date#toDateString (param $0 i32) (result i32) (local $1 i32) @@ -3704,6 +3710,7 @@ local.get $3 i32.store global.get $~lib/memory/__stack_pointer + local.set $1 i32.const 48 i32.const 4 call $~lib/rt/itcms/__new @@ -3711,6 +3718,7 @@ i32.const 4992 i32.const 48 memory.copy + local.get $1 local.get $2 i32.store offset=4 local.get $0 @@ -3775,6 +3783,7 @@ i32.add local.set $6 global.get $~lib/memory/__stack_pointer + local.set $0 local.get $4 i32.const 31 i32.shr_s @@ -3791,6 +3800,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 + local.get $0 local.get $7 i32.const 4 call $~lib/string/String#padStart @@ -3875,10 +3885,12 @@ local.get $1 local.get $0 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 44 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/date/Date#toTimeString (param $0 i32) (result i32) (local $1 i64) @@ -4023,10 +4035,12 @@ local.get $2 local.get $0 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 40 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/date/Date#toUTCString (param $0 i32) (result i32) (local $1 i32) @@ -4069,6 +4083,7 @@ local.get $3 i32.store global.get $~lib/memory/__stack_pointer + local.set $1 i32.const 48 i32.const 4 call $~lib/rt/itcms/__new @@ -4076,6 +4091,7 @@ i32.const 6048 i32.const 48 memory.copy + local.get $1 local.get $4 i32.store offset=4 local.get $0 @@ -4140,6 +4156,7 @@ i32.add local.set $8 global.get $~lib/memory/__stack_pointer + local.set $1 local.get $5 i32.const 31 i32.shr_s @@ -4156,6 +4173,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 + local.get $1 local.get $9 i32.const 4 call $~lib/string/String#padStart @@ -4380,10 +4398,12 @@ local.get $0 i32.const 6128 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 96 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/string/String#split (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -4849,6 +4869,7 @@ i32.store offset=16 local.get $1 call $~lib/util/string/strtol + local.set $7 i32.const 1 local.set $1 local.get $0 @@ -4887,6 +4908,7 @@ i32.const 1 end local.set $0 + local.get $7 local.get $1 local.get $0 local.get $3 @@ -4895,10 +4917,12 @@ local.get $5 call $~lib/date/epochMillis call $~lib/date/Date#constructor + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 28 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $start:std/date (local $0 i32) diff --git a/tests/compiler/std/map.release.wat b/tests/compiler/std/map.release.wat index f65d298f8a..c3fc8205b0 100644 --- a/tests/compiler/std/map.release.wat +++ b/tests/compiler/std/map.release.wat @@ -1040,6 +1040,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1072,6 +1073,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2888,6 +2890,7 @@ local.tee $6 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -2944,6 +2947,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -5055,6 +5059,7 @@ local.tee $6 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5111,6 +5116,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -7218,6 +7224,7 @@ local.tee $6 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -7274,6 +7281,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -9391,6 +9399,7 @@ local.tee $6 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -9447,6 +9456,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -12956,6 +12966,7 @@ local.tee $6 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -13012,6 +13023,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -14969,6 +14981,7 @@ local.tee $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -15025,6 +15038,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -16521,6 +16535,7 @@ local.tee $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -16577,6 +16592,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -18216,6 +18232,7 @@ local.tee $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -18272,6 +18289,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -20215,6 +20233,7 @@ local.tee $5 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -20271,6 +20290,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $12 i32.store offset=12 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/math.release.wat b/tests/compiler/std/math.release.wat index 2976d7d875..e87b3a32bc 100644 --- a/tests/compiler/std/math.release.wat +++ b/tests/compiler/std/math.release.wat @@ -3893,8 +3893,10 @@ f64.sub end end + local.set $1 local.get $0 global.set $~lib/math/rempio2_y0 + local.get $1 global.set $~lib/math/rempio2_y1 local.get $3 br $~lib/math/rempio2|inlined.0 @@ -5874,8 +5876,10 @@ i64.gt_u if local.get $4 + local.set $6 local.get $5 local.set $4 + local.get $6 local.set $5 end local.get $5 @@ -6040,8 +6044,10 @@ i32.gt_u if local.get $4 + local.set $6 local.get $5 local.set $4 + local.get $6 local.set $5 end local.get $4 @@ -7186,6 +7192,7 @@ local.get $4 i32.const -2147483648 i32.and + local.set $5 local.get $8 if (result i32) local.get $4 @@ -7288,6 +7295,7 @@ local.tee $4 i32.sub local.set $3 + local.get $5 local.get $2 local.get $4 i32.shl @@ -9310,8 +9318,10 @@ f64.sub end end + local.set $1 local.get $0 global.set $~lib/math/rempio2_y0 + local.get $1 global.set $~lib/math/rempio2_y1 local.get $3 br $~lib/math/rempio2|inlined.1 @@ -10474,8 +10484,10 @@ f64.sub end end + local.set $1 local.get $0 global.set $~lib/math/rempio2_y0 + local.get $1 global.set $~lib/math/rempio2_y1 br $~lib/math/rempio2|inlined.2 end @@ -11365,8 +11377,10 @@ f64.sub end end + local.set $1 local.get $0 global.set $~lib/math/rempio2_y0 + local.get $1 global.set $~lib/math/rempio2_y1 local.get $3 br $~lib/math/rempio2|inlined.3 diff --git a/tests/compiler/std/new.release.wat b/tests/compiler/std/new.release.wat index 3560f7dfd3..c2c6326fe4 100644 --- a/tests/compiler/std/new.release.wat +++ b/tests/compiler/std/new.release.wat @@ -889,6 +889,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -921,6 +922,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/operator-overloading.release.wat b/tests/compiler/std/operator-overloading.release.wat index 1e748d4c25..d9dcc25490 100644 --- a/tests/compiler/std/operator-overloading.release.wat +++ b/tests/compiler/std/operator-overloading.release.wat @@ -948,6 +948,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -980,6 +981,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/set.release.wat b/tests/compiler/std/set.release.wat index 44303fe1f2..6188476783 100644 --- a/tests/compiler/std/set.release.wat +++ b/tests/compiler/std/set.release.wat @@ -1033,6 +1033,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1065,6 +1066,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1788,6 +1790,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -1795,6 +1798,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -3521,6 +3525,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -3528,6 +3533,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -5141,6 +5147,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -5148,6 +5155,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -6752,6 +6760,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -6759,6 +6768,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -8374,6 +8384,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -8381,6 +8392,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -9944,6 +9956,7 @@ end local.get $0 i32.load offset=8 + local.set $1 local.get $0 local.get $0 i32.load offset=16 @@ -9951,6 +9964,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $1 local.get $4 i32.const 3 i32.shl @@ -11622,6 +11636,7 @@ end local.get $0 i32.load offset=8 + local.set $2 local.get $0 local.get $0 i32.load offset=16 @@ -11629,6 +11644,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $2 local.get $4 i32.const 4 i32.shl @@ -12706,6 +12722,7 @@ end local.get $0 i32.load offset=8 + local.set $2 local.get $0 local.get $0 i32.load offset=16 @@ -12713,6 +12730,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $2 local.get $4 i32.const 4 i32.shl @@ -13647,6 +13665,7 @@ end local.get $0 i32.load offset=8 + local.set $2 local.get $0 local.get $0 i32.load offset=16 @@ -13654,6 +13673,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $2 local.get $4 i32.const 3 i32.shl @@ -15344,6 +15364,7 @@ end local.get $0 i32.load offset=8 + local.set $2 local.get $0 local.get $0 i32.load offset=16 @@ -15351,6 +15372,7 @@ i32.const 1 i32.add i32.store offset=16 + local.get $2 local.get $5 i32.const 4 i32.shl diff --git a/tests/compiler/std/static-array.release.wat b/tests/compiler/std/static-array.release.wat index 575dfd4e51..b8e5fd39ad 100644 --- a/tests/compiler/std/static-array.release.wat +++ b/tests/compiler/std/static-array.release.wat @@ -1072,6 +1072,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1104,6 +1105,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/staticarray.release.wat b/tests/compiler/std/staticarray.release.wat index 604fd1cd6c..eb24169e25 100644 --- a/tests/compiler/std/staticarray.release.wat +++ b/tests/compiler/std/staticarray.release.wat @@ -1008,6 +1008,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -1040,6 +1041,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2174,6 +2176,7 @@ i32.shl i32.add i32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -2183,8 +2186,11 @@ i32.shl i32.add i32.load + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -2203,10 +2209,14 @@ i32.add local.tee $5 i32.load offset=4 + local.set $6 local.get $5 i32.load + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -2274,10 +2284,14 @@ i32.add local.tee $1 i32.load offset=4 + local.set $5 local.get $1 i32.load + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -3391,6 +3405,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 0 i32.const 6 i32.const 1824 @@ -3399,6 +3414,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store + local.get $0 local.get $2 call $~lib/staticarray/StaticArray.fromArray local.tee $0 @@ -3418,6 +3434,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new @@ -3425,9 +3442,11 @@ i32.const 1856 i64.load align=1 i64.store align=1 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 4 i32.const 3 call $~lib/rt/itcms/__new @@ -3438,6 +3457,7 @@ global.get $~lib/memory/__stack_pointer local.get $6 i32.store offset=12 + local.get $0 local.get $2 local.get $6 call $~lib/staticarray/StaticArray.concat @@ -3460,6 +3480,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 0 i32.const 3 call $~lib/rt/itcms/__new @@ -3470,6 +3491,7 @@ global.get $~lib/memory/__stack_pointer local.get $6 i32.store offset=12 + local.get $0 local.get $2 local.get $6 call $~lib/staticarray/StaticArray.concat @@ -3497,6 +3519,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 20 i32.const 8 call $~lib/rt/itcms/__new @@ -3504,6 +3527,7 @@ i32.const 2128 i32.const 20 memory.copy + local.get $0 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -3839,6 +3863,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 20 i32.const 8 call $~lib/rt/itcms/__new @@ -3846,9 +3871,11 @@ i32.const 2304 i32.const 20 memory.copy + local.get $0 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 0 i32.const 9 i32.const 2352 @@ -3857,6 +3884,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 + local.get $0 local.get $1 local.get $2 call $~lib/staticarray/StaticArray<~lib/string/String>#concat @@ -3880,6 +3908,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 1 i32.const 9 i32.const 2416 @@ -3888,6 +3917,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 + local.get $0 local.get $1 local.get $2 call $~lib/staticarray/StaticArray<~lib/string/String>#concat @@ -3913,6 +3943,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 20 i32.const 8 call $~lib/rt/itcms/__new @@ -3920,6 +3951,7 @@ i32.const 2448 i32.const 20 memory.copy + local.get $0 local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4113,6 +4145,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new @@ -4120,6 +4153,7 @@ i32.const 2560 i32.const 12 memory.copy + local.get $0 local.get $2 i32.store offset=16 i32.const 0 @@ -4391,6 +4425,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 16 i32.const 3 call $~lib/rt/itcms/__new @@ -4398,6 +4433,7 @@ i32.const 2592 i32.const 16 memory.copy + local.get $0 local.get $2 i32.store offset=16 i32.const 1 @@ -4731,6 +4767,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new @@ -4738,6 +4775,7 @@ i32.const 2736 i32.const 12 memory.copy + local.get $0 local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4925,6 +4963,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new @@ -4932,6 +4971,7 @@ i32.const 3104 i64.load align=1 i64.store align=1 + local.get $0 local.get $1 i32.store offset=16 i32.const 1 @@ -4991,6 +5031,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new @@ -4998,6 +5039,7 @@ i32.const 3136 i32.const 12 memory.copy + local.get $0 local.get $1 i32.store offset=16 local.get $1 @@ -5095,6 +5137,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 20 i32.const 3 call $~lib/rt/itcms/__new @@ -5102,6 +5145,7 @@ i32.const 3168 i32.const 20 memory.copy + local.get $0 local.get $1 i32.store offset=16 local.get $1 @@ -5216,6 +5260,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new @@ -5223,6 +5268,7 @@ i32.const 3216 i32.const 12 memory.copy + local.get $0 local.get $7 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -5360,8 +5406,10 @@ i32.shl i32.add i32.load + local.set $2 i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 local.get $7 i32.const 3280 @@ -5955,8 +6003,10 @@ i32.shl i32.add i32.load + local.set $2 i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 local.get $7 i32.const 3536 @@ -6008,8 +6058,10 @@ i32.shl i32.add i32.load + local.set $2 i32.const 3 global.set $~argumentsLength + local.get $2 local.get $1 local.get $7 i32.const 3568 @@ -6061,8 +6113,10 @@ i32.shl i32.add i32.load + local.set $1 i32.const 3 global.set $~argumentsLength + local.get $1 local.get $0 local.get $7 i32.const 3600 @@ -6114,8 +6168,10 @@ i32.shl i32.add i32.load + local.set $1 i32.const 3 global.set $~argumentsLength + local.get $1 local.get $0 local.get $7 i32.const 3632 @@ -6144,6 +6200,7 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.set $0 i32.const 16 i32.const 3 call $~lib/rt/itcms/__new @@ -6151,6 +6208,7 @@ i32.const 3664 i32.const 16 memory.copy + local.get $0 local.get $1 i32.store offset=28 i32.const 0 diff --git a/tests/compiler/std/string-casemapping.release.wat b/tests/compiler/std/string-casemapping.release.wat index f5757ca98a..3d4dced0d5 100644 --- a/tests/compiler/std/string-casemapping.release.wat +++ b/tests/compiler/std/string-casemapping.release.wat @@ -1337,6 +1337,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1369,6 +1370,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2663,10 +2665,12 @@ i32.const 1 i32.shl call $~lib/rt/itcms/__renew + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $start:std/string-casemapping (local $0 i64) @@ -5827,10 +5831,12 @@ i32.const 1 i32.shl call $~lib/rt/itcms/__renew + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/string/String.fromCodePoint (param $0 i32) (result i32) (local $1 i32) diff --git a/tests/compiler/std/string-encoding.release.wat b/tests/compiler/std/string-encoding.release.wat index 7c9a24b3b1..a363f24256 100644 --- a/tests/compiler/std/string-encoding.release.wat +++ b/tests/compiler/std/string-encoding.release.wat @@ -924,6 +924,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -956,6 +957,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/std/string.release.wat b/tests/compiler/std/string.release.wat index 1ddc0bd6e9..2f6399375b 100644 --- a/tests/compiler/std/string.release.wat +++ b/tests/compiler/std/string.release.wat @@ -2075,6 +2075,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -2107,6 +2108,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -8168,10 +8170,12 @@ i32.const 1712 i32.const 2147483647 call $~lib/string/String#lastIndexOf + local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/string/str local.tee $3 i32.store + local.get $0 local.get $3 i32.const 20 i32.sub @@ -12730,6 +12734,7 @@ local.tee $3 i32.store offset=36 global.get $~lib/memory/__stack_pointer + local.set $4 i32.const 55296 call $~lib/string/String.fromCodePoint local.set $5 @@ -12742,6 +12747,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 + local.get $4 local.get $5 local.get $0 call $~lib/string/String#concat diff --git a/tests/compiler/std/symbol.release.wat b/tests/compiler/std/symbol.release.wat index 74e6063d0b..9029cd0c70 100644 --- a/tests/compiler/std/symbol.release.wat +++ b/tests/compiler/std/symbol.release.wat @@ -1118,6 +1118,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1150,6 +1151,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -2335,10 +2337,12 @@ end local.get $0 i32.load offset=4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end else @@ -3162,10 +3166,12 @@ else i32.const 0 end + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/symbol/_Symbol#toString (param $0 i32) (result i32) (local $1 i32) @@ -3399,10 +3405,12 @@ local.get $0 i32.const 2400 call $~lib/string/String.__concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $start:std/symbol (local $0 i32) diff --git a/tests/compiler/std/typedarray.release.wat b/tests/compiler/std/typedarray.release.wat index d465d37d90..a9d5d70eb0 100644 --- a/tests/compiler/std/typedarray.release.wat +++ b/tests/compiler/std/typedarray.release.wat @@ -1479,6 +1479,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $2 local.get $0 i32.const 4 i32.sub @@ -1511,6 +1512,7 @@ i32.const 1 i32.or i32.store + local.get $2 local.get $1 call $~lib/rt/tlsf/insertBlock ) @@ -2939,6 +2941,7 @@ i32.shl i32.add f64.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -2948,8 +2951,11 @@ i32.shl i32.add f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -2968,10 +2974,14 @@ i32.add local.tee $6 f64.load offset=8 + local.set $5 local.get $6 f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3039,10 +3049,14 @@ i32.add local.tee $1 f64.load offset=8 + local.set $5 local.get $1 f64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3737,6 +3751,7 @@ local.get $0 local.get $2 call $~lib/typedarray/Int8Array#__get + local.set $4 local.get $2 local.get $1 i32.load offset=12 @@ -3749,6 +3764,7 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $1 i32.load offset=4 local.get $2 @@ -27754,6 +27770,7 @@ local.get $1 i32.add i32.load8_s + local.set $5 local.get $1 i32.const 1 i32.add @@ -27761,8 +27778,11 @@ local.get $0 i32.add i32.load8_s + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -27779,10 +27799,14 @@ i32.add local.tee $5 i32.load8_s offset=1 + local.set $6 local.get $5 i32.load8_s + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -27844,10 +27868,14 @@ i32.add local.tee $1 i32.load8_s offset=1 + local.set $5 local.get $1 i32.load8_s + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -28534,6 +28562,7 @@ local.get $1 i32.add i32.load8_u + local.set $5 local.get $1 i32.const 1 i32.add @@ -28541,8 +28570,11 @@ local.get $0 i32.add i32.load8_u + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -28559,10 +28591,14 @@ i32.add local.tee $5 i32.load8_u offset=1 + local.set $6 local.get $5 i32.load8_u + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -28624,10 +28660,14 @@ i32.add local.tee $1 i32.load8_u offset=1 + local.set $5 local.get $1 i32.load8_u + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29340,6 +29380,7 @@ i32.shl i32.add i32.load16_s + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -29349,8 +29390,11 @@ i32.shl i32.add i32.load16_s + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29369,10 +29413,14 @@ i32.add local.tee $5 i32.load16_s offset=2 + local.set $6 local.get $5 i32.load16_s + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29440,10 +29488,14 @@ i32.add local.tee $1 i32.load16_s offset=2 + local.set $5 local.get $1 i32.load16_s + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30163,6 +30215,7 @@ i32.shl i32.add i32.load16_u + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -30172,8 +30225,11 @@ i32.shl i32.add i32.load16_u + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30192,10 +30248,14 @@ i32.add local.tee $5 i32.load16_u offset=2 + local.set $6 local.get $5 i32.load16_u + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30263,10 +30323,14 @@ i32.add local.tee $1 i32.load16_u offset=2 + local.set $5 local.get $1 i32.load16_u + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30996,6 +31060,7 @@ i32.shl i32.add i32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -31005,8 +31070,11 @@ i32.shl i32.add i32.load + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31025,10 +31093,14 @@ i32.add local.tee $5 i32.load offset=4 + local.set $6 local.get $5 i32.load + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31096,10 +31168,14 @@ i32.add local.tee $1 i32.load offset=4 + local.set $5 local.get $1 i32.load + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31813,6 +31889,7 @@ i32.shl i32.add i32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -31822,8 +31899,11 @@ i32.shl i32.add i32.load + local.set $6 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31842,10 +31922,14 @@ i32.add local.tee $5 i32.load offset=4 + local.set $6 local.get $5 i32.load + local.set $5 i32.const 2 global.set $~argumentsLength + local.get $6 + local.get $5 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31913,10 +31997,14 @@ i32.add local.tee $1 i32.load offset=4 + local.set $5 local.get $1 i32.load + local.set $1 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $1 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -32635,6 +32723,7 @@ i32.shl i32.add i64.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -32644,8 +32733,11 @@ i32.shl i32.add i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -32664,10 +32756,14 @@ i32.add local.tee $6 i64.load offset=8 + local.set $5 local.get $6 i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -32735,10 +32831,14 @@ i32.add local.tee $1 i64.load offset=8 + local.set $5 local.get $1 i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -33461,6 +33561,7 @@ i32.shl i32.add i64.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -33470,8 +33571,11 @@ i32.shl i32.add i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -33490,10 +33594,14 @@ i32.add local.tee $6 i64.load offset=8 + local.set $5 local.get $6 i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -33561,10 +33669,14 @@ i32.add local.tee $1 i64.load offset=8 + local.set $5 local.get $1 i64.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34287,6 +34399,7 @@ i32.shl i32.add f32.load + local.set $5 local.get $0 local.get $1 i32.const 1 @@ -34296,8 +34409,11 @@ i32.shl i32.add f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -34316,10 +34432,14 @@ i32.add local.tee $6 f32.load offset=4 + local.set $5 local.get $6 f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -34387,10 +34507,14 @@ i32.add local.tee $1 f32.load offset=4 + local.set $5 local.get $1 f32.load + local.set $7 i32.const 2 global.set $~argumentsLength + local.get $5 + local.get $7 local.get $3 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -35056,6 +35180,7 @@ i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 3952 i32.store offset=4 @@ -35147,6 +35272,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -35278,6 +35404,7 @@ i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 3984 i32.store offset=4 @@ -35369,6 +35496,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -35500,6 +35628,7 @@ i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4016 i32.store offset=4 @@ -35591,6 +35720,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -35722,6 +35852,7 @@ i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4048 i32.store offset=4 @@ -35824,6 +35955,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -35957,6 +36089,7 @@ i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4080 i32.store offset=4 @@ -36059,6 +36192,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -36192,6 +36326,7 @@ i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4112 i32.store offset=4 @@ -36294,6 +36429,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -36427,6 +36563,7 @@ i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4144 i32.store offset=4 @@ -36529,6 +36666,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -36662,6 +36800,7 @@ i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4176 i32.store offset=4 @@ -36764,6 +36903,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -36897,6 +37037,7 @@ i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4208 i32.store offset=4 @@ -36999,6 +37140,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -37132,6 +37274,7 @@ f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4240 i32.store offset=4 @@ -37234,6 +37377,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -37367,6 +37511,7 @@ f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4272 i32.store offset=4 @@ -37469,6 +37614,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $6 i32.store offset=8 local.get $6 @@ -37995,10 +38141,12 @@ i32.store local.get $0 call $~lib/typedarray/Uint8Array#join + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> (param $0 i32) (param $1 i32) (local $2 i32) @@ -47040,6 +47188,7 @@ i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=4 @@ -47121,6 +47270,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47180,6 +47330,7 @@ i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=4 @@ -47261,6 +47412,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47320,6 +47472,7 @@ i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3664 i32.store offset=4 @@ -47401,6 +47554,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47460,6 +47614,7 @@ i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3696 i32.store offset=4 @@ -47549,6 +47704,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47608,6 +47764,7 @@ i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3728 i32.store offset=4 @@ -47697,6 +47854,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47756,6 +47914,7 @@ i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3760 i32.store offset=4 @@ -47845,6 +48004,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -47904,6 +48064,7 @@ i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3792 i32.store offset=4 @@ -47993,6 +48154,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -48052,6 +48214,7 @@ i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3824 i32.store offset=4 @@ -48141,6 +48304,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -48200,6 +48364,7 @@ i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3856 i32.store offset=4 @@ -48289,6 +48454,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -48348,6 +48514,7 @@ f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3888 i32.store offset=4 @@ -48437,6 +48604,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -48496,6 +48664,7 @@ f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3920 i32.store offset=4 @@ -48585,6 +48754,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $7 i32.store offset=8 local.get $7 @@ -50054,8 +50224,10 @@ local.get $3 i32.add i32.load8_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5008 @@ -50097,8 +50269,10 @@ local.get $3 i32.add i32.load8_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5040 @@ -50173,8 +50347,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5072 @@ -50216,8 +50392,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5104 @@ -50292,8 +50470,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5136 @@ -50335,8 +50515,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5168 @@ -50415,8 +50597,10 @@ i32.shl i32.add i32.load16_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5200 @@ -50462,8 +50646,10 @@ i32.shl i32.add i32.load16_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5232 @@ -50542,8 +50728,10 @@ i32.shl i32.add i32.load16_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5264 @@ -50589,8 +50777,10 @@ i32.shl i32.add i32.load16_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5296 @@ -50669,8 +50859,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5328 @@ -50716,8 +50908,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5360 @@ -50796,8 +50990,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5392 @@ -50843,8 +51039,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $1 local.get $2 i32.const 5424 @@ -50923,8 +51121,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 5456 @@ -50970,8 +51170,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 5488 @@ -51050,8 +51252,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 5520 @@ -51097,8 +51301,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 5552 @@ -51177,8 +51383,10 @@ i32.shl i32.add f32.load + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 local.get $1 local.get $2 i32.const 5584 @@ -51224,8 +51432,10 @@ i32.shl i32.add f32.load + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 local.get $1 local.get $2 i32.const 5616 @@ -51304,8 +51514,10 @@ i32.shl i32.add f64.load + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $6 local.get $1 local.get $2 i32.const 5648 @@ -51351,8 +51563,10 @@ i32.shl i32.add f64.load + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $6 local.get $1 local.get $2 i32.const 5680 @@ -51427,8 +51641,10 @@ local.get $3 i32.add i32.load8_s + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5712 @@ -51470,8 +51686,10 @@ local.get $3 i32.add i32.load8_s + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5744 @@ -51546,8 +51764,10 @@ local.get $3 i32.add i32.load8_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5776 @@ -51589,8 +51809,10 @@ local.get $3 i32.add i32.load8_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5808 @@ -51665,8 +51887,10 @@ local.get $3 i32.add i32.load8_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5840 @@ -51708,8 +51932,10 @@ local.get $3 i32.add i32.load8_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5872 @@ -51788,8 +52014,10 @@ i32.shl i32.add i32.load16_s + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5904 @@ -51835,8 +52063,10 @@ i32.shl i32.add i32.load16_s + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5936 @@ -51915,8 +52145,10 @@ i32.shl i32.add i32.load16_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 5968 @@ -51962,8 +52194,10 @@ i32.shl i32.add i32.load16_u + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 6000 @@ -52042,8 +52276,10 @@ i32.shl i32.add i32.load + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 6032 @@ -52089,8 +52325,10 @@ i32.shl i32.add i32.load + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 6064 @@ -52169,8 +52407,10 @@ i32.shl i32.add i32.load + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 6096 @@ -52216,8 +52456,10 @@ i32.shl i32.add i32.load + local.set $7 i32.const 3 global.set $~argumentsLength + local.get $7 local.get $1 local.get $2 i32.const 6128 @@ -52296,8 +52538,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 6160 @@ -52343,8 +52587,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 6192 @@ -52423,8 +52669,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 6224 @@ -52470,8 +52718,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $1 local.get $2 i32.const 6256 @@ -52550,8 +52800,10 @@ i32.shl i32.add f32.load + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 local.get $1 local.get $2 i32.const 6288 @@ -52597,8 +52849,10 @@ i32.shl i32.add f32.load + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 local.get $1 local.get $2 i32.const 6320 @@ -52677,8 +52931,10 @@ i32.shl i32.add f64.load + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $6 local.get $1 local.get $2 i32.const 6352 @@ -52724,8 +52980,10 @@ i32.shl i32.add f64.load + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $6 local.get $1 local.get $2 i32.const 6384 @@ -54230,8 +54488,10 @@ local.get $3 i32.add i32.load8_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7200 @@ -54329,8 +54589,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7232 @@ -54428,8 +54690,10 @@ local.get $3 i32.add i32.load8_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7264 @@ -54528,8 +54792,10 @@ i32.shl i32.add i32.load16_s + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7296 @@ -54631,8 +54897,10 @@ i32.shl i32.add i32.load16_u + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7328 @@ -54728,8 +54996,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7360 @@ -54825,8 +55095,10 @@ i32.shl i32.add i32.load + local.set $8 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $2 local.get $1 i32.const 7392 @@ -54925,8 +55197,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $2 local.get $1 i32.const 7424 @@ -55025,8 +55299,10 @@ i32.shl i32.add i64.load + local.set $4 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $2 local.get $1 i32.const 7456 @@ -55125,8 +55401,10 @@ i32.shl i32.add f32.load + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 local.get $2 local.get $1 i32.const 7488 @@ -55225,8 +55503,10 @@ i32.shl i32.add f64.load + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $6 local.get $2 local.get $1 i32.const 7520 @@ -55336,6 +55616,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 4 i32.const 8 @@ -55349,6 +55630,7 @@ local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $1 local.get $2 i32.store offset=16 local.get $2 @@ -55471,6 +55753,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Uint8Array#subarray @@ -55483,6 +55766,7 @@ local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $1 local.get $2 i32.store offset=16 local.get $2 @@ -55605,6 +55889,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray @@ -55617,6 +55902,7 @@ local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $1 local.get $2 i32.store offset=16 local.get $2 @@ -55734,6 +56020,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Int16Array#subarray @@ -55741,6 +56028,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 + local.get $1 local.get $2 call $~lib/typedarray/Int16Array#reverse local.tee $1 @@ -55863,6 +56151,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Uint16Array#subarray @@ -55870,6 +56159,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 + local.get $1 local.get $2 call $~lib/typedarray/Int16Array#reverse local.tee $1 @@ -56039,6 +56329,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 4 i32.const 8 @@ -56103,6 +56394,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -56270,6 +56562,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Uint32Array#subarray @@ -56333,6 +56626,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -56503,6 +56797,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Int64Array#subarray @@ -56566,6 +56861,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -56736,6 +57032,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Uint64Array#subarray @@ -56799,6 +57096,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -56969,6 +57267,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 8 call $~lib/typedarray/Float32Array#subarray @@ -57032,6 +57331,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -57202,6 +57502,7 @@ end end global.get $~lib/memory/__stack_pointer + local.set $1 local.get $7 i32.const 4 i32.const 8 @@ -57266,6 +57567,7 @@ end end end + local.get $1 local.get $3 i32.store offset=16 local.get $3 @@ -58643,6 +58945,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -58687,6 +58990,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $7 i32.store offset=16 i32.const 0 @@ -58882,6 +59186,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -58926,6 +59231,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $7 i32.store offset=16 i32.const 0 @@ -59020,6 +59326,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59066,6 +59373,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59161,6 +59469,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59207,6 +59516,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59300,6 +59610,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59346,6 +59657,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59439,6 +59751,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59485,6 +59798,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59579,6 +59893,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59625,6 +59940,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59719,6 +60035,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59765,6 +60082,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59859,6 +60177,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59905,6 +60224,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -59999,6 +60319,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer + local.set $3 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60045,6 +60366,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $8 i32.store offset=16 i32.const 0 @@ -60418,6 +60740,7 @@ i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60455,6 +60778,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -60541,6 +60865,7 @@ i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60578,6 +60903,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -60664,6 +60990,7 @@ i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60701,6 +61028,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -60787,6 +61115,7 @@ i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60826,6 +61155,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -60914,6 +61244,7 @@ i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60953,6 +61284,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -61041,6 +61373,7 @@ i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -61080,6 +61413,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -61168,6 +61502,7 @@ i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -61207,6 +61542,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -61295,6 +61631,7 @@ i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -61334,6 +61671,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -61422,6 +61760,7 @@ i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -61461,6 +61800,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 @@ -61549,6 +61889,7 @@ f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer + local.set $2 i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -61588,6 +61929,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 i32.store offset=4 local.get $1 diff --git a/tests/compiler/std/uri.release.wat b/tests/compiler/std/uri.release.wat index 760d2fe48e..c8d9f63f98 100644 --- a/tests/compiler/std/uri.release.wat +++ b/tests/compiler/std/uri.release.wat @@ -1003,6 +1003,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1035,6 +1036,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/super-inline.release.wat b/tests/compiler/super-inline.release.wat index cdf933b481..cc60d96dc6 100644 --- a/tests/compiler/super-inline.release.wat +++ b/tests/compiler/super-inline.release.wat @@ -896,6 +896,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -928,6 +929,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/templateliteral.release.wat b/tests/compiler/templateliteral.release.wat index 99c7c63703..b115663b48 100644 --- a/tests/compiler/templateliteral.release.wat +++ b/tests/compiler/templateliteral.release.wat @@ -1233,6 +1233,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1265,6 +1266,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -4211,10 +4213,12 @@ i32.const 5328 local.get $0 call $~lib/string/String#concat + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $templateliteral/RecursiveObject#toString (param $0 i32) (result i32) (local $1 i32) @@ -4249,10 +4253,12 @@ if local.get $0 i32.load + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end global.get $~lib/memory/__stack_pointer @@ -4288,10 +4294,12 @@ i32.store offset=16 i32.const 5616 call $~lib/staticarray/StaticArray<~lib/string/String>#join + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $~lib/string/String#concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) diff --git a/tests/compiler/throw.release.wat b/tests/compiler/throw.release.wat index 2fb5742739..49cdf4f173 100644 --- a/tests/compiler/throw.release.wat +++ b/tests/compiler/throw.release.wat @@ -854,6 +854,7 @@ global.set $~lib/rt/tlsf/ROOT end global.get $~lib/rt/tlsf/ROOT + local.set $0 local.get $3 i32.const 4 i32.sub @@ -886,6 +887,7 @@ i32.const 1 i32.or i32.store + local.get $0 local.get $1 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/typeof.release.wat b/tests/compiler/typeof.release.wat index d2182e90d1..8f7157b49a 100644 --- a/tests/compiler/typeof.release.wat +++ b/tests/compiler/typeof.release.wat @@ -1028,6 +1028,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1060,6 +1061,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/wasi/trace.release.wat b/tests/compiler/wasi/trace.release.wat index 7c56b38c05..f947dd1f37 100644 --- a/tests/compiler/wasi/trace.release.wat +++ b/tests/compiler/wasi/trace.release.wat @@ -2852,6 +2852,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $0 local.get $6 i32.const 4 i32.sub @@ -2884,6 +2885,7 @@ i32.const 1 i32.or i32.store + local.get $0 local.get $7 call $~lib/rt/tlsf/insertBlock end diff --git a/tests/compiler/while.release.wat b/tests/compiler/while.release.wat index 1488e913b9..7d3570887b 100644 --- a/tests/compiler/while.release.wat +++ b/tests/compiler/while.release.wat @@ -884,6 +884,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -916,6 +917,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end From 0fa96c868e98de93e17bf92ba8d88ece941eeb2f Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 07:16:41 +0300 Subject: [PATCH 19/38] better --- src/module.ts | 1 + tests/compiler/bindings/esm.release.wat | 20 +- tests/compiler/bindings/raw.release.wat | 20 +- tests/compiler/call-super.release.wat | 12 +- tests/compiler/class-implements.release.wat | 14 +- .../class-overloading-cast.release.wat | 14 +- tests/compiler/class-overloading.release.wat | 14 +- tests/compiler/constructor.release.wat | 12 +- tests/compiler/do.release.wat | 14 +- tests/compiler/empty-new.release.wat | 12 +- .../exportstar-rereexport.release.wat | 14 +- .../extends-baseaggregate.release.wat | 29 +- tests/compiler/extends-recursive.release.wat | 2 +- tests/compiler/for.release.wat | 14 +- tests/compiler/function-call.release.wat | 14 +- tests/compiler/getter-call.release.wat | 14 +- tests/compiler/infer-generic.release.wat | 14 +- tests/compiler/inlining.release.wat | 12 +- tests/compiler/instanceof-class.release.wat | 14 +- tests/compiler/issues/1095.release.wat | 2 +- tests/compiler/issues/1225.release.wat | 12 +- tests/compiler/issues/2166.release.wat | 14 +- tests/compiler/issues/2322/index.release.wat | 12 +- tests/compiler/logical.release.wat | 14 +- tests/compiler/managed-cast.release.wat | 14 +- tests/compiler/memset.release.wat | 2 +- tests/compiler/new.release.wat | 14 +- tests/compiler/number.release.wat | 274 +- .../optional-typeparameters.release.wat | 14 +- tests/compiler/reexport.release.wat | 14 +- tests/compiler/rereexport.release.wat | 14 +- tests/compiler/resolve-access.release.wat | 68 +- tests/compiler/resolve-binary.release.wat | 140 +- .../resolve-elementaccess.release.wat | 424 +- .../resolve-function-expression.release.wat | 14 +- tests/compiler/resolve-new.release.wat | 14 +- .../resolve-propertyaccess.release.wat | 36 +- tests/compiler/resolve-ternary.release.wat | 220 +- tests/compiler/resolve-unary.release.wat | 36 +- tests/compiler/rt/finalize.release.wat | 12 +- tests/compiler/rt/instanceof.release.wat | 14 +- tests/compiler/std-wasi/console.release.wat | 56 +- tests/compiler/std-wasi/crypto.release.wat | 71 +- tests/compiler/std-wasi/process.release.wat | 102 +- tests/compiler/std/array.release.wat | 2869 +++-- tests/compiler/std/date.release.wat | 109 +- tests/compiler/std/map.release.wat | 84 +- tests/compiler/std/math.release.wat | 270 +- tests/compiler/std/new.release.wat | 12 +- .../std/operator-overloading.release.wat | 14 +- tests/compiler/std/set.release.wat | 84 +- tests/compiler/std/staticarray.release.wat | 533 +- .../std/string-casemapping.release.wat | 12 +- .../compiler/std/string-encoding.release.wat | 105 +- tests/compiler/std/string.release.wat | 464 +- tests/compiler/std/symbol.release.wat | 50 +- tests/compiler/std/typedarray.release.wat | 10157 ++++++++-------- tests/compiler/std/uri.release.wat | 12 +- tests/compiler/super-inline.release.wat | 14 +- tests/compiler/templateliteral.release.wat | 880 +- tests/compiler/throw.release.wat | 12 +- tests/compiler/typeof.release.wat | 12 +- tests/compiler/wasi/abort.release.wat | 4 +- tests/compiler/wasi/trace.release.wat | 227 +- tests/compiler/while.release.wat | 14 +- 65 files changed, 8848 insertions(+), 8957 deletions(-) diff --git a/src/module.ts b/src/module.ts index 3244d05c4c..0c6430e9ef 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2354,6 +2354,7 @@ export class Module { passes.push("precompute-propagate"); passes.push("simplify-globals-optimizing"); passes.push("gufa-optimizing"); + passes.push("dae-optimizing"); } if (optimizeLevel >= 3) { passes.push("simplify-locals-nostructure"); diff --git a/tests/compiler/bindings/esm.release.wat b/tests/compiler/bindings/esm.release.wat index 4a285f1eb4..464919e1b2 100644 --- a/tests/compiler/bindings/esm.release.wat +++ b/tests/compiler/bindings/esm.release.wat @@ -2559,7 +2559,7 @@ i32.const 2 i32.shr_u i32.add - local.set $4 + local.set $5 local.get $2 i32.const 4 i32.sub @@ -2580,7 +2580,7 @@ local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2610,7 +2610,7 @@ local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -2622,25 +2622,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 3 i32.shl local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store offset=4 local.get $2 - local.get $4 + local.get $5 i32.store - local.get $4 + local.get $5 if local.get $2 - local.get $4 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $4 + local.get $5 i32.store offset=4 local.get $2 local.get $6 @@ -2649,7 +2649,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 local.get $2 i32.store global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/bindings/raw.release.wat b/tests/compiler/bindings/raw.release.wat index 7fa12720bd..f3db34ffbd 100644 --- a/tests/compiler/bindings/raw.release.wat +++ b/tests/compiler/bindings/raw.release.wat @@ -2559,7 +2559,7 @@ i32.const 2 i32.shr_u i32.add - local.set $4 + local.set $5 local.get $2 i32.const 4 i32.sub @@ -2580,7 +2580,7 @@ local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2610,7 +2610,7 @@ local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -2622,25 +2622,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 3 i32.shl local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store offset=4 local.get $2 - local.get $4 + local.get $5 i32.store - local.get $4 + local.get $5 if local.get $2 - local.get $4 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $4 + local.get $5 i32.store offset=4 local.get $2 local.get $6 @@ -2649,7 +2649,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 local.get $2 i32.store global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/call-super.release.wat b/tests/compiler/call-super.release.wat index b29236e5ae..6e707a1961 100644 --- a/tests/compiler/call-super.release.wat +++ b/tests/compiler/call-super.release.wat @@ -2159,19 +2159,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/class-implements.release.wat b/tests/compiler/class-implements.release.wat index 6515a87ad7..53e2f448b5 100644 --- a/tests/compiler/class-implements.release.wat +++ b/tests/compiler/class-implements.release.wat @@ -1047,13 +1047,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1534,19 +1534,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/class-overloading-cast.release.wat b/tests/compiler/class-overloading-cast.release.wat index a010778c2a..966d1dbded 100644 --- a/tests/compiler/class-overloading-cast.release.wat +++ b/tests/compiler/class-overloading-cast.release.wat @@ -1069,13 +1069,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1972,19 +1972,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/class-overloading.release.wat b/tests/compiler/class-overloading.release.wat index 3a45a0173e..0bd9a70282 100644 --- a/tests/compiler/class-overloading.release.wat +++ b/tests/compiler/class-overloading.release.wat @@ -1093,13 +1093,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -3106,19 +3106,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/constructor.release.wat b/tests/compiler/constructor.release.wat index 8710b644b2..308b9f77b3 100644 --- a/tests/compiler/constructor.release.wat +++ b/tests/compiler/constructor.release.wat @@ -1992,19 +1992,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/do.release.wat b/tests/compiler/do.release.wat index 27d1524cfb..9f8050b65e 100644 --- a/tests/compiler/do.release.wat +++ b/tests/compiler/do.release.wat @@ -1535,13 +1535,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1850,19 +1850,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/empty-new.release.wat b/tests/compiler/empty-new.release.wat index 05676aa0de..cde1a44c13 100644 --- a/tests/compiler/empty-new.release.wat +++ b/tests/compiler/empty-new.release.wat @@ -1393,19 +1393,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/exportstar-rereexport.release.wat b/tests/compiler/exportstar-rereexport.release.wat index ea5271aa41..3f8d88cba0 100644 --- a/tests/compiler/exportstar-rereexport.release.wat +++ b/tests/compiler/exportstar-rereexport.release.wat @@ -1247,13 +1247,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1567,19 +1567,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/extends-baseaggregate.release.wat b/tests/compiler/extends-baseaggregate.release.wat index d8e65ef1a7..6c645c78dc 100644 --- a/tests/compiler/extends-baseaggregate.release.wat +++ b/tests/compiler/extends-baseaggregate.release.wat @@ -1721,18 +1721,19 @@ i32.store offset=4 i32.const 1180 i32.load - local.tee $3 + local.tee $4 i32.const 1 i32.add - local.tee $4 + local.tee $3 + local.tee $0 i32.const 1176 i32.load - local.tee $0 + local.tee $1 i32.const 2 i32.shr_u i32.gt_u if - local.get $4 + local.get $0 i32.const 268435455 i32.gt_u if @@ -1744,28 +1745,28 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $0 + local.get $1 i32.const 1 i32.shl - local.tee $0 + local.tee $1 i32.const 1073741820 - local.get $0 + local.get $1 i32.const 1073741820 i32.lt_u select - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 8 - local.get $4 + local.get $0 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $0 local.get $0 local.get $1 - i32.gt_u + i32.lt_u select local.tee $2 i32.const 1168 @@ -1827,7 +1828,7 @@ end i32.const 1172 i32.load - local.get $3 + local.get $4 i32.const 2 i32.shl i32.add @@ -1840,7 +1841,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 1180 - local.get $4 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/extends-recursive.release.wat b/tests/compiler/extends-recursive.release.wat index ff6b34bfbe..5be0d5cd6e 100644 --- a/tests/compiler/extends-recursive.release.wat +++ b/tests/compiler/extends-recursive.release.wat @@ -1031,13 +1031,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end diff --git a/tests/compiler/for.release.wat b/tests/compiler/for.release.wat index 0803ba5f4d..4122d1e7fc 100644 --- a/tests/compiler/for.release.wat +++ b/tests/compiler/for.release.wat @@ -1531,13 +1531,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1846,19 +1846,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/function-call.release.wat b/tests/compiler/function-call.release.wat index 4b07a84eeb..9f910789d3 100644 --- a/tests/compiler/function-call.release.wat +++ b/tests/compiler/function-call.release.wat @@ -1071,13 +1071,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1578,19 +1578,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/getter-call.release.wat b/tests/compiler/getter-call.release.wat index 75a5e7ccaa..d07fa747ea 100644 --- a/tests/compiler/getter-call.release.wat +++ b/tests/compiler/getter-call.release.wat @@ -1132,13 +1132,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1481,19 +1481,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/infer-generic.release.wat b/tests/compiler/infer-generic.release.wat index 591b9e567c..c04cfe42e8 100644 --- a/tests/compiler/infer-generic.release.wat +++ b/tests/compiler/infer-generic.release.wat @@ -1058,13 +1058,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1574,19 +1574,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/inlining.release.wat b/tests/compiler/inlining.release.wat index d6cd251b24..11ce8908d5 100644 --- a/tests/compiler/inlining.release.wat +++ b/tests/compiler/inlining.release.wat @@ -1718,19 +1718,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/instanceof-class.release.wat b/tests/compiler/instanceof-class.release.wat index c49cdbe0a7..e4879953b9 100644 --- a/tests/compiler/instanceof-class.release.wat +++ b/tests/compiler/instanceof-class.release.wat @@ -1047,13 +1047,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1625,19 +1625,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/issues/1095.release.wat b/tests/compiler/issues/1095.release.wat index 18d6b778e8..15114bfab9 100644 --- a/tests/compiler/issues/1095.release.wat +++ b/tests/compiler/issues/1095.release.wat @@ -1168,13 +1168,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end diff --git a/tests/compiler/issues/1225.release.wat b/tests/compiler/issues/1225.release.wat index b3357bf022..3ca18e56e0 100644 --- a/tests/compiler/issues/1225.release.wat +++ b/tests/compiler/issues/1225.release.wat @@ -1525,19 +1525,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/issues/2166.release.wat b/tests/compiler/issues/2166.release.wat index 5186120f98..9c3671f287 100644 --- a/tests/compiler/issues/2166.release.wat +++ b/tests/compiler/issues/2166.release.wat @@ -1042,13 +1042,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1739,19 +1739,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/issues/2322/index.release.wat b/tests/compiler/issues/2322/index.release.wat index 5063c0c50c..d014bf078b 100644 --- a/tests/compiler/issues/2322/index.release.wat +++ b/tests/compiler/issues/2322/index.release.wat @@ -1452,19 +1452,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/logical.release.wat b/tests/compiler/logical.release.wat index 4f4d826a61..5bed1958f8 100644 --- a/tests/compiler/logical.release.wat +++ b/tests/compiler/logical.release.wat @@ -1204,13 +1204,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1519,19 +1519,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/managed-cast.release.wat b/tests/compiler/managed-cast.release.wat index 23b014480f..a5c72f2703 100644 --- a/tests/compiler/managed-cast.release.wat +++ b/tests/compiler/managed-cast.release.wat @@ -1037,13 +1037,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1853,19 +1853,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/memset.release.wat b/tests/compiler/memset.release.wat index ce3406910e..4d6a774fcf 100644 --- a/tests/compiler/memset.release.wat +++ b/tests/compiler/memset.release.wat @@ -173,9 +173,9 @@ local.get $1 i64.extend_i32_u local.tee $3 + local.get $3 i64.const 32 i64.shl - local.get $3 i64.or local.set $3 loop $while-continue|0 diff --git a/tests/compiler/new.release.wat b/tests/compiler/new.release.wat index 3239aae343..68919cada1 100644 --- a/tests/compiler/new.release.wat +++ b/tests/compiler/new.release.wat @@ -1073,13 +1073,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1653,19 +1653,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/number.release.wat b/tests/compiler/number.release.wat index 6330554bc3..7df0459ec4 100644 --- a/tests/compiler/number.release.wat +++ b/tests/compiler/number.release.wat @@ -1161,13 +1161,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 - local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1759,32 +1759,31 @@ (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) + (local $9 i32) + (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $8 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $10 i64.const 1 i64.sub - local.tee $12 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u @@ -1835,9 +1834,9 @@ i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -1853,7 +1852,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -1861,7 +1860,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000000 i32.rem_u @@ -1871,7 +1870,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000000 i32.rem_u @@ -1881,7 +1880,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000000 i32.rem_u @@ -1891,7 +1890,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000 i32.rem_u @@ -1901,7 +1900,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000 i32.rem_u @@ -1911,7 +1910,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000 i32.rem_u @@ -1921,7 +1920,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000 i32.rem_u @@ -1931,7 +1930,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100 i32.rem_u @@ -1941,7 +1940,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10 i32.rem_u @@ -1949,61 +1948,60 @@ br $break|1 end local.get $5 - local.set $2 + local.set $6 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $2 + local.set $6 end - local.get $2 local.get $4 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 3456 i32.add - local.get $2 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $3 local.get $5 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 4384 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -2017,7 +2015,7 @@ local.set $2 loop $while-continue|3 local.get $0 - local.get $9 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -2026,19 +2024,19 @@ i64.ge_u i32.and if (result i32) - local.get $9 - local.get $0 - i64.sub + local.get $8 local.get $0 local.get $1 i64.add - local.tee $6 - local.get $9 + local.tee $7 + i64.gt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $9 - i64.lt_u i32.or else i32.const 0 @@ -2069,11 +2067,11 @@ i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -2084,11 +2082,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 3456 @@ -2101,27 +2099,27 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $0 - local.get $12 + local.get $11 i64.and - local.tee $6 + local.tee $7 local.get $3 i64.ge_u br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $6 + local.get $7 local.set $0 - local.get $9 - i32.const 0 local.get $8 + i32.const 0 + local.get $2 i32.sub i32.const 2 i32.shl @@ -2145,7 +2143,7 @@ local.get $3 local.get $0 i64.sub - local.get $11 + local.get $10 i64.ge_u i32.and if (result i32) @@ -2153,14 +2151,14 @@ local.get $0 i64.sub local.get $0 - local.get $11 + local.get $10 i64.add - local.tee $6 + local.tee $7 local.get $1 i64.sub i64.gt_u local.get $1 - local.get $6 + local.get $7 i64.gt_u i32.or else @@ -2172,7 +2170,7 @@ i32.sub local.set $2 local.get $0 - local.get $11 + local.get $10 i64.add local.set $0 br $while-continue|6 @@ -2415,9 +2413,13 @@ local.get $1 i32.const 3456 i32.add - local.tee $3 + local.tee $1 i32.const 101 i32.store16 offset=2 + local.get $1 + i32.const 4 + i32.add + local.tee $3 local.get $2 i32.const 1 i32.sub @@ -2431,9 +2433,6 @@ i32.sub local.set $1 end - local.get $3 - i32.const 4 - i32.add local.get $1 local.get $1 i32.const 100000 @@ -2490,7 +2489,7 @@ i32.const 43 local.get $2 select - i32.store16 offset=4 + i32.store16 local.get $0 local.get $1 i32.add @@ -2534,11 +2533,12 @@ ) (func $start:number (local $0 i32) - (local $1 i32) - (local $2 i64) + (local $1 i64) + (local $2 f64) (local $3 i64) (local $4 i64) - (local $5 f64) + (local $5 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -2630,18 +2630,27 @@ local.tee $4 i64.const 31 i64.shl - local.set $2 + local.get $4 + i64.const 10 + i64.shl + i64.const 32 + i64.shr_u + i64.add + local.set $1 local.get $3 i64.const 32 i64.shr_u local.tee $3 i64.const 31 i64.shl - local.get $2 + local.get $4 + i64.const 31 + i64.shl + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $5 i64.const 4294967295 i64.and i64.const 2147483647 @@ -2652,20 +2661,11 @@ local.get $3 i64.const 31 i64.shl - local.get $4 - i64.const 31 - i64.shl - local.get $4 - i64.const 10 - i64.shl - i64.const 32 - i64.shr_u - i64.add - local.tee $2 + local.get $1 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $1 i64.const 4294967295 i64.and local.get $3 @@ -2679,11 +2679,11 @@ i64.add i64.const 1 i64.sub - local.tee $2 + local.tee $1 global.get $~lib/util/number/_exp_pow i32.const 2 i32.add - local.get $2 + local.get $1 local.get $3 i64.const 2147483647 i64.mul @@ -2696,14 +2696,14 @@ i64.const 32 i64.shr_u i64.add - local.tee $2 + local.tee $1 i64.const 32 i64.shr_u i64.add local.get $3 i64.const 4294966784 i64.mul - local.get $2 + local.get $1 i64.const 4294967295 i64.and i64.add @@ -2724,9 +2724,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store - local.get $1 + local.get $6 i32.const 3456 local.get $0 memory.copy @@ -2736,12 +2736,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $6 i32.store local.get $0 i32.const 4448 i32.store offset=4 - local.get $1 + local.get $6 i32.const 4448 call $~lib/string/String.__eq i32.eqz @@ -2755,15 +2755,15 @@ end i32.const 3 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4480 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4480 call $~lib/string/String.__eq i32.eqz @@ -2777,15 +2777,15 @@ end i32.const -5 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4512 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4512 call $~lib/string/String.__eq i32.eqz @@ -2799,15 +2799,15 @@ end i32.const 4 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4544 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4544 call $~lib/string/String.__eq i32.eqz @@ -2825,15 +2825,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4576 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -2851,15 +2851,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 3232 i32.store offset=4 - local.get $1 + local.get $0 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -2916,15 +2916,15 @@ global.set $number/a local.get $0 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 3232 i32.store offset=4 - local.get $1 + local.get $0 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -2943,15 +2943,15 @@ global.set $number/a local.get $0 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4576 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -3090,19 +3090,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/optional-typeparameters.release.wat b/tests/compiler/optional-typeparameters.release.wat index a9f0479817..ddb8d5a540 100644 --- a/tests/compiler/optional-typeparameters.release.wat +++ b/tests/compiler/optional-typeparameters.release.wat @@ -1045,13 +1045,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1497,19 +1497,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/reexport.release.wat b/tests/compiler/reexport.release.wat index 81b84e2a8d..4946973406 100644 --- a/tests/compiler/reexport.release.wat +++ b/tests/compiler/reexport.release.wat @@ -1066,13 +1066,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1514,19 +1514,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/rereexport.release.wat b/tests/compiler/rereexport.release.wat index 10fd08e6a7..4795d668f4 100644 --- a/tests/compiler/rereexport.release.wat +++ b/tests/compiler/rereexport.release.wat @@ -1245,13 +1245,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1565,19 +1565,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-access.release.wat b/tests/compiler/resolve-access.release.wat index 7154d45403..5e8c3714cc 100644 --- a/tests/compiler/resolve-access.release.wat +++ b/tests/compiler/resolve-access.release.wat @@ -1658,7 +1658,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1728 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -1668,47 +1668,47 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -1719,10 +1719,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -1777,23 +1777,23 @@ i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.add @@ -1829,11 +1829,11 @@ i64.shl i64.or i64.store - local.get $1 local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.add @@ -1863,10 +1863,10 @@ br $while-continue|0 end end - local.get $1 + local.get $2 local.get $0 i32.wrap_i64 - local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -1874,7 +1874,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $1 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -2182,7 +2182,7 @@ local.get $0 i64.load i32.wrap_i64 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -2195,7 +2195,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/utoa32 - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2207,53 +2207,53 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 @@ -2261,8 +2261,8 @@ local.tee $0 i32.store local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/resolve-binary.release.wat b/tests/compiler/resolve-binary.release.wat index 937580483a..a32120bfaf 100644 --- a/tests/compiler/resolve-binary.release.wat +++ b/tests/compiler/resolve-binary.release.wat @@ -1943,32 +1943,31 @@ (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) + (local $9 i32) + (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $8 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $10 i64.const 1 i64.sub - local.tee $12 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u @@ -2019,9 +2018,9 @@ i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -2037,7 +2036,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -2045,7 +2044,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000000 i32.rem_u @@ -2055,7 +2054,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000000 i32.rem_u @@ -2065,7 +2064,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000000 i32.rem_u @@ -2075,7 +2074,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000 i32.rem_u @@ -2085,7 +2084,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000 i32.rem_u @@ -2095,7 +2094,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000 i32.rem_u @@ -2105,7 +2104,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000 i32.rem_u @@ -2115,7 +2114,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100 i32.rem_u @@ -2125,7 +2124,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10 i32.rem_u @@ -2133,61 +2132,60 @@ br $break|1 end local.get $5 - local.set $2 + local.set $6 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $2 + local.set $6 end - local.get $2 local.get $4 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 9728 i32.add - local.get $2 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $3 local.get $5 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 10656 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -2201,7 +2199,7 @@ local.set $2 loop $while-continue|3 local.get $0 - local.get $9 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -2210,19 +2208,19 @@ i64.ge_u i32.and if (result i32) - local.get $9 - local.get $0 - i64.sub local.get $0 local.get $1 i64.add - local.tee $6 - local.get $9 + local.tee $7 + local.get $8 + i64.lt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $9 - i64.lt_u i32.or else i32.const 0 @@ -2253,11 +2251,11 @@ i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -2268,11 +2266,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 9728 @@ -2285,27 +2283,27 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $0 - local.get $12 + local.get $11 i64.and - local.tee $6 + local.tee $7 local.get $3 i64.ge_u br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $6 + local.get $7 local.set $0 - local.get $9 - i32.const 0 local.get $8 + i32.const 0 + local.get $2 i32.sub i32.const 2 i32.shl @@ -2329,7 +2327,7 @@ local.get $3 local.get $0 i64.sub - local.get $11 + local.get $10 i64.ge_u i32.and if (result i32) @@ -2337,14 +2335,14 @@ local.get $0 i64.sub local.get $0 - local.get $11 + local.get $10 i64.add - local.tee $6 + local.tee $7 local.get $1 i64.sub i64.gt_u local.get $1 - local.get $6 + local.get $7 i64.gt_u i32.or else @@ -2356,7 +2354,7 @@ i32.sub local.set $2 local.get $0 - local.get $11 + local.get $10 i64.add local.set $0 br $while-continue|6 @@ -4370,19 +4368,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-elementaccess.release.wat b/tests/compiler/resolve-elementaccess.release.wat index abfafb2a6d..6c094e0553 100644 --- a/tests/compiler/resolve-elementaccess.release.wat +++ b/tests/compiler/resolve-elementaccess.release.wat @@ -1623,17 +1623,16 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) (local $9 i32) (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $11 + local.set $8 i64.const 1 i32.const 0 local.get $2 @@ -1642,66 +1641,66 @@ i64.extend_i32_s local.tee $0 i64.shl - local.tee $12 + local.tee $10 i64.const 1 i64.sub - local.tee $10 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -1717,151 +1716,150 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $2 + local.get $5 i32.const 1000000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 - local.set $5 + local.get $5 + local.set $6 i32.const 0 - local.set $2 + local.set $5 br $break|1 end i32.const 0 - local.set $5 + local.set $6 end local.get $4 - local.get $5 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $5 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $2 + local.set $2 + local.get $3 + local.get $5 i64.extend_i32_u local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 - local.get $3 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 2704 @@ -1876,12 +1874,12 @@ i32.shl i32.const 1774 i32.add - local.tee $2 + local.tee $5 i32.load16_u - local.set $5 + local.set $2 loop $while-continue|3 local.get $0 - local.get $11 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -1890,28 +1888,28 @@ i64.ge_u i32.and if (result i32) - local.get $11 - local.get $0 - i64.sub + local.get $8 local.get $0 local.get $1 i64.add - local.tee $6 - local.get $11 + local.tee $7 + i64.gt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $11 - i64.lt_u i32.or else i32.const 0 end if - local.get $5 + local.get $2 i32.const 1 i32.sub - local.set $5 + local.set $2 local.get $0 local.get $1 i64.add @@ -1919,8 +1917,8 @@ br $while-continue|3 end end - local.get $2 local.get $5 + local.get $2 i32.store16 local.get $4 return @@ -1928,12 +1926,12 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $3 i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 @@ -1948,11 +1946,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 1776 @@ -1965,87 +1963,87 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $3 + local.set $2 local.get $0 - local.get $10 + local.get $11 i64.and - local.tee $6 - i64.le_u + local.tee $7 + local.get $3 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $8 - i32.add - global.set $~lib/util/number/_K - local.get $6 - local.set $0 - local.get $11 - i32.const 0 - local.get $8 - i32.sub - i32.const 2 - i32.shl - i32.const 2704 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 1774 - i32.add - local.tee $2 - i32.load16_u - local.set $5 - loop $while-continue|6 - local.get $0 + end + global.get $~lib/util/number/_K + local.get $2 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $0 + local.get $8 + i32.const 0 + local.get $2 + i32.sub + i32.const 2 + i32.shl + i32.const 2704 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 1774 + i32.add + local.tee $5 + i32.load16_u + local.set $2 + loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u + local.get $3 + local.get $0 + i64.sub + local.get $10 + i64.ge_u + i32.and + if (result i32) local.get $1 - i64.lt_u - local.get $3 local.get $0 i64.sub - local.get $12 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub - local.get $0 - local.get $12 - i64.add - local.tee $6 - local.get $1 - i64.sub - i64.gt_u - local.get $1 - local.get $6 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $5 - i32.const 1 - i32.sub - local.set $5 - local.get $0 - local.get $12 - i64.add - local.set $0 - br $while-continue|6 - end + local.get $0 + local.get $10 + i64.add + local.tee $7 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $2 + i32.const 1 + i32.sub + local.set $2 + local.get $0 + local.get $10 + i64.add + local.set $0 + br $while-continue|6 end - local.get $2 - local.get $5 - i32.store16 - local.get $4 end + local.get $5 + local.get $2 + i32.store16 + local.get $4 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2485,10 +2483,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i32) + (local $6 i64) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) @@ -2514,19 +2512,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $6 + local.tee $7 i32.const 1 - local.get $6 + local.get $7 select i32.const 1075 i32.sub - local.tee $7 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $6 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -2541,11 +2539,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $6 + local.tee $7 i32.sub - local.set $8 + local.set $9 local.get $3 - local.get $6 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -2555,25 +2553,25 @@ i64.eq i32.const 1 i32.add - local.tee $6 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub + local.get $8 local.get $7 - local.get $6 i32.sub - local.get $8 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $8 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $6 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -2582,8 +2580,8 @@ f64.add local.tee $0 i32.trunc_sat_f64_s - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.convert_i32_s local.get $0 f64.ne @@ -2592,18 +2590,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 3 i32.shl - local.tee $8 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $8 + local.get $9 i32.const 1832 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $7 + local.get $8 i32.const 1 i32.shl i32.const 2528 @@ -2618,78 +2616,78 @@ i64.const 4294967295 i64.and local.set $4 + global.get $~lib/util/number/_frc_pow + local.tee $10 + i64.const 4294967295 + i64.and + local.tee $11 local.get $1 i64.const 32 i64.shr_u local.tee $1 - global.get $~lib/util/number/_frc_pow - local.tee $9 - i64.const 4294967295 - i64.and - local.tee $10 i64.mul local.get $4 - local.get $10 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $11 + local.set $5 global.get $~lib/util/number/_frc_plus local.tee $3 i64.const 4294967295 i64.and local.set $12 - local.get $10 local.get $3 i64.const 32 i64.shr_u local.tee $3 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $6 global.get $~lib/util/number/_frc_minus local.tee $13 i64.const 4294967295 i64.and local.set $14 - local.get $10 local.get $13 i64.const 32 i64.shr_u local.tee $13 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $9 + local.get $1 + local.get $10 i64.const 32 i64.shr_u - local.tee $9 - local.get $1 + local.tee $1 i64.mul - local.get $11 + local.get $5 i64.const 32 i64.shr_u i64.add + local.get $1 local.get $4 - local.get $9 i64.mul - local.get $11 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -2698,17 +2696,17 @@ i64.const 32 i64.shr_u i64.add + local.get $1 local.get $3 - local.get $9 i64.mul - local.get $5 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $12 i64.mul - local.get $5 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -2719,24 +2717,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 - local.get $6 + local.tee $3 + local.get $7 global.get $~lib/util/number/_exp_pow i32.add i32.const -64 i32.sub + local.get $3 local.get $1 - local.get $9 local.get $13 i64.mul - local.get $10 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $14 i64.mul - local.get $10 + local.get $11 i64.const 4294967295 i64.and i64.add diff --git a/tests/compiler/resolve-function-expression.release.wat b/tests/compiler/resolve-function-expression.release.wat index 24604eceb8..895a7904a7 100644 --- a/tests/compiler/resolve-function-expression.release.wat +++ b/tests/compiler/resolve-function-expression.release.wat @@ -1252,13 +1252,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -1990,19 +1990,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-new.release.wat b/tests/compiler/resolve-new.release.wat index 27b367c391..fee6cd1a0e 100644 --- a/tests/compiler/resolve-new.release.wat +++ b/tests/compiler/resolve-new.release.wat @@ -1151,13 +1151,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1466,19 +1466,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-propertyaccess.release.wat b/tests/compiler/resolve-propertyaccess.release.wat index 0fe509bcf9..ccf0143312 100644 --- a/tests/compiler/resolve-propertyaccess.release.wat +++ b/tests/compiler/resolve-propertyaccess.release.wat @@ -1455,7 +1455,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 select local.tee $0 i32.const 100000 @@ -1506,16 +1506,16 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 - local.get $4 + local.get $3 i32.add - local.set $3 + local.set $5 loop $while-continue|0 local.get $0 i32.const 10000 @@ -1524,12 +1524,12 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $5 + local.set $4 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $3 + local.get $5 local.get $1 i32.const 4 i32.sub @@ -1537,7 +1537,7 @@ i32.const 1 i32.shl i32.add - local.get $5 + local.get $4 i32.const 100 i32.div_u i32.const 2 @@ -1545,7 +1545,7 @@ i32.const 1660 i32.add i64.load32_u - local.get $5 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -1564,7 +1564,7 @@ i32.const 100 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -1590,7 +1590,7 @@ i32.const 10 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -1605,7 +1605,7 @@ i32.load i32.store else - local.get $3 + local.get $5 local.get $1 i32.const 1 i32.sub @@ -1617,7 +1617,7 @@ i32.add i32.store16 end - local.get $4 + local.get $3 if local.get $2 i32.const 45 @@ -2249,19 +2249,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-ternary.release.wat b/tests/compiler/resolve-ternary.release.wat index 93eb6c9de6..d55dea6648 100644 --- a/tests/compiler/resolve-ternary.release.wat +++ b/tests/compiler/resolve-ternary.release.wat @@ -1158,13 +1158,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 - local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1637,32 +1637,31 @@ (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i64) - (local $10 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) + (local $9 i32) + (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $9 + local.set $8 i64.const 1 i32.const 0 local.get $2 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $0 i64.shl - local.tee $11 + local.tee $10 i64.const 1 i64.sub - local.tee $12 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u @@ -1713,9 +1712,9 @@ i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -1731,7 +1730,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -1739,7 +1738,7 @@ local.get $5 i32.const 1000000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000000 i32.rem_u @@ -1749,7 +1748,7 @@ local.get $5 i32.const 100000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000000 i32.rem_u @@ -1759,7 +1758,7 @@ local.get $5 i32.const 10000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000000 i32.rem_u @@ -1769,7 +1768,7 @@ local.get $5 i32.const 1000000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000000 i32.rem_u @@ -1779,7 +1778,7 @@ local.get $5 i32.const 100000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100000 i32.rem_u @@ -1789,7 +1788,7 @@ local.get $5 i32.const 10000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10000 i32.rem_u @@ -1799,7 +1798,7 @@ local.get $5 i32.const 1000 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 1000 i32.rem_u @@ -1809,7 +1808,7 @@ local.get $5 i32.const 100 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 100 i32.rem_u @@ -1819,7 +1818,7 @@ local.get $5 i32.const 10 i32.div_u - local.set $2 + local.set $6 local.get $5 i32.const 10 i32.rem_u @@ -1827,61 +1826,60 @@ br $break|1 end local.get $5 - local.set $2 + local.set $6 i32.const 0 local.set $5 br $break|1 end i32.const 0 - local.set $2 + local.set $6 end - local.get $2 local.get $4 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 3472 i32.add - local.get $2 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $3 local.get $5 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 4400 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $1 @@ -1895,7 +1893,7 @@ local.set $2 loop $while-continue|3 local.get $0 - local.get $9 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -1904,19 +1902,19 @@ i64.ge_u i32.and if (result i32) - local.get $9 - local.get $0 - i64.sub + local.get $8 local.get $0 local.get $1 i64.add - local.tee $6 - local.get $9 + local.tee $7 + i64.gt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $9 - i64.lt_u i32.or else i32.const 0 @@ -1947,11 +1945,11 @@ i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $1 @@ -1962,11 +1960,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 3472 @@ -1979,27 +1977,27 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 + local.set $2 local.get $0 - local.get $12 + local.get $11 i64.and - local.tee $6 + local.tee $7 local.get $3 i64.ge_u br_if $while-continue|4 end global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $6 + local.get $7 local.set $0 - local.get $9 - i32.const 0 local.get $8 + i32.const 0 + local.get $2 i32.sub i32.const 2 i32.shl @@ -2023,7 +2021,7 @@ local.get $3 local.get $0 i64.sub - local.get $11 + local.get $10 i64.ge_u i32.and if (result i32) @@ -2031,14 +2029,14 @@ local.get $0 i64.sub local.get $0 - local.get $11 + local.get $10 i64.add - local.tee $6 + local.tee $7 local.get $1 i64.sub i64.gt_u local.get $1 - local.get $6 + local.get $7 i64.gt_u i32.or else @@ -2050,7 +2048,7 @@ i32.sub local.set $2 local.get $0 - local.get $11 + local.get $10 i64.add local.set $0 br $while-continue|6 @@ -2293,9 +2291,13 @@ local.get $1 i32.const 3472 i32.add - local.tee $3 + local.tee $1 i32.const 101 i32.store16 offset=2 + local.get $1 + i32.const 4 + i32.add + local.tee $3 local.get $2 i32.const 1 i32.sub @@ -2309,9 +2311,6 @@ i32.sub local.set $1 end - local.get $3 - i32.const 4 - i32.add local.get $1 local.get $1 i32.const 100000 @@ -2368,7 +2367,7 @@ i32.const 43 local.get $2 select - i32.store16 offset=4 + i32.store16 local.get $0 local.get $1 i32.add @@ -2432,10 +2431,11 @@ (func $~start (local $0 i32) (local $1 i64) - (local $2 i64) + (local $2 f64) (local $3 i64) - (local $4 i32) - (local $5 f64) + (local $4 i64) + (local $5 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -2544,24 +2544,33 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $2 + local.tee $3 i64.const 4294967295 i64.and - local.tee $3 + local.tee $4 i64.const 31 i64.shl + local.get $4 + i64.const 10 + i64.shl + i64.const 32 + i64.shr_u + i64.add local.set $1 - local.get $2 + local.get $3 i64.const 32 i64.shr_u - local.tee $2 + local.tee $3 i64.const 31 i64.shl - local.get $1 + local.get $4 + i64.const 31 + i64.shl + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $1 + local.get $5 i64.const 4294967295 i64.and i64.const 2147483647 @@ -2569,26 +2578,17 @@ i64.const 32 i64.shr_u i64.add - local.get $2 - i64.const 31 - i64.shl local.get $3 i64.const 31 i64.shl - local.get $3 - i64.const 10 - i64.shl - i64.const 32 - i64.shr_u - i64.add - local.tee $1 + local.get $1 i64.const 32 i64.shr_u i64.add local.get $1 i64.const 4294967295 i64.and - local.get $2 + local.get $3 i64.const 10 i64.shl i64.add @@ -2604,13 +2604,13 @@ i32.const 1 i32.add local.get $1 - local.get $2 + local.get $3 i64.const 2147483647 i64.mul - local.get $3 + local.get $4 i64.const 2147483647 i64.mul - local.get $3 + local.get $4 i64.const 4294966784 i64.mul i64.const 32 @@ -2620,7 +2620,7 @@ i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $3 i64.const 4294966784 i64.mul local.get $1 @@ -2640,28 +2640,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - i32.const 3472 local.get $0 + i32.const 3472 + local.get $6 memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $4 - i32.store + local.tee $6 local.get $0 + i32.store + local.get $6 i32.const 4464 i32.store offset=4 - local.get $4 + local.get $0 i32.const 4464 call $~lib/string/String.__eq i32.eqz @@ -2842,19 +2842,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/resolve-unary.release.wat b/tests/compiler/resolve-unary.release.wat index 248aedb32d..0aaf687926 100644 --- a/tests/compiler/resolve-unary.release.wat +++ b/tests/compiler/resolve-unary.release.wat @@ -1481,7 +1481,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 select local.tee $0 i32.const 100000 @@ -1532,16 +1532,16 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 - local.get $4 + local.get $3 i32.add - local.set $3 + local.set $5 loop $while-continue|0 local.get $0 i32.const 10000 @@ -1550,12 +1550,12 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $5 + local.set $4 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $3 + local.get $5 local.get $1 i32.const 4 i32.sub @@ -1563,7 +1563,7 @@ i32.const 1 i32.shl i32.add - local.get $5 + local.get $4 i32.const 100 i32.div_u i32.const 2 @@ -1571,7 +1571,7 @@ i32.const 1660 i32.add i64.load32_u - local.get $5 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -1590,7 +1590,7 @@ i32.const 100 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -1616,7 +1616,7 @@ i32.const 10 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -1631,7 +1631,7 @@ i32.load i32.store else - local.get $3 + local.get $5 local.get $1 i32.const 1 i32.sub @@ -1643,7 +1643,7 @@ i32.add i32.store16 end - local.get $4 + local.get $3 if local.get $2 i32.const 45 @@ -2562,19 +2562,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/rt/finalize.release.wat b/tests/compiler/rt/finalize.release.wat index cda58d5bc5..c96b823ce0 100644 --- a/tests/compiler/rt/finalize.release.wat +++ b/tests/compiler/rt/finalize.release.wat @@ -1500,19 +1500,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/rt/instanceof.release.wat b/tests/compiler/rt/instanceof.release.wat index a76a053ef8..99bb1f1be4 100644 --- a/tests/compiler/rt/instanceof.release.wat +++ b/tests/compiler/rt/instanceof.release.wat @@ -1076,13 +1076,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -2218,19 +2218,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/std-wasi/console.release.wat b/tests/compiler/std-wasi/console.release.wat index 2e38dd0afd..23da33243a 100644 --- a/tests/compiler/std-wasi/console.release.wat +++ b/tests/compiler/std-wasi/console.release.wat @@ -400,12 +400,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $0of2 + block $2of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $0of2 $0of2 $0of2 $outOfRange + br_table $2of2 $2of2 $2of2 $outOfRange end unreachable end @@ -3332,7 +3332,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 6000 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -3342,47 +3342,47 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3393,10 +3393,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -3451,23 +3451,23 @@ i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.add @@ -3503,11 +3503,11 @@ i64.shl i64.or i64.store - local.get $1 local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.add @@ -3537,10 +3537,10 @@ br $while-continue|0 end end - local.get $1 + local.get $2 local.get $0 i32.wrap_i64 - local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -3548,7 +3548,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $1 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) @@ -3591,7 +3591,7 @@ i32.mul local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 local.tee $0 i32.add local.set $3 @@ -3608,9 +3608,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -3621,9 +3621,9 @@ br $while-continue|0 end end - local.get $2 + local.get $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end return diff --git a/tests/compiler/std-wasi/crypto.release.wat b/tests/compiler/std-wasi/crypto.release.wat index 1694b017cb..311e6650f9 100644 --- a/tests/compiler/std-wasi/crypto.release.wat +++ b/tests/compiler/std-wasi/crypto.release.wat @@ -239,12 +239,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $0of2 + block $2of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $0of2 $0of2 $0of2 $outOfRange + br_table $2of2 $2of2 $2of2 $outOfRange end unreachable end @@ -3795,32 +3795,31 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $1 i32.const 0 i32.store i32.const 0 local.get $0 - local.tee $1 i32.load offset=8 - local.tee $0 - local.get $0 + local.tee $3 + local.get $3 i32.const 0 i32.gt_s select local.set $2 - local.get $4 + local.get $3 + local.get $2 + i32.sub + local.tee $3 + i32.const 0 + local.get $3 + i32.const 0 + i32.gt_s + select + local.set $3 + local.get $1 block $__inlined_func$~lib/typedarray/Uint8Array#constructor (result i32) - local.get $0 - local.get $2 - i32.sub - local.tee $0 - i32.const 0 - local.get $0 - i32.const 0 - i32.gt_s - select - local.set $3 - local.get $4 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3830,14 +3829,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer local.tee $5 @@ -3851,23 +3850,23 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store end - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 local.get $3 @@ -3887,19 +3886,19 @@ call $~lib/rt/itcms/__new local.tee $4 i32.store offset=4 - local.get $0 + local.get $1 local.get $4 i32.store local.get $4 if - local.get $0 + local.get $1 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $1 local.get $4 i32.store offset=4 - local.get $0 + local.get $1 local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -3907,23 +3906,23 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $5 - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 br $__inlined_func$~lib/typedarray/Uint8Array#constructor end br $folding-inner1 end - local.tee $0 + local.tee $1 i32.store - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 local.get $2 i32.add local.get $3 @@ -3932,7 +3931,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 return end i32.const 23312 diff --git a/tests/compiler/std-wasi/process.release.wat b/tests/compiler/std-wasi/process.release.wat index bb25399c2f..51011012f1 100644 --- a/tests/compiler/std-wasi/process.release.wat +++ b/tests/compiler/std-wasi/process.release.wat @@ -391,12 +391,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $0of2 + block $2of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $0of2 $0of2 $0of2 $outOfRange + br_table $2of2 $2of2 $2of2 $outOfRange end unreachable end @@ -3979,27 +3979,27 @@ end i32.const 1088 i32.load - local.tee $4 + local.tee $5 i32.const 2 i32.shl local.tee $3 i32.const 1092 i32.load i32.add - local.set $5 + local.set $6 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $6 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add - local.tee $6 + local.tee $7 local.get $3 - local.get $6 + local.get $7 i32.add call $~lib/bindings/wasi_snapshot_preview1/args_get local.tee $3 @@ -4015,33 +4015,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $7 + local.tee $3 i32.store loop $for-loop|0 local.get $0 - local.get $4 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 local.get $0 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - local.get $3 - local.get $5 - i32.add + local.tee $4 + local.get $4 local.get $6 + i32.add + local.get $7 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $8 + local.tee $4 i32.store offset=4 local.get $0 - local.get $7 + local.get $3 i32.load offset=12 i32.ge_u if @@ -4056,20 +4056,20 @@ call $~lib/wasi/index/abort unreachable end - local.get $7 + local.get $3 local.get $0 i32.const 1 i32.add - local.tee $3 + local.tee $8 i32.const 1 call $~lib/array/ensureCapacity - local.get $7 local.get $3 + local.get $8 i32.store offset=12 end - local.get $7 + local.get $3 local.get $0 - local.get $8 + local.get $4 call $~lib/array/Array<~lib/string/String>#__uset local.get $0 i32.const 1 @@ -4078,13 +4078,13 @@ br $for-loop|0 end end - local.get $6 + local.get $7 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 global.set $~lib/process/process.argv global.get $~lib/process/process.argv global.set $std-wasi/process/argv @@ -4306,23 +4306,23 @@ call $~lib/wasi/index/abort unreachable end - block $__inlined_func$~lib/util/number/itoa64 (result i32) - i32.const 1088 - i64.load - i64.const 1000000 - i64.div_u - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7404 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store + i32.const 1088 + i64.load + i64.const 1000000 + i64.div_u + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7404 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + block $__inlined_func$~lib/util/number/itoa64 local.get $1 i64.eqz if @@ -4331,6 +4331,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 5696 + local.set $0 br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 @@ -4491,9 +4492,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 end - local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -4554,46 +4553,47 @@ local.get $1 i32.wrap_i64 local.tee $2 + local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add diff --git a/tests/compiler/std/array.release.wat b/tests/compiler/std/array.release.wat index 3f53794c51..a620ad0039 100644 --- a/tests/compiler/std/array.release.wat +++ b/tests/compiler/std/array.release.wat @@ -8809,26 +8809,25 @@ (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 i64) (local $11 i64) (local $12 i64) - (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $12 + local.set $11 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $1 i64.shl - local.tee $13 + local.tee $12 i64.const 1 i64.sub - local.tee $11 + local.tee $10 local.get $2 i64.and local.set $7 @@ -8882,9 +8881,9 @@ i32.add end end - local.set $9 + local.set $8 loop $while-continue|0 - local.get $9 + local.get $8 i32.const 0 i32.gt_s if @@ -8900,7 +8899,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $9 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -9008,13 +9007,8 @@ local.get $6 i32.or if - local.get $5 - local.tee $8 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $8 + local.get $5 i32.const 1 i32.shl i32.add @@ -9024,33 +9018,37 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 + local.get $4 local.get $3 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.get $7 i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $9 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 2 i32.shl i32.const 13296 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $2 @@ -9063,10 +9061,10 @@ i32.add local.tee $0 i32.load16_u - local.set $9 + local.set $8 loop $while-continue|3 local.get $1 - local.get $12 + local.get $11 i64.lt_u local.get $4 local.get $1 @@ -9075,28 +9073,28 @@ i64.ge_u i32.and if (result i32) - local.get $12 - local.get $1 - i64.sub + local.get $11 local.get $1 local.get $2 i64.add local.tee $7 - local.get $12 - i64.sub i64.gt_u + local.get $11 + local.get $1 + i64.sub local.get $7 - local.get $12 - i64.lt_u + local.get $11 + i64.sub + i64.gt_u i32.or else i32.const 0 end if - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 local.get $1 local.get $2 i64.add @@ -9105,7 +9103,7 @@ end end local.get $0 - local.get $9 + local.get $8 i32.store16 local.get $5 return @@ -9113,7 +9111,7 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $4 i64.const 10 i64.mul @@ -9122,7 +9120,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $2 @@ -9132,13 +9130,8 @@ i64.const 0 i64.ne if - local.get $5 - local.tee $3 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $3 + local.get $5 i32.const 1 i32.shl i32.add @@ -9149,90 +9142,94 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - local.get $4 + local.set $8 local.get $1 - local.get $11 + local.get $10 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $9 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 + end + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + local.get $11 + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 13296 + i32.add + i64.load32_u + i64.mul + local.set $2 + local.get $0 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.tee $0 + i32.load16_u + local.set $8 + loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u + local.get $4 + local.get $1 + i64.sub local.get $12 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 13296 - i32.add - i64.load32_u - i64.mul - local.set $2 - local.get $0 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.tee $0 - i32.load16_u - local.set $9 - loop $while-continue|6 + i64.ge_u + i32.and + if (result i32) + local.get $2 local.get $1 + local.get $12 + i64.add + local.tee $7 + i64.gt_u local.get $2 - i64.lt_u - local.get $4 local.get $1 i64.sub - local.get $13 - i64.ge_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub - local.get $1 - local.get $13 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u - local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $9 - i32.const 1 - i32.sub - local.set $9 - local.get $1 - local.get $13 - i64.add - local.set $1 - br $while-continue|6 - end + local.get $7 + local.get $2 + i64.sub + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $8 + i32.const 1 + i32.sub + local.set $8 + local.get $1 + local.get $12 + i64.add + local.set $1 + br $while-continue|6 end - local.get $0 - local.get $9 - i32.store16 - local.get $5 end + local.get $0 + local.get $8 + i32.store16 + local.get $5 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -10107,6 +10104,7 @@ br $for-loop|0 end end + local.get $7 local.get $1 local.get $0 i32.const 1 @@ -10122,8 +10120,7 @@ local.get $0 i32.add local.tee $0 - local.get $7 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -11093,6 +11090,7 @@ br $for-loop|0 end end + local.get $5 local.get $1 local.get $0 i32.const 1 @@ -11108,8 +11106,7 @@ local.get $0 i32.add local.tee $0 - local.get $5 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -11292,386 +11289,38 @@ local.get $3 i32.add ) - (func $~lib/array/Array#join (param $0 i32) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=12 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 16268 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $0 - i32.const 1 - i32.sub - local.tee $6 - i32.const 0 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 9696 - local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray - end - local.get $6 - i32.eqz - if - block $__inlined_func$~lib/util/number/itoa64 (result i32) - local.get $5 - i64.load - i64.extend32_s - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16268 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $2 - i64.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 10288 - br $__inlined_func$~lib/util/number/itoa64 - end - i64.const 0 - local.get $2 - i64.sub - local.get $2 - local.get $2 - i64.const 63 - i64.shr_u - i32.wrap_i64 - i32.const 1 - i32.shl - local.tee $1 - select - local.tee $2 - i64.const 4294967295 - i64.le_u - if - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.wrap_i64 - local.tee $3 - i32.const 100000 - i32.lt_u - if (result i32) - local.get $3 - i32.const 100 - i32.lt_u - if (result i32) - local.get $3 - i32.const 10 - i32.ge_u - i32.const 1 - i32.add - else - local.get $3 - i32.const 10000 - i32.ge_u - i32.const 3 - i32.add - local.get $3 - i32.const 1000 - i32.ge_u - i32.add - end - else - local.get $3 - i32.const 10000000 - i32.lt_u - if (result i32) - local.get $3 - i32.const 1000000 - i32.ge_u - i32.const 6 - i32.add - else - local.get $3 - i32.const 1000000000 - i32.ge_u - i32.const 8 - i32.add - local.get $3 - i32.const 100000000 - i32.ge_u - i32.add - end - end - local.tee $4 - i32.const 1 - i32.shl - local.get $1 - i32.add - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $1 - i32.add - local.get $3 - local.get $4 - call $~lib/util/number/utoa32_dec_lut - else - global.get $~lib/memory/__stack_pointer - local.get $2 - i64.const 1000000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 1000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 100000000000 - i64.ge_u - i32.const 10 - i32.add - local.get $2 - i64.const 10000000000 - i64.ge_u - i32.add - else - local.get $2 - i64.const 100000000000000 - i64.ge_u - i32.const 13 - i32.add - local.get $2 - i64.const 10000000000000 - i64.ge_u - i32.add - end - else - local.get $2 - i64.const 100000000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 10000000000000000 - i64.ge_u - i32.const 16 - i32.add - else - local.get $2 - i64.const -8446744073709551616 - i64.ge_u - i32.const 18 - i32.add - local.get $2 - i64.const 1000000000000000000 - i64.ge_u - i32.add - end - end - local.tee $3 - i32.const 1 - i32.shl - local.get $1 - i32.add - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $1 - i32.add - local.get $2 - local.get $3 - call $~lib/util/number/utoa64_dec_lut - end - local.get $1 - if - local.get $0 - i32.const 45 - i32.store16 - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - end - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray - end - global.get $~lib/memory/__stack_pointer - i32.const 9980 - i32.load - i32.const 1 - i32.shr_u - local.tee $7 - i32.const 21 - i32.add - local.get $6 - i32.mul - i32.const 21 - i32.add - local.tee $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $1 - i32.store - i32.const 0 - local.set $0 - loop $for-loop|0 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $1 - local.get $0 - i32.const 1 - i32.shl - i32.add - local.get $5 - local.get $3 - i32.const 3 - i32.shl - i32.add - i64.load - call $~lib/util/number/itoa_buffered - local.get $0 - i32.add - local.set $0 - local.get $7 - if - local.get $1 - local.get $0 - i32.const 1 - i32.shl - i32.add - i32.const 9984 - local.get $7 - i32.const 1 - i32.shl - memory.copy - local.get $0 - local.get $7 - i32.add - local.set $0 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|0 - end - end - local.get $1 - local.get $0 - i32.const 1 - i32.shl - i32.add - local.get $5 - local.get $6 - i32.const 3 - i32.shl - i32.add - i64.load - call $~lib/util/number/itoa_buffered - local.get $0 - i32.add - local.tee $0 - local.get $4 - i32.lt_s - if - local.get $1 - local.get $0 - call $~lib/string/String#substring - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 - end - local.get $0 - return - end - i32.const 32672 - i32.const 32720 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - i32.const 255 - i32.and - i32.const 10 - i32.lt_u - if - local.get $0 - local.get $1 - i32.const 255 - i32.and - i32.const 48 - i32.or - i32.store16 - i32.const 1 - return - end - local.get $1 - i32.const 255 - i32.and - local.tee $2 - i32.const 100000 - i32.lt_u - if (result i32) - local.get $2 - i32.const 100 - i32.lt_u - if (result i32) - local.get $2 - i32.const 10 - i32.ge_u + (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + i32.const 255 + i32.and + i32.const 10 + i32.lt_u + if + local.get $0 + local.get $1 + i32.const 255 + i32.and + i32.const 48 + i32.or + i32.store16 + i32.const 1 + return + end + local.get $1 + i32.const 255 + i32.and + local.tee $2 + i32.const 100000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 100 + i32.lt_u + if (result i32) + local.get $2 + i32.const 10 + i32.ge_u i32.const 1 i32.add else @@ -12390,7 +12039,9 @@ i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $0 + local.set $7 + local.get $0 i32.const 8160 i32.store offset=4 call $~lib/math/NativeMath.random @@ -12668,6 +12319,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -12681,8 +12333,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -12884,6 +12535,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -12897,8 +12549,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -13154,17 +12805,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) - (local $7 f32) + (local $4 i64) + (local $5 f64) + (local $6 f32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) global.get $~lib/memory/__stack_pointer i32.const 172 i32.sub @@ -13238,7 +12888,7 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13272,20 +12922,20 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $8 i32.store offset=4 local.get $0 - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 if local.get $0 - local.get $9 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $9 + local.get $8 i32.store offset=4 local.get $0 i32.const 1 @@ -13294,7 +12944,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $7 local.get $0 i32.store global.get $~lib/memory/__stack_pointer @@ -13331,31 +12981,31 @@ i32.store offset=4 local.get $0 i32.load offset=4 - local.set $8 + local.set $7 i32.const 1 local.get $0 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 1 i32.gt_s select - local.tee $10 + local.tee $9 i32.const 3 - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.const 3 i32.gt_s select - local.tee $9 + local.tee $8 i32.lt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const 1 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13364,12 +13014,12 @@ i32.const 6 i32.const 1728 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13382,25 +13032,26 @@ end local.get $0 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.get $0 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select - local.tee $10 + local.set $9 + local.get $8 local.get $9 - i32.lt_s + i32.gt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const 0 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13409,12 +13060,12 @@ i32.const 6 i32.const 1760 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13427,34 +13078,34 @@ end local.get $0 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.get $0 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select - local.tee $10 - local.get $9 + local.tee $9 + local.get $8 i32.const 3 i32.sub - local.tee $9 + local.tee $8 i32.const 0 - local.get $9 + local.get $8 i32.const 0 i32.gt_s select - local.tee $9 + local.tee $8 i32.lt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const 1 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13463,12 +13114,12 @@ i32.const 6 i32.const 1792 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13481,28 +13132,29 @@ end local.get $0 i32.load offset=4 - local.set $8 + local.set $7 local.get $0 i32.load offset=12 - local.tee $9 + local.tee $8 i32.const 2 i32.sub - local.tee $10 + local.tee $9 i32.const 0 - local.get $10 + local.get $9 i32.const 0 i32.gt_s select - local.tee $10 + local.set $9 + local.get $8 local.get $9 - i32.lt_s + i32.gt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const 2 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13511,12 +13163,12 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13529,31 +13181,31 @@ end local.get $0 i32.load offset=4 - local.set $8 + local.set $7 i32.const 1 local.get $0 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 1 i32.gt_s select - local.tee $10 + local.tee $9 i32.const 0 - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.const 0 i32.gt_s select - local.tee $9 + local.tee $8 i32.lt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const 0 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13562,12 +13214,12 @@ i32.const 6 i32.const 1856 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13580,25 +13232,26 @@ end local.get $0 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.get $0 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select - local.tee $10 + local.set $9 + local.get $8 local.get $9 - i32.lt_s + i32.gt_s if - local.get $8 - local.get $10 + local.get $7 + local.get $9 i32.add i32.const -1 + local.get $8 local.get $9 - local.get $10 i32.sub memory.fill end @@ -13607,12 +13260,12 @@ i32.const 6 i32.const 1888 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13641,12 +13294,12 @@ i32.const 7 i32.const 1968 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13667,12 +13320,12 @@ i32.const 7 i32.const 2016 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13693,12 +13346,12 @@ i32.const 7 i32.const 2064 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13719,12 +13372,12 @@ i32.const 7 i32.const 2112 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13745,12 +13398,12 @@ i32.const 7 i32.const 2160 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13771,12 +13424,12 @@ i32.const 7 i32.const 2208 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13805,12 +13458,12 @@ i32.const 8 i32.const 2304 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13831,12 +13484,12 @@ i32.const 8 i32.const 2352 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13857,12 +13510,12 @@ i32.const 8 i32.const 2400 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13883,12 +13536,12 @@ i32.const 8 i32.const 2448 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13909,12 +13562,12 @@ i32.const 8 i32.const 2496 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13935,12 +13588,12 @@ i32.const 8 i32.const 2544 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -13961,12 +13614,12 @@ i32.const 8 i32.const 2592 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -14335,33 +13988,33 @@ i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.load offset=4 i32.store offset=16 - local.get $8 + local.get $7 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $8 + local.get $7 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset local.get $0 - local.get $8 + local.get $7 i32.store offset=16 - local.get $8 + local.get $7 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $8 + local.get $7 i32.const 0 i32.store offset=12 - local.get $8 + local.get $7 i32.load offset=12 if i32.const 0 @@ -14438,19 +14091,19 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $8 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 local.get $0 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14464,9 +14117,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.load offset=12 i32.const 3 i32.ne @@ -14478,7 +14131,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.load offset=12 i32.const 3 i32.ne @@ -14495,19 +14148,19 @@ i32.const 3 i32.const 2736 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 call $~lib/array/Array#concat drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14519,7 +14172,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -14532,7 +14185,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -14545,7 +14198,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -14565,21 +14218,21 @@ i32.const 47 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store + local.get $7 local.get $8 - local.get $9 local.get $0 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14603,7 +14256,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.load offset=12 i32.const 5 i32.ne @@ -14615,7 +14268,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -14628,7 +14281,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -14641,7 +14294,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -14654,7 +14307,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -14667,7 +14320,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -14680,10 +14333,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 call $~lib/array/Array#pop drop - local.get $8 + local.get $7 i32.load offset=12 i32.const 4 i32.ne @@ -14714,17 +14367,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store offset=8 - local.get $8 + local.get $7 local.get $0 - local.get $9 + local.get $8 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=16 - local.get $8 + local.get $7 i32.load offset=12 i32.const 3 i32.ne @@ -14768,12 +14421,12 @@ i32.const 3 i32.const 2848 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -14807,12 +14460,12 @@ i32.const 3 i32.const 2944 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -14846,12 +14499,12 @@ i32.const 3 i32.const 3040 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -14885,12 +14538,12 @@ i32.const 3 i32.const 3136 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -14924,12 +14577,12 @@ i32.const 3 i32.const 3232 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -14963,12 +14616,12 @@ i32.const 3 i32.const 3328 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15002,12 +14655,12 @@ i32.const 3 i32.const 3424 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15041,12 +14694,12 @@ i32.const 3 i32.const 3520 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15080,12 +14733,12 @@ i32.const 3 i32.const 3616 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15119,12 +14772,12 @@ i32.const 3 i32.const 3712 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15158,12 +14811,12 @@ i32.const 3 i32.const 3808 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15197,12 +14850,12 @@ i32.const 3 i32.const 3904 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 local.get $0 - local.get $8 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15451,7 +15104,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s if @@ -15464,30 +15117,30 @@ end local.get $0 i32.load offset=4 - local.tee $9 + local.tee $8 i32.load - local.set $10 - local.get $9 - local.get $9 + local.set $9 + local.get $8 + local.get $8 i32.const 4 i32.add - local.get $8 + local.get $7 i32.const 1 i32.sub - local.tee $8 + local.tee $7 i32.const 2 i32.shl - local.tee $11 + local.tee $10 memory.copy - local.get $9 - local.get $11 + local.get $8 + local.get $10 i32.add i32.const 0 i32.store local.get $0 - local.get $8 + local.get $7 i32.store offset=12 - local.get $10 + local.get $9 global.set $std/array/i global.get $std/array/i i32.const 41 @@ -15714,19 +15367,19 @@ i32.const 2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 3 i32.const 2 i32.const 3 i32.const 4000 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15743,19 +15396,19 @@ i32.const 2 i32.const 4 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 4032 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15772,19 +15425,19 @@ i32.const 1 i32.const 5 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 4 i32.const 2 i32.const 3 i32.const 4064 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15801,9 +15454,9 @@ i32.const 0 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 - local.get $8 + local.get $7 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -15821,19 +15474,19 @@ i32.const -2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 4112 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15850,19 +15503,19 @@ i32.const 2 i32.const -1 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 4144 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15879,19 +15532,19 @@ i32.const -3 i32.const -1 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 4176 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15907,11 +15560,11 @@ i32.const -1 i32.const -3 call $~lib/array/Array#slice - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.load offset=12 if i32.const 0 @@ -15945,49 +15598,49 @@ i32.store local.get $0 i32.load offset=4 - local.set $8 + local.set $7 local.get $0 i32.load offset=12 - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if i32.const 0 local.set $0 - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 loop $while-continue|0 local.get $0 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $0 i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load - local.set $12 - local.get $11 + local.set $11 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $0 i32.sub i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load i32.store + local.get $10 local.get $11 - local.get $12 i32.store local.get $0 i32.const 1 @@ -16101,19 +15754,19 @@ i32.const 6 i32.const 4208 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.load offset=4 - local.get $8 + local.get $7 i32.load offset=12 call $~lib/util/bytes/REVERSE local.get $0 - local.get $8 + local.get $7 i32.store offset=16 - local.get $8 + local.get $7 i32.load offset=12 local.set $0 loop $for-loop|0 @@ -16121,10 +15774,10 @@ local.get $1 i32.gt_s if - local.get $8 + local.get $7 local.get $1 call $~lib/array/Array#__get - local.get $8 + local.get $7 i32.load offset=12 local.get $1 i32.sub @@ -16169,10 +15822,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|1 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $1 @@ -16416,11 +16069,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $3 @@ -16428,7 +16081,7 @@ local.set $3 loop $while-continue|014 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16473,11 +16126,11 @@ block $__inlined_func$~lib/array/Array#indexOf38 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf38 local.get $3 @@ -16485,7 +16138,7 @@ local.set $3 loop $while-continue|040 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16532,11 +16185,11 @@ block $__inlined_func$~lib/array/Array#indexOf41 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf41 local.get $3 @@ -16544,7 +16197,7 @@ local.set $3 loop $while-continue|043 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16591,11 +16244,11 @@ block $__inlined_func$~lib/array/Array#indexOf44 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 100 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf44 local.get $3 @@ -16603,7 +16256,7 @@ local.set $3 loop $while-continue|046 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16848,11 +16501,11 @@ block $__inlined_func$~lib/array/Array#indexOf56 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf56 local.get $3 @@ -16860,7 +16513,7 @@ local.set $3 loop $while-continue|058 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16907,11 +16560,11 @@ block $__inlined_func$~lib/array/Array#indexOf59 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf59 local.get $3 @@ -16919,7 +16572,7 @@ local.set $3 loop $while-continue|061 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -16966,11 +16619,11 @@ block $__inlined_func$~lib/array/Array#indexOf62 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf62 local.get $3 @@ -16978,7 +16631,7 @@ local.set $3 loop $while-continue|064 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17030,11 +16683,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $3 @@ -17042,7 +16695,7 @@ local.set $3 loop $while-continue|066 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17092,11 +16745,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $3 @@ -17104,7 +16757,7 @@ local.set $3 loop $while-continue|068 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17169,13 +16822,13 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $8 - loop $while-continue|06 + local.set $7 + loop $while-continue|01 local.get $0 i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $0 local.tee $3 i32.const 2 @@ -17189,7 +16842,7 @@ i32.const 1 i32.sub local.set $0 - br $while-continue|06 + br $while-continue|01 end end i32.const -1 @@ -17210,12 +16863,12 @@ global.set $~argumentsLength i32.const -1 local.set $3 - block $__inlined_func$~lib/array/Array#lastIndexOf11 + block $__inlined_func$~lib/array/Array#lastIndexOf6 local.get $1 i32.load offset=12 local.tee $0 i32.eqz - br_if $__inlined_func$~lib/array/Array#lastIndexOf11 + br_if $__inlined_func$~lib/array/Array#lastIndexOf6 local.get $0 local.get $0 i32.add @@ -17229,13 +16882,13 @@ local.set $0 local.get $1 i32.load offset=4 - local.set $8 - loop $while-continue|012 + local.set $7 + loop $while-continue|07 local.get $0 i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $0 local.tee $3 i32.const 2 @@ -17244,12 +16897,12 @@ i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf11 + br_if $__inlined_func$~lib/array/Array#lastIndexOf6 local.get $3 i32.const 1 i32.sub local.set $0 - br $while-continue|012 + br $while-continue|07 end end i32.const -1 @@ -17268,12 +16921,12 @@ end i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#lastIndexOf13 + block $__inlined_func$~lib/array/Array#lastIndexOf8 local.get $1 i32.load offset=12 local.tee $3 i32.eqz - br_if $__inlined_func$~lib/array/Array#lastIndexOf13 + br_if $__inlined_func$~lib/array/Array#lastIndexOf8 local.get $3 i32.const 1 i32.sub @@ -17299,7 +16952,7 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf13 + br_if $__inlined_func$~lib/array/Array#lastIndexOf8 local.get $0 i32.const 1 i32.sub @@ -17480,22 +17133,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf14 + block $__inlined_func$~lib/array/Array#indexOf9 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf14 + br_if $__inlined_func$~lib/array/Array#indexOf9 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|015 + loop $while-continue|010 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17507,12 +17160,12 @@ i32.load i32.const 44 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf14 + br_if $__inlined_func$~lib/array/Array#indexOf9 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|015 + br $while-continue|010 end end i32.const -1 @@ -17537,22 +17190,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf17 + block $__inlined_func$~lib/array/Array#indexOf12 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf17 + br_if $__inlined_func$~lib/array/Array#indexOf12 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|018 + loop $while-continue|013 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17564,12 +17217,12 @@ i32.load i32.const 42 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf17 + br_if $__inlined_func$~lib/array/Array#indexOf12 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|018 + br $while-continue|013 end end i32.const -1 @@ -17594,22 +17247,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf20 + block $__inlined_func$~lib/array/Array#indexOf15 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf20 + br_if $__inlined_func$~lib/array/Array#indexOf15 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|021 + loop $while-continue|016 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17621,12 +17274,12 @@ i32.load i32.const 45 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf20 + br_if $__inlined_func$~lib/array/Array#indexOf15 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|021 + br $while-continue|016 end end i32.const -1 @@ -17651,22 +17304,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf23 + block $__inlined_func$~lib/array/Array#indexOf18 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 100 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf23 + br_if $__inlined_func$~lib/array/Array#indexOf18 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|024 + loop $while-continue|019 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17678,12 +17331,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf23 + br_if $__inlined_func$~lib/array/Array#indexOf18 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|024 + br $while-continue|019 end end i32.const -1 @@ -17706,7 +17359,7 @@ i32.store i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf26 + block $__inlined_func$~lib/array/Array#indexOf21 local.get $1 i32.load offset=12 local.tee $3 @@ -17715,7 +17368,7 @@ i32.const 1 local.get $3 select - br_if $__inlined_func$~lib/array/Array#indexOf26 + br_if $__inlined_func$~lib/array/Array#indexOf21 local.get $3 i32.const 100 i32.sub @@ -17729,7 +17382,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|027 + loop $while-continue|022 local.get $0 local.get $3 i32.lt_s @@ -17742,12 +17395,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf26 + br_if $__inlined_func$~lib/array/Array#indexOf21 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|027 + br $while-continue|022 end end i32.const -1 @@ -17770,7 +17423,7 @@ i32.store i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf29 + block $__inlined_func$~lib/array/Array#indexOf24 local.get $1 i32.load offset=12 local.tee $3 @@ -17779,7 +17432,7 @@ i32.const 1 local.get $3 select - br_if $__inlined_func$~lib/array/Array#indexOf29 + br_if $__inlined_func$~lib/array/Array#indexOf24 local.get $3 i32.const 2 i32.sub @@ -17793,7 +17446,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|030 + loop $while-continue|025 local.get $0 local.get $3 i32.lt_s @@ -17806,12 +17459,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf29 + br_if $__inlined_func$~lib/array/Array#indexOf24 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|030 + br $while-continue|025 end end i32.const -1 @@ -17834,7 +17487,7 @@ i32.store i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf32 + block $__inlined_func$~lib/array/Array#indexOf27 local.get $1 i32.load offset=12 local.tee $3 @@ -17843,7 +17496,7 @@ i32.const 1 local.get $3 select - br_if $__inlined_func$~lib/array/Array#indexOf32 + br_if $__inlined_func$~lib/array/Array#indexOf27 local.get $3 i32.const 4 i32.sub @@ -17857,7 +17510,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|033 + loop $while-continue|028 local.get $0 local.get $3 i32.lt_s @@ -17870,12 +17523,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf32 + br_if $__inlined_func$~lib/array/Array#indexOf27 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|033 + br $while-continue|028 end end i32.const -1 @@ -17900,22 +17553,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf35 + block $__inlined_func$~lib/array/Array#indexOf30 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf35 + br_if $__inlined_func$~lib/array/Array#indexOf30 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|036 + loop $while-continue|031 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17927,12 +17580,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf35 + br_if $__inlined_func$~lib/array/Array#indexOf30 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|036 + br $while-continue|031 end end i32.const -1 @@ -17957,22 +17610,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf39 + block $__inlined_func$~lib/array/Array#indexOf33 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf39 + br_if $__inlined_func$~lib/array/Array#indexOf33 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|041 + loop $while-continue|034 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -17984,12 +17637,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf39 + br_if $__inlined_func$~lib/array/Array#indexOf33 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|041 + br $while-continue|034 end end i32.const -1 @@ -18014,22 +17667,22 @@ local.set $1 i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf43 + block $__inlined_func$~lib/array/Array#indexOf36 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.le_s i32.const 1 - local.get $8 + local.get $7 select - br_if $__inlined_func$~lib/array/Array#indexOf43 + br_if $__inlined_func$~lib/array/Array#indexOf36 local.get $3 i32.load offset=4 local.set $3 - loop $while-continue|044 + loop $while-continue|037 local.get $1 - local.get $8 + local.get $7 i32.lt_s if local.get $3 @@ -18041,12 +17694,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf43 + br_if $__inlined_func$~lib/array/Array#indexOf36 local.get $0 i32.const 1 i32.add local.set $1 - br $while-continue|044 + br $while-continue|037 end end i32.const -1 @@ -18101,11 +17754,11 @@ i32.shl i32.add f32.load - local.tee $7 + local.tee $6 f32.const nan:0x400000 f32.eq - local.get $7 - local.get $7 + local.get $6 + local.get $6 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -18166,11 +17819,11 @@ i32.shl i32.add f64.load - local.tee $6 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $6 - local.get $6 + local.get $5 + local.get $5 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19330,16 +18983,16 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $9 + local.set $8 local.get $3 i32.const 1 + local.get $7 local.get $8 - local.get $9 i32.sub local.tee $3 local.get $3 @@ -19357,44 +19010,44 @@ i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store - local.get $10 + local.get $9 i32.load offset=4 local.get $1 i32.load offset=4 - local.tee $11 - local.get $9 + local.tee $10 + local.get $8 i32.const 2 i32.shl i32.add - local.tee $12 + local.tee $11 local.get $3 i32.const 2 i32.shl memory.copy local.get $3 - local.get $9 - i32.add - local.tee $9 local.get $8 + i32.add + local.tee $8 + local.get $7 i32.ne if - local.get $12 local.get $11 - local.get $9 + local.get $10 + local.get $8 i32.const 2 i32.shl i32.add + local.get $7 local.get $8 - local.get $9 i32.sub i32.const 2 i32.shl memory.copy end local.get $1 - local.get $8 + local.get $7 local.get $3 i32.sub i32.store offset=12 @@ -19403,9 +19056,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.get $10 + local.get $9 i32.store offset=12 - local.get $10 + local.get $9 i32.load offset=12 i32.const 1 i32.ne @@ -19418,7 +19071,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -19546,9 +19199,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19560,10 +19213,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6608 @@ -19610,9 +19263,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19624,10 +19277,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6640 @@ -19676,9 +19329,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19690,10 +19343,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6672 @@ -19742,9 +19395,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19756,10 +19409,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6704 @@ -19824,9 +19477,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19838,10 +19491,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6736 @@ -19917,9 +19570,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -19931,10 +19584,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6768 @@ -20235,9 +19888,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20249,11 +19902,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 6976 @@ -20299,9 +19952,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20313,11 +19966,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7008 @@ -20362,9 +20015,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20376,11 +20029,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7040 @@ -20442,9 +20095,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20456,11 +20109,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7072 @@ -20532,9 +20185,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20546,11 +20199,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7104 @@ -20625,9 +20278,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20639,11 +20292,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7136 @@ -20688,9 +20341,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20702,11 +20355,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7168 @@ -20750,9 +20403,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20764,11 +20417,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7200 @@ -20828,9 +20481,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20842,11 +20495,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7232 @@ -20918,9 +20571,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -20932,11 +20585,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7264 @@ -21010,9 +20663,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -21024,10 +20677,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7296 @@ -21071,9 +20724,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -21085,10 +20738,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7328 @@ -21148,9 +20801,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -21162,10 +20815,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7360 @@ -21236,9 +20889,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -21250,10 +20903,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7392 @@ -21324,9 +20977,9 @@ local.get $3 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $3 - local.get $8 + local.get $7 i32.lt_s select i32.lt_s @@ -21338,10 +20991,10 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $0 local.get $1 i32.const 7424 @@ -21443,26 +21096,26 @@ local.get $0 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $10 + local.set $9 i32.const 0 local.set $0 loop $for-loop|0196 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $11 - local.get $8 - local.get $11 + local.tee $10 + local.get $7 + local.get $10 i32.lt_s select i32.lt_s @@ -21470,18 +21123,18 @@ local.get $0 i32.const 2 i32.shl - local.tee $11 + local.tee $10 local.get $3 i32.load offset=4 i32.add i32.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength + local.get $9 local.get $10 - local.get $11 i32.add - local.get $12 + local.get $11 local.get $0 local.get $3 i32.const 7456 @@ -21500,9 +21153,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $9 + local.get $8 i32.store offset=4 - local.get $9 + local.get $8 i32.load offset=12 i32.const 4 i32.ne @@ -21514,15 +21167,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.const 0 call $~lib/array/Array#__get - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 i32.store - local.get $7 + local.get $6 local.get $0 i32.const 0 call $~lib/array/Array#__get @@ -21867,15 +21520,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0205 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -21887,11 +21540,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7712 @@ -21932,15 +21585,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0209 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -21952,11 +21605,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7744 @@ -21997,15 +21650,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0213 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -22017,11 +21670,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7776 @@ -22059,15 +21712,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0217 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -22079,11 +21732,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7808 @@ -22120,15 +21773,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0221 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -22140,11 +21793,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7840 @@ -22201,15 +21854,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0226 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -22221,11 +21874,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7872 @@ -22293,15 +21946,15 @@ local.set $0 local.get $3 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0230 local.get $0 - local.get $8 + local.get $7 local.get $3 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select i32.lt_s @@ -22313,11 +21966,11 @@ i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $0 local.get $3 i32.const 7904 @@ -22400,11 +22053,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 7936 @@ -22458,11 +22111,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 7968 @@ -22516,11 +22169,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 8000 @@ -22571,11 +22224,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 8032 @@ -22625,11 +22278,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 8064 @@ -22699,11 +22352,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 8096 @@ -22784,11 +22437,11 @@ i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $8 + local.get $7 local.get $0 local.get $3 i32.const 8128 @@ -22860,26 +22513,26 @@ i64.const -7046029254386353131 call $~lib/bindings/dom/Math.random i64.reinterpret_f64 - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.eqz select - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor @@ -22887,22 +22540,22 @@ global.get $~lib/math/random_state0_64 i64.const -1 i64.xor - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor @@ -23362,11 +23015,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of145 - block $0of146 - block $outOfRange47 + block $1of138 + block $0of139 + block $outOfRange40 global.get $~argumentsLength - br_table $0of146 $1of145 $outOfRange47 + br_table $0of139 $1of138 $outOfRange40 end unreachable end @@ -23399,7 +23052,7 @@ i32.const 0 local.get $3 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $1 i32.load offset=12 i32.ne @@ -23415,21 +23068,21 @@ local.set $0 loop $for-loop|028 local.get $0 - local.get $8 + local.get $7 i32.lt_s if local.get $3 local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne if (result i32) local.get $1 local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne else i32.const 0 @@ -23626,7 +23279,7 @@ i32.const 3 i32.const 9056 call $~lib/rt/__newArray - local.tee $3 + local.tee $1 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -23634,7 +23287,7 @@ i32.const 3 i32.const 9088 call $~lib/rt/__newArray - local.tee $8 + local.tee $3 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -23642,7 +23295,7 @@ i32.const 3 i32.const 9120 call $~lib/rt/__newArray - local.tee $9 + local.tee $7 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23650,7 +23303,7 @@ i32.const 3 i32.const 9152 call $~lib/rt/__newArray - local.tee $10 + local.tee $8 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23658,48 +23311,48 @@ i32.const 3 i32.const 9200 call $~lib/rt/__newArray - local.tee $11 + local.tee $9 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $12 + local.tee $10 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $13 + local.tee $11 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $14 + local.tee $12 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $0 + local.tee $13 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $1 + local.tee $0 i32.store offset=160 - local.get $3 + local.get $1 call $std/array/assertSortedDefault - local.get $8 + local.get $3 call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 9280 call $~lib/rt/__newArray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=8 - local.get $8 local.get $3 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23711,19 +23364,19 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $7 call $std/array/assertSortedDefault i32.const 2 i32.const 2 i32.const 3 i32.const 9312 call $~lib/rt/__newArray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=8 - local.get $9 - local.get $3 + local.get $7 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23735,10 +23388,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $8 call $std/array/assertSortedDefault - local.get $10 - local.get $11 + local.get $8 + local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23750,10 +23403,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $10 call $std/array/assertSortedDefault - local.get $12 - local.get $11 + local.get $10 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23765,10 +23418,10 @@ call $~lib/builtins/abort unreachable end - local.get $13 + local.get $11 call $std/array/assertSortedDefault - local.get $13 local.get $11 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23780,10 +23433,10 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $12 call $std/array/assertSortedDefault - local.get $14 - local.get $11 + local.get $12 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23795,10 +23448,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $13 call $std/array/assertSortedDefault - local.get $0 - local.get $11 + local.get $13 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23810,7 +23463,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $std/array/assertSortedDefault i32.const 0 local.set $1 @@ -23840,67 +23493,67 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store i32.const 0 local.get $3 i32.load offset=12 - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select - local.set $10 + local.set $9 + local.get $7 local.get $8 local.get $9 - local.get $10 i32.sub - local.tee $8 + local.tee $7 i32.const 0 - local.get $8 + local.get $7 i32.const 0 i32.gt_s select - local.tee $8 + local.tee $7 i32.const 2 i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 - local.get $10 + local.get $9 i32.const 2 i32.shl i32.add local.set $3 - local.get $8 + local.get $7 i32.const 2 i32.shl - local.set $8 - loop $while-continue|01 + local.set $7 + loop $while-continue|06 local.get $1 - local.get $8 + local.get $7 i32.lt_u if local.get $1 - local.get $11 + local.get $10 i32.add local.get $1 local.get $3 i32.add i32.load - local.tee $10 + local.tee $9 i32.store - local.get $10 + local.get $9 if + local.get $8 local.get $9 - local.get $10 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -23908,7 +23561,7 @@ i32.const 4 i32.add local.set $1 - br $while-continue|01 + br $while-continue|06 end end global.get $~lib/memory/__stack_pointer @@ -23916,79 +23569,81 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store global.get $~lib/memory/__stack_pointer i32.const 9344 i32.store offset=4 - local.get $9 + local.get $8 i32.load offset=4 - local.get $9 + local.get $8 i32.load offset=12 i32.const 9344 call $~lib/util/sort/SORT local.get $0 - local.get $9 + local.get $8 i32.store offset=12 i32.const 1 - local.set $0 + local.set $3 + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 - local.set $1 - loop $for-loop|02 + local.set $0 + loop $for-loop|07 + local.get $0 local.get $1 - local.get $4 i32.gt_s if block $for-break0 global.get $~lib/memory/__stack_pointer - local.get $9 - local.get $4 + local.get $8 + local.get $1 call $~lib/array/Array#__get - local.tee $3 + local.tee $7 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $8 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 - local.get $4 + local.get $9 + local.get $1 call $~lib/array/Array#__get - local.tee $8 + local.tee $9 i32.store offset=20 - local.get $3 + local.get $7 i32.load - local.get $8 + local.get $9 i32.load i32.ne if (result i32) i32.const 1 else - local.get $3 + local.get $7 i32.load offset=4 - local.get $8 + local.get $9 i32.load offset=4 i32.ne end if i32.const 0 - local.set $0 + local.set $3 br $for-break0 end - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 - br $for-loop|02 + local.set $1 + br $for-loop|07 end end end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -24084,20 +23739,20 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store offset=4 local.get $3 - local.get $4 + local.get $7 i32.store - local.get $4 + local.get $7 if local.get $3 - local.get $4 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 - local.get $4 + local.get $7 i32.store offset=4 local.get $3 i32.const 32 @@ -24122,9 +23777,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $4 + local.tee $7 i32.store offset=4 - local.get $4 + local.get $7 i32.const 0 i32.const 1 local.get $0 @@ -24132,7 +23787,7 @@ call $~lib/array/Array#__set local.get $3 local.get $0 - local.get $4 + local.get $7 call $~lib/array/Array<~lib/array/Array>#__set local.get $0 i32.const 1 @@ -24179,25 +23834,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $7 i64.const 0 i64.store - local.get $4 + local.get $7 i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.store - local.get $4 + local.get $7 i32.const 0 i32.store offset=4 - local.get $4 + local.get $7 i32.const 0 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -24206,23 +23861,23 @@ call $~lib/rt/itcms/__new local.tee $8 i32.store offset=4 - local.get $4 + local.get $7 local.get $8 i32.store local.get $8 if - local.get $4 + local.get $7 local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $7 local.get $8 i32.store offset=4 - local.get $4 + local.get $7 i32.const 2048 i32.store offset=8 - local.get $4 + local.get $7 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -24230,7 +23885,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $4 + local.get $7 i32.store loop $for-loop|03 local.get $3 @@ -24267,7 +23922,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $4 + local.get $7 local.get $3 local.get $1 call $~lib/array/Array<~lib/array/Array>#__set @@ -24283,12 +23938,12 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.get $4 + local.get $7 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9536 i32.store offset=8 - local.get $4 + local.get $7 i32.const 9536 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -24305,7 +23960,7 @@ i32.const 31 i32.const 9776 call $~lib/rt/__newArray - local.tee $4 + local.tee $7 i32.store offset=152 i32.const 1 global.set $~argumentsLength @@ -24322,13 +23977,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of151 - block $0of152 - block $outOfRange53 + block $1of144 + block $0of145 + block $outOfRange46 global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of152 $1of151 $outOfRange53 + br_table $0of145 $1of144 $outOfRange46 end unreachable end @@ -24375,7 +24030,7 @@ local.get $0 i32.load offset=12 local.set $8 - loop $for-loop|054 + loop $for-loop|047 local.get $1 local.get $8 i32.lt_s @@ -24417,7 +24072,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|054 + br $for-loop|047 end end global.get $~lib/memory/__stack_pointer @@ -24458,7 +24113,7 @@ local.get $0 i32.load offset=12 local.tee $1 - local.get $4 + local.get $7 i32.load offset=12 i32.ne if @@ -24470,7 +24125,7 @@ br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> end local.get $0 - local.get $4 + local.get $7 i32.eq if global.get $~lib/memory/__stack_pointer @@ -24494,7 +24149,7 @@ global.get $~lib/memory/__stack_pointer local.get $8 i32.store - local.get $4 + local.get $7 local.get $3 call $~lib/array/Array#__get local.set $9 @@ -24589,9 +24244,11 @@ global.get $~lib/memory/__stack_pointer i32.const 9984 i32.store offset=168 + i32.const 0 + local.set $3 local.get $0 i32.load offset=4 - local.set $3 + local.set $7 local.get $0 i32.load offset=12 local.set $0 @@ -24610,7 +24267,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $8 i32.const 0 i32.lt_s if @@ -24622,12 +24279,12 @@ local.set $0 br $__inlined_func$~lib/util/string/joinBooleanArray end - local.get $4 + local.get $8 i32.eqz if i32.const 9920 i32.const 9952 - local.get $3 + local.get $7 i32.load8_u select local.set $0 @@ -24642,14 +24299,14 @@ i32.load i32.const 1 i32.shr_u - local.tee $8 + local.tee $9 i32.const 5 i32.add - local.get $4 + local.get $8 i32.mul i32.const 5 i32.add - local.tee $9 + local.tee $10 i32.const 1 i32.shl i32.const 1 @@ -24658,20 +24315,20 @@ i32.store i32.const 0 local.set $0 - loop $for-loop|155 - local.get $2 - local.get $4 + loop $for-loop|148 + local.get $3 + local.get $8 i32.lt_s if - local.get $2 local.get $3 + local.get $7 i32.add i32.load8_u - local.tee $10 + local.tee $11 i32.eqz i32.const 4 i32.add - local.set $11 + local.set $12 local.get $1 local.get $0 i32.const 1 @@ -24679,17 +24336,17 @@ i32.add i32.const 9920 i32.const 9952 - local.get $10 - select local.get $11 + select + local.get $12 i32.const 1 i32.shl memory.copy local.get $0 - local.get $11 + local.get $12 i32.add local.set $0 - local.get $8 + local.get $9 if local.get $1 local.get $0 @@ -24697,31 +24354,31 @@ i32.shl i32.add i32.const 9984 - local.get $8 + local.get $9 i32.const 1 i32.shl memory.copy local.get $0 - local.get $8 + local.get $9 i32.add local.set $0 end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 - br $for-loop|155 + local.set $3 + br $for-loop|148 end end - local.get $3 - local.get $4 + local.get $7 + local.get $8 i32.add i32.load8_u - local.tee $2 + local.tee $3 i32.eqz i32.const 4 i32.add - local.set $3 + local.set $7 local.get $1 local.get $0 i32.const 1 @@ -24729,17 +24386,17 @@ i32.add i32.const 9920 i32.const 9952 - local.get $2 - select local.get $3 + select + local.get $7 i32.const 1 i32.shl memory.copy local.get $0 - local.get $3 + local.get $7 i32.add local.tee $0 - local.get $9 + local.get $10 i32.lt_s if local.get $1 @@ -25081,7 +24738,7 @@ i32.const 3 i32.const 13856 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -25089,7 +24746,7 @@ i32.const 3 i32.const 13888 call $~lib/rt/__newArray - local.tee $3 + local.tee $7 i32.store offset=144 local.get $0 call $~lib/array/Array#toString @@ -25134,7 +24791,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/array/Array#toString local.set $0 global.get $~lib/memory/__stack_pointer @@ -25156,7 +24813,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/array/Array#toString local.set $0 global.get $~lib/memory/__stack_pointer @@ -25224,24 +24881,217 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - i32.const 14112 + i32.const 14112 + i32.store offset=8 + local.get $0 + i32.const 14112 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 1217 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 1 + i32.const 10 + i32.const 14160 + call $~lib/rt/__newArray + local.set $0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.store offset=164 + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16268 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 9984 + i32.store + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $0 + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16268 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + block $__inlined_func$~lib/util/string/joinIntegerArray + local.get $0 + i32.const 1 + i32.sub + local.tee $7 + i32.const 0 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 9696 + local.set $0 + br $__inlined_func$~lib/util/string/joinIntegerArray + end + local.get $7 + i32.eqz + if + local.get $3 + i32.load16_u + call $~lib/util/number/utoa32 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + br $__inlined_func$~lib/util/string/joinIntegerArray + end + global.get $~lib/memory/__stack_pointer + i32.const 9980 + i32.load + i32.const 1 + i32.shr_u + local.tee $8 + i32.const 10 + i32.add + local.get $7 + i32.mul + i32.const 10 + i32.add + local.tee $9 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store + i32.const 0 + local.set $0 + loop $for-loop|049 + local.get $2 + local.get $7 + i32.lt_s + if + local.get $1 + local.get $0 + i32.const 1 + i32.shl + i32.add + local.get $3 + local.get $2 + i32.const 1 + i32.shl + i32.add + i32.load16_u + call $~lib/util/number/itoa_buffered + local.get $0 + i32.add + local.set $0 + local.get $8 + if + local.get $1 + local.get $0 + i32.const 1 + i32.shl + i32.add + i32.const 9984 + local.get $8 + i32.const 1 + i32.shl + memory.copy + local.get $0 + local.get $8 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|049 + end + end + local.get $1 + local.get $0 + i32.const 1 + i32.shl + i32.add + local.get $3 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_u + call $~lib/util/number/itoa_buffered + local.get $0 + i32.add + local.tee $0 + local.get $9 + i32.lt_s + if + local.get $1 + local.get $0 + call $~lib/string/String#substring + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + br $__inlined_func$~lib/util/string/joinIntegerArray + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + local.set $0 + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 14192 i32.store offset=8 local.get $0 - i32.const 14112 + i32.const 14192 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1552 - i32.const 1217 + i32.const 1218 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 3 + i32.const 2 i32.const 1 - i32.const 10 - i32.const 14160 + i32.const 37 + i32.const 14240 call $~lib/rt/__newArray local.set $0 global.get $~lib/memory/__stack_pointer @@ -25282,11 +25132,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray + block $__inlined_func$~lib/util/string/joinIntegerArray local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $7 i32.const 0 i32.lt_s if @@ -25296,20 +25146,20 @@ global.set $~lib/memory/__stack_pointer i32.const 9696 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $4 + local.get $7 i32.eqz if local.get $3 - i32.load16_u - call $~lib/util/number/utoa32 + i32.load16_s + call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 9980 @@ -25317,11 +25167,11 @@ i32.const 1 i32.shr_u local.tee $8 - i32.const 10 + i32.const 11 i32.add - local.get $4 + local.get $7 i32.mul - i32.const 10 + i32.const 11 i32.add local.tee $9 i32.const 1 @@ -25332,9 +25182,9 @@ i32.store i32.const 0 local.set $0 - loop $for-loop|056 + loop $for-loop|050 local.get $2 - local.get $4 + local.get $7 i32.lt_s if local.get $1 @@ -25347,8 +25197,8 @@ i32.const 1 i32.shl i32.add - i32.load16_u - call $~lib/util/number/itoa_buffered + i32.load16_s + call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 @@ -25373,7 +25223,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|056 + br $for-loop|050 end end local.get $1 @@ -25382,12 +25232,12 @@ i32.shl i32.add local.get $3 - local.get $4 + local.get $7 i32.const 1 i32.shl i32.add - i32.load16_u - call $~lib/util/number/itoa_buffered + i32.load16_s + call $~lib/util/number/itoa_buffered local.get $0 i32.add local.tee $0 @@ -25402,7 +25252,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -25419,24 +25269,104 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - i32.const 14192 + i32.const 14272 i32.store offset=8 local.get $0 - i32.const 14192 + i32.const 14272 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1552 - i32.const 1218 + i32.const 1219 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 2 - i32.const 1 - i32.const 37 - i32.const 14240 + i32.const 2 + i32.const 3 + i32.const 14320 + call $~lib/rt/__newArray + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=164 + local.get $0 + call $~lib/array/Array#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 14352 + i32.store offset=8 + local.get $0 + i32.const 14352 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 1220 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 3 + i32.const 38 + i32.const 14416 + call $~lib/rt/__newArray + local.set $0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.store offset=164 + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16268 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 9984 + i32.store + local.get $0 + call $~lib/array/Array#join + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 14464 + i32.store offset=8 + local.get $0 + i32.const 14464 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 1221 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 3 + i32.const 39 + i32.const 14544 call $~lib/rt/__newArray local.set $0 global.get $~lib/memory/__stack_pointer @@ -25477,11 +25407,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray + block $__inlined_func$~lib/util/string/joinIntegerArray local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $7 i32.const 0 i32.lt_s if @@ -25491,20 +25421,203 @@ global.set $~lib/memory/__stack_pointer i32.const 9696 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $4 + local.get $7 i32.eqz if - local.get $3 - i32.load16_s - call $~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa64 (result i32) + local.get $3 + i64.load + i64.extend32_s + local.set $4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16268 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $4 + i64.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 10288 + br $__inlined_func$~lib/util/number/itoa64 + end + i64.const 0 + local.get $4 + i64.sub + local.get $4 + local.get $4 + i64.const 63 + i64.shr_u + i32.wrap_i64 + i32.const 1 + i32.shl + local.tee $0 + select + local.tee $4 + i64.const 4294967295 + i64.le_u + if + global.get $~lib/memory/__stack_pointer + local.get $4 + i32.wrap_i64 + local.tee $2 + i32.const 100000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 100 + i32.lt_u + if (result i32) + local.get $2 + i32.const 10 + i32.ge_u + i32.const 1 + i32.add + else + local.get $2 + i32.const 10000 + i32.ge_u + i32.const 3 + i32.add + local.get $2 + i32.const 1000 + i32.ge_u + i32.add + end + else + local.get $2 + i32.const 10000000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 1000000 + i32.ge_u + i32.const 6 + i32.add + else + local.get $2 + i32.const 1000000000 + i32.ge_u + i32.const 8 + i32.add + local.get $2 + i32.const 100000000 + i32.ge_u + i32.add + end + end + local.tee $3 + i32.const 1 + i32.shl + local.get $0 + i32.add + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store + local.get $0 + local.get $1 + i32.add + local.get $2 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + else + global.get $~lib/memory/__stack_pointer + local.get $4 + i64.const 1000000000000000 + i64.lt_u + if (result i32) + local.get $4 + i64.const 1000000000000 + i64.lt_u + if (result i32) + local.get $4 + i64.const 100000000000 + i64.ge_u + i32.const 10 + i32.add + local.get $4 + i64.const 10000000000 + i64.ge_u + i32.add + else + local.get $4 + i64.const 100000000000000 + i64.ge_u + i32.const 13 + i32.add + local.get $4 + i64.const 10000000000000 + i64.ge_u + i32.add + end + else + local.get $4 + i64.const 100000000000000000 + i64.lt_u + if (result i32) + local.get $4 + i64.const 10000000000000000 + i64.ge_u + i32.const 16 + i32.add + else + local.get $4 + i64.const -8446744073709551616 + i64.ge_u + i32.const 18 + i32.add + local.get $4 + i64.const 1000000000000000000 + i64.ge_u + i32.add + end + end + local.tee $2 + i32.const 1 + i32.shl + local.get $0 + i32.add + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store + local.get $0 + local.get $1 + i32.add + local.get $4 + local.get $2 + call $~lib/util/number/utoa64_dec_lut + end + local.get $0 + if + local.get $1 + i32.const 45 + i32.store16 + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + end local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 9980 @@ -25512,11 +25625,11 @@ i32.const 1 i32.shr_u local.tee $8 - i32.const 11 + i32.const 21 i32.add - local.get $4 + local.get $7 i32.mul - i32.const 11 + i32.const 21 i32.add local.tee $9 i32.const 1 @@ -25527,9 +25640,9 @@ i32.store i32.const 0 local.set $0 - loop $for-loop|057 + loop $for-loop|051 local.get $2 - local.get $4 + local.get $7 i32.lt_s if local.get $1 @@ -25539,11 +25652,11 @@ i32.add local.get $3 local.get $2 - i32.const 1 + i32.const 3 i32.shl i32.add - i32.load16_s - call $~lib/util/number/itoa_buffered + i64.load + call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 @@ -25568,7 +25681,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|057 + br $for-loop|051 end end local.get $1 @@ -25577,12 +25690,12 @@ i32.shl i32.add local.get $3 - local.get $4 - i32.const 1 + local.get $7 + i32.const 3 i32.shl i32.add - i32.load16_s - call $~lib/util/number/itoa_buffered + i64.load + call $~lib/util/number/itoa_buffered local.get $0 i32.add local.tee $0 @@ -25597,7 +25710,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray + br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -25614,136 +25727,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - i32.const 14272 - i32.store offset=8 - local.get $0 - i32.const 14272 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 1219 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 14320 - call $~lib/rt/__newArray - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=164 - local.get $0 - call $~lib/array/Array#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 14352 - i32.store offset=8 - local.get $0 - i32.const 14352 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 1220 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 3 - i32.const 38 - i32.const 14416 - call $~lib/rt/__newArray - local.set $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=164 - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16268 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 9984 - i32.store - local.get $0 - call $~lib/array/Array#join - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 14464 - i32.store offset=8 - local.get $0 - i32.const 14464 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 1221 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 3 - i32.const 39 - i32.const 14544 - call $~lib/rt/__newArray - local.set $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=164 - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16268 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 9984 - i32.store - local.get $0 - call $~lib/array/Array#join - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 14608 i32.store offset=8 local.get $0 @@ -25934,8 +25917,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|058 + local.set $7 + loop $for-loop|052 local.get $1 local.get $2 i32.gt_s @@ -25966,7 +25949,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -25979,7 +25962,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|058 + br $for-loop|052 end end global.get $~lib/memory/__stack_pointer @@ -26152,8 +26135,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|059 + local.set $7 + loop $for-loop|053 local.get $1 local.get $2 i32.gt_s @@ -26184,7 +26167,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -26197,7 +26180,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|059 + br $for-loop|053 end end global.get $~lib/memory/__stack_pointer @@ -26378,8 +26361,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|060 + local.set $7 + loop $for-loop|054 local.get $1 local.get $2 i32.gt_s @@ -26410,7 +26393,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -26423,7 +26406,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|060 + br $for-loop|054 end end global.get $~lib/memory/__stack_pointer @@ -26620,7 +26603,7 @@ local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -26775,7 +26758,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $7 local.get $10 i32.store offset=140 global.get $~lib/memory/__stack_pointer @@ -26947,9 +26930,9 @@ i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.load offset=4 local.set $8 i32.const 0 @@ -26996,7 +26979,7 @@ i32.store local.get $9 if - local.get $4 + local.get $7 local.get $9 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -27013,10 +26996,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store local.get $2 - local.get $4 + local.get $7 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 @@ -27745,11 +27728,11 @@ i32.const 2 i32.shl memory.copy + local.get $4 local.get $3 local.get $5 i32.add local.tee $5 - local.get $4 i32.ne if local.get $2 diff --git a/tests/compiler/std/date.release.wat b/tests/compiler/std/date.release.wat index 6df9d5dd59..b64ca9b504 100644 --- a/tests/compiler/std/date.release.wat +++ b/tests/compiler/std/date.release.wat @@ -2145,17 +2145,17 @@ i32.ne if local.get $0 - i64.const 86400000 - i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $3 + i64.const 86400000 + i64.const 0 + local.get $3 i64.const 0 i64.lt_s select - local.get $3 i64.add local.get $0 i32.load @@ -2357,7 +2357,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 select local.tee $0 i32.const 100000 @@ -2408,16 +2408,16 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 - local.get $4 + local.get $3 i32.add - local.set $3 + local.set $5 loop $while-continue|0 local.get $0 i32.const 10000 @@ -2426,12 +2426,12 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $5 + local.set $4 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $3 + local.get $5 local.get $1 i32.const 4 i32.sub @@ -2439,7 +2439,7 @@ i32.const 1 i32.shl i32.add - local.get $5 + local.get $4 i32.const 100 i32.div_u i32.const 2 @@ -2447,7 +2447,7 @@ i32.const 1884 i32.add i64.load32_u - local.get $5 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -2466,7 +2466,7 @@ i32.const 100 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -2492,7 +2492,7 @@ i32.const 10 i32.ge_u if - local.get $3 + local.get $5 local.get $1 i32.const 2 i32.sub @@ -2507,7 +2507,7 @@ i32.load i32.store else - local.get $3 + local.get $5 local.get $1 i32.const 1 i32.sub @@ -2519,7 +2519,7 @@ i32.add i32.store16 end - local.get $4 + local.get $3 if local.get $2 i32.const 45 @@ -2807,18 +2807,19 @@ (local $7 i32) local.get $0 i32.load offset=12 - local.tee $5 + local.tee $6 i32.const 1 i32.add - local.tee $6 + local.tee $5 + local.tee $2 local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 2 i32.shr_u i32.gt_u if - local.get $6 + local.get $2 i32.const 268435455 i32.gt_u if @@ -2830,28 +2831,28 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $2 + local.get $3 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 1073741820 - local.get $2 + local.get $3 i32.const 1073741820 i32.lt_u select - local.tee $2 - local.get $6 + local.tee $3 + local.get $2 i32.const 8 - local.get $6 + local.get $2 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 + local.tee $2 local.get $2 local.get $3 - i32.gt_u + i32.lt_u select local.tee $4 local.get $0 @@ -2914,7 +2915,7 @@ end local.get $0 i32.load offset=4 - local.get $5 + local.get $6 i32.const 2 i32.shl i32.add @@ -2928,7 +2929,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $5 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -8307,7 +8308,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -8334,6 +8334,10 @@ i32.shl local.tee $2 i32.eqz + local.get $1 + i32.const 1 + i32.shl + local.tee $1 local.get $0 i32.const 20 i32.sub @@ -8342,12 +8346,8 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 - local.get $1 - i32.const 1 - i32.shl - local.tee $1 - i32.gt_u + local.tee $6 + i32.lt_u i32.or if global.get $~lib/memory/__stack_pointer @@ -8361,38 +8361,33 @@ local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store + local.get $2 local.get $1 - local.get $4 + local.get $6 i32.sub - local.tee $6 - local.get $2 - i32.gt_u + local.tee $5 + i32.lt_u if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.const 2 i32.sub local.get $2 i32.div_u - local.tee $7 local.get $2 i32.mul - local.tee $8 + local.tee $7 i32.sub local.set $1 - local.get $2 - local.get $7 - i32.mul - local.set $7 loop $while-continue|0 local.get $3 local.get $7 i32.lt_u if local.get $3 - local.get $5 + local.get $4 i32.add i32.const 1872 local.get $2 @@ -8404,29 +8399,29 @@ br $while-continue|0 end end - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.add i32.const 1872 local.get $1 memory.copy else - local.get $5 + local.get $4 i32.const 1872 - local.get $6 + local.get $5 memory.copy end + local.get $4 local.get $5 - local.get $6 i32.add local.get $0 - local.get $4 + local.get $6 memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) diff --git a/tests/compiler/std/map.release.wat b/tests/compiler/std/map.release.wat index c3fc8205b0..0e48c12555 100644 --- a/tests/compiler/std/map.release.wat +++ b/tests/compiler/std/map.release.wat @@ -2073,23 +2073,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4270,23 +4270,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -6440,23 +6440,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -8606,23 +8606,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -10611,23 +10611,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -12203,23 +12203,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -17461,23 +17461,23 @@ i32.const 668265263 i32.mul local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 @@ -21102,23 +21102,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -21524,23 +21524,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -21701,23 +21701,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -21879,23 +21879,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -22058,23 +22058,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -22235,23 +22235,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 @@ -22872,23 +22872,23 @@ i32.const 668265263 i32.mul local.tee $3 - local.get $3 i32.const 15 i32.shr_u + local.get $3 i32.xor i32.const -2048144777 i32.mul local.tee $3 - local.get $3 i32.const 13 i32.shr_u + local.get $3 i32.xor i32.const -1028477379 i32.mul local.tee $3 - local.get $3 i32.const 16 i32.shr_u + local.get $3 i32.xor local.tee $4 local.get $0 diff --git a/tests/compiler/std/math.release.wat b/tests/compiler/std/math.release.wat index e87b3a32bc..72ba6e6ecf 100644 --- a/tests/compiler/std/math.release.wat +++ b/tests/compiler/std/math.release.wat @@ -369,13 +369,11 @@ i64.and i32.wrap_i64 local.tee $3 - if (result i32) - local.get $3 - else - local.get $3 - i32.const 1 - i32.add - end + local.get $3 + i32.const 1 + i32.add + local.get $3 + select i32.sub call $~lib/math/NativeMath.scalbn local.get $2 @@ -465,13 +463,11 @@ i32.const 255 i32.and local.tee $3 - if (result i32) - local.get $3 - else - local.get $3 - i32.const 1 - i32.add - end + local.get $3 + i32.const 1 + i32.add + local.get $3 + select i32.sub local.tee $3 i32.const 127 @@ -2703,35 +2699,35 @@ f32.copysign ) (func $std/math/test_atanh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i64) + (local $3 i64) + (local $4 f64) (local $5 f64) local.get $0 f64.abs - local.set $3 + local.set $5 local.get $0 i64.reinterpret_f64 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $3 i64.const 1022 i64.lt_u if (result f64) - local.get $4 + local.get $3 i64.const 991 i64.ge_u if (result f64) - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add - local.tee $5 + local.tee $4 + local.get $4 local.get $5 - local.get $3 f64.mul f64.const 1 - local.get $3 + local.get $5 f64.sub f64.div f64.add @@ -2739,12 +2735,12 @@ f64.const 0.5 f64.mul else - local.get $3 + local.get $5 end else - local.get $3 + local.get $5 f64.const 1 - local.get $3 + local.get $5 f64.sub f64.div f64.const 2 @@ -3201,78 +3197,77 @@ select ) (func $std/math/test_cbrt (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $3 f64) + (local $4 i32) + (local $5 i64) (local $6 f64) - block $__inlined_func$~lib/math/NativeMath.cbrt (result f64) - local.get $0 - local.get $0 - f64.add + local.get $0 + local.get $0 + f64.add + local.set $3 + block $__inlined_func$~lib/math/NativeMath.cbrt local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 i32.const 2146435072 i32.ge_u br_if $__inlined_func$~lib/math/NativeMath.cbrt - drop - local.get $3 + local.get $4 i32.const 1048576 i32.lt_u if (result i32) local.get $0 - local.get $0 + local.tee $3 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $4 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 i32.eqz br_if $__inlined_func$~lib/math/NativeMath.cbrt - drop - local.get $3 + local.get $4 i32.const 3 i32.div_u i32.const 696219795 i32.add else - local.get $3 + local.get $4 i32.const 3 i32.div_u i32.const 715094163 i32.add end - local.set $3 - local.get $4 + local.set $4 + local.get $5 i64.const -9223372036854775808 i64.and - local.get $3 + local.get $4 i64.extend_i32_u i64.const 32 i64.shl i64.or f64.reinterpret_i64 - local.tee $5 - local.get $5 + local.tee $3 + local.get $3 f64.mul - local.get $5 + local.get $3 local.get $0 f64.div f64.mul local.set $6 local.get $0 - local.get $5 + local.get $3 local.get $6 local.get $6 f64.const 1.6214297201053545 @@ -3301,25 +3296,27 @@ i64.const -1073741824 i64.and f64.reinterpret_i64 - local.tee $5 - local.get $5 + local.tee $3 + local.get $3 f64.mul f64.div local.set $6 - local.get $5 - local.get $5 + local.get $3 + local.get $3 local.get $6 - local.get $5 + local.get $3 f64.sub - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.add local.get $6 f64.add f64.div f64.mul f64.add + local.set $3 end + local.get $3 local.get $1 local.get $2 call $std/math/check @@ -3336,8 +3333,8 @@ (func $std/math/test_cbrtf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f64) (local $4 i32) - (local $5 i32) - (local $6 f64) + (local $5 f64) + (local $6 i32) (local $7 f64) (local $8 f64) block $__inlined_func$~lib/math/NativeMathf.cbrt (result f32) @@ -3346,20 +3343,20 @@ f32.add local.get $0 i32.reinterpret_f32 - local.tee $5 + local.tee $4 i32.const 2147483647 i32.and - local.tee $4 + local.tee $6 i32.const 2139095040 i32.ge_u br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop - local.get $4 + local.get $6 i32.const 8388608 i32.lt_u if (result i32) local.get $0 - local.get $4 + local.get $6 i32.eqz br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop @@ -3367,7 +3364,7 @@ f32.const 16777216 f32.mul i32.reinterpret_f32 - local.tee $5 + local.tee $4 i32.const 2147483647 i32.and i32.const 3 @@ -3375,13 +3372,13 @@ i32.const 642849266 i32.add else - local.get $4 + local.get $6 i32.const 3 i32.div_u i32.const 709958130 i32.add end - local.get $5 + local.get $4 i32.const -2147483648 i32.and i32.or @@ -3396,14 +3393,14 @@ local.get $3 local.get $0 f64.promote_f32 - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.add local.tee $3 local.get $7 f64.add f64.mul - local.get $6 + local.get $5 local.get $7 f64.add local.get $7 @@ -3420,7 +3417,7 @@ local.get $8 f64.add f64.mul - local.get $6 + local.get $5 local.get $8 f64.add local.get $8 @@ -3514,47 +3511,47 @@ local.tee $6 i64.const 4294967295 i64.and - local.tee $7 + local.set $7 local.get $2 + i64.const 4294967295 + i64.and + local.tee $8 + local.get $6 i64.const 32 i64.shr_u - local.tee $8 + local.tee $9 i64.mul - local.get $7 local.get $2 - i64.const 4294967295 - i64.and + i64.const 32 + i64.shr_u local.tee $2 + local.get $7 + i64.mul + local.get $7 + local.get $8 i64.mul local.tee $7 i64.const 32 i64.shr_u i64.add - local.set $9 - local.get $6 - i64.const 32 - i64.shr_u - local.tee $10 - local.get $2 - i64.mul - local.get $9 + local.tee $8 i64.const 4294967295 i64.and i64.add - local.set $2 - local.get $8 - local.get $10 - i64.mul + local.set $10 + local.get $2 local.get $9 + i64.mul + local.get $8 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add global.set $~lib/math/res128_hi - local.get $10 + local.get $9 local.get $1 i64.const 32 i64.shr_u @@ -3563,7 +3560,7 @@ local.get $7 i64.const 4294967295 i64.and - local.get $2 + local.get $10 i64.const 32 i64.shl i64.add @@ -3589,9 +3586,15 @@ i64.const 63 i64.shr_s local.tee $7 + local.get $2 + i64.const 2 + i64.shl + i64.xor + local.set $2 + local.get $6 + local.get $7 i64.const 1 i64.shr_s - local.get $6 i64.xor local.tee $1 i64.clz @@ -3600,30 +3603,25 @@ local.get $8 i64.shl local.get $2 - i64.const 2 - i64.shl - local.get $7 - i64.xor - local.tee $9 i64.const 64 local.get $8 i64.sub i64.shr_u i64.or - local.tee $10 + local.tee $9 i64.const 4294967295 i64.and - local.set $2 - local.get $10 + local.set $1 + local.get $9 i64.const 32 i64.shr_u - local.tee $1 + local.tee $10 i64.const 560513588 i64.mul - local.get $2 + local.get $1 i64.const 3373259426 i64.mul - local.get $2 + local.get $1 i64.const 560513588 i64.mul local.tee $11 @@ -3634,32 +3632,24 @@ i64.const 4294967295 i64.and i64.add - local.set $2 - local.get $1 + local.set $1 + local.get $10 i64.const 3373259426 i64.mul local.get $12 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $1 i64.const 32 i64.shr_u i64.add global.set $~lib/math/res128_hi - local.get $11 - i64.const 4294967295 - i64.and - local.get $2 - i64.const 32 - i64.shl - i64.add - local.tee $1 - local.get $10 + local.get $9 f64.convert_i64_u f64.const 3.753184150245214e-04 f64.mul - local.get $9 + local.get $2 local.get $8 i64.shl f64.convert_i64_u @@ -3668,7 +3658,15 @@ f64.add i64.trunc_sat_f64_u local.tee $2 - i64.lt_u + local.get $11 + i64.const 4294967295 + i64.and + local.get $1 + i64.const 32 + i64.shl + i64.add + local.tee $1 + i64.gt_u i64.extend_i32_u global.get $~lib/math/res128_hi local.tee $9 @@ -5953,58 +5951,58 @@ local.get $9 end end - local.set $9 + local.set $11 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $10 + local.tee $9 f64.sub - local.get $10 + local.get $9 f64.add - local.tee $10 + local.tee $9 f64.sub local.set $12 - local.get $9 - local.get $9 - local.get $9 + local.get $11 + local.get $11 + local.get $11 f64.const 134217729 f64.mul - local.tee $11 + local.tee $10 f64.sub - local.get $11 + local.get $10 f64.add - local.tee $11 + local.tee $10 f64.sub local.set $13 local.get $0 + local.get $10 + local.get $10 + f64.mul local.get $11 local.get $11 f64.mul - local.get $9 - local.get $9 - f64.mul local.tee $0 f64.sub - local.get $11 - local.get $11 + local.get $10 + local.get $10 f64.add local.get $13 f64.add local.get $13 f64.mul f64.add - local.get $10 - local.get $10 + local.get $9 + local.get $9 f64.mul local.get $1 local.get $1 f64.mul local.tee $1 f64.sub - local.get $10 - local.get $10 + local.get $9 + local.get $9 f64.add local.get $12 f64.add diff --git a/tests/compiler/std/new.release.wat b/tests/compiler/std/new.release.wat index c2c6326fe4..05a8a0c0ec 100644 --- a/tests/compiler/std/new.release.wat +++ b/tests/compiler/std/new.release.wat @@ -1452,19 +1452,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/std/operator-overloading.release.wat b/tests/compiler/std/operator-overloading.release.wat index d9dcc25490..80006220a0 100644 --- a/tests/compiler/std/operator-overloading.release.wat +++ b/tests/compiler/std/operator-overloading.release.wat @@ -1097,13 +1097,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -3550,19 +3550,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/std/set.release.wat b/tests/compiler/std/set.release.wat index 6188476783..5abdb45826 100644 --- a/tests/compiler/std/set.release.wat +++ b/tests/compiler/std/set.release.wat @@ -1699,23 +1699,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -1959,23 +1959,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -3434,23 +3434,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -3604,23 +3604,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -5056,23 +5056,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -5227,23 +5227,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -6669,23 +6669,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -6841,23 +6841,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -8295,23 +8295,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -8463,23 +8463,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9867,23 +9867,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor local.tee $3 local.get $0 @@ -10035,23 +10035,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -13576,23 +13576,23 @@ i32.const 668265263 i32.mul local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $2 i32.xor local.tee $3 local.get $0 @@ -13744,23 +13744,23 @@ i32.const 668265263 i32.mul local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 diff --git a/tests/compiler/std/staticarray.release.wat b/tests/compiler/std/staticarray.release.wat index eb24169e25..f0b659ff8c 100644 --- a/tests/compiler/std/staticarray.release.wat +++ b/tests/compiler/std/staticarray.release.wat @@ -2948,9 +2948,9 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 f32) (local $4 f64) - (local $5 f32) + (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) @@ -3377,16 +3377,16 @@ unreachable end loop $for-loop|1 - local.get $2 + local.get $1 local.get $0 i32.load offset=12 i32.lt_s if local.get $6 - local.get $2 + local.get $1 call $~lib/staticarray/StaticArray#__get local.get $0 - local.get $2 + local.get $1 call $~lib/array/Array#__get i32.ne if @@ -3397,10 +3397,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|1 end end @@ -3410,12 +3410,12 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store local.get $0 - local.get $2 + local.get $1 call $~lib/staticarray/StaticArray.fromArray local.tee $0 i32.store offset=4 @@ -3438,12 +3438,12 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.const 1856 i64.load align=1 i64.store align=1 local.get $0 - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.set $0 @@ -3458,7 +3458,7 @@ local.get $6 i32.store offset=12 local.get $0 - local.get $2 + local.get $1 local.get $6 call $~lib/staticarray/StaticArray.concat local.tee $0 @@ -3492,7 +3492,7 @@ local.get $6 i32.store offset=12 local.get $0 - local.get $2 + local.get $1 local.get $6 call $~lib/staticarray/StaticArray.concat local.tee $0 @@ -3503,7 +3503,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3523,15 +3523,15 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.const 2128 i32.const 20 memory.copy local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3543,7 +3543,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3559,8 +3559,8 @@ unreachable end loop $for-loop|2 - local.get $1 local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3568,15 +3568,15 @@ i32.shr_u i32.lt_s if - local.get $2 local.get $1 + local.get $2 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 i32.store local.get $0 - local.get $1 + local.get $2 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $7 global.get $~lib/memory/__stack_pointer @@ -3594,15 +3594,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3627,15 +3627,15 @@ local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer local.tee $6 - local.get $1 + local.get $2 i32.store local.get $6 i32.const 1984 i32.store offset=12 - local.get $1 + local.get $2 i32.const 1984 call $~lib/string/String.__eq i32.eqz @@ -3652,10 +3652,10 @@ call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.store - local.get $1 + local.get $2 i32.const 2016 i32.store offset=12 local.get $0 @@ -3671,13 +3671,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> local.tee $0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3701,7 +3701,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3713,7 +3713,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3729,7 +3729,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3750,7 +3750,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3777,10 +3777,10 @@ call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.store - local.get $1 + local.get $2 i32.const 2080 i32.store offset=12 local.get $0 @@ -3796,7 +3796,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -3817,7 +3817,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -4030,7 +4030,7 @@ local.get $0 i32.store i32.const 0 - local.set $1 + local.set $2 i32.const 0 local.get $0 i32.const 20 @@ -4038,18 +4038,18 @@ i32.load offset=16 i32.const 3 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|0 local.get $1 local.get $2 - i32.lt_s + i32.gt_s if i32.const 1 local.get $0 - local.get $1 + local.get $2 i32.const 3 i32.shl i32.add @@ -4063,10 +4063,10 @@ i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end @@ -4093,7 +4093,7 @@ local.get $0 i32.store i32.const 0 - local.set $1 + local.set $2 i32.const 0 local.get $0 i32.const 20 @@ -4101,35 +4101,35 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|09 local.get $1 local.get $2 - i32.lt_s + i32.gt_s if i32.const 1 local.get $0 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add f32.load - local.tee $5 + local.tee $3 f32.const nan:0x400000 f32.eq - local.get $5 - local.get $5 + local.get $3 + local.get $3 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|09 end end @@ -4429,19 +4429,19 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $6 i32.const 2592 i32.const 16 memory.copy local.get $0 - local.get $2 + local.get $6 i32.store offset=16 i32.const 1 global.set $~argumentsLength i32.const -1 local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $2 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -4461,12 +4461,12 @@ i32.lt_s select local.set $1 - loop $while-continue|01 + loop $while-continue|00 local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $6 local.get $1 i32.const 2 i32.shl @@ -4479,7 +4479,7 @@ i32.const 1 i32.sub local.set $1 - br $while-continue|01 + br $while-continue|00 end end i32.const -1 @@ -4498,54 +4498,67 @@ end i32.const 1 global.set $~argumentsLength - i32.const -1 + local.get $6 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 2 + i32.shr_u local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf6 - local.get $2 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $2 i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf6 - local.get $0 - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 + local.get $1 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $0 + local.get $1 + local.get $1 + local.get $2 + i32.ge_s + select + local.get $1 i32.const 0 i32.lt_s select local.set $1 - loop $while-continue|07 + loop $while-continue|06 local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $6 local.get $1 + local.tee $0 i32.const 2 i32.shl i32.add i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf6 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 + local.get $0 i32.const 1 i32.sub local.set $1 - br $while-continue|07 + br $while-continue|06 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -4557,9 +4570,9 @@ unreachable end i32.const -1 - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf8 - local.get $2 + local.set $2 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -4567,7 +4580,7 @@ i32.shr_u local.tee $0 i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf8 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 local.get $0 i32.const 1 i32.sub @@ -4576,32 +4589,32 @@ i32.const 3 i32.le_u select - local.set $1 + local.set $2 loop $while-continue|044 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $6 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf8 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $while-continue|044 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 3 i32.ne if @@ -4613,9 +4626,9 @@ unreachable end i32.const -1 - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf45 - local.get $2 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -4632,14 +4645,14 @@ i32.const 2 i32.le_u select - local.set $1 + local.set $2 loop $while-continue|048 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $6 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add @@ -4647,17 +4660,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf45 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $while-continue|048 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -4667,9 +4680,9 @@ unreachable end i32.const -1 - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf49 - local.get $2 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -4681,14 +4694,14 @@ local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $2 loop $while-continue|052 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $6 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add @@ -4696,17 +4709,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf49 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $while-continue|052 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -4716,9 +4729,9 @@ unreachable end i32.const -1 - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf53 - local.get $2 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -4730,14 +4743,14 @@ local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $while-continue|056 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if + local.get $6 local.get $2 - local.get $1 i32.const 2 i32.shl i32.add @@ -4745,17 +4758,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf53 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $while-continue|056 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 3 i32.ne if @@ -5167,26 +5180,10 @@ i32.shl i32.add local.get $0 - i32.const 0 - i32.lt_s - if (result i32) - local.get $0 - local.get $0 - i32.add - local.tee $6 - i32.const 0 - local.get $6 - i32.const 0 - i32.gt_s - select - else - local.get $0 - end local.get $2 i32.sub local.tee $2 local.get $0 - local.tee $0 local.get $0 local.get $2 i32.gt_s @@ -5264,12 +5261,12 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $8 i32.const 3216 i32.const 12 memory.copy local.get $0 - local.get $7 + local.get $8 i32.store offset=16 global.get $~lib/memory/__stack_pointer local.tee $1 @@ -5288,7 +5285,7 @@ i32.const 0 i32.store local.get $0 - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5302,7 +5299,7 @@ i32.store local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $0 loop $for-loop|042 @@ -5310,22 +5307,22 @@ local.get $2 i32.lt_s if - local.get $7 local.get $0 i32.const 2 i32.shl local.tee $9 + local.get $8 i32.add i32.load local.set $10 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $9 i32.add local.get $10 local.get $0 - local.get $7 + local.get $8 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -5387,8 +5384,8 @@ i32.const 3280 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5397,28 +5394,28 @@ local.set $0 loop $for-loop|070 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|070 end end @@ -5434,10 +5431,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $9 i32.const 3312 i32.store offset=12 - local.get $8 + local.get $9 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5454,9 +5451,9 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $7 i32.store - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5464,12 +5461,12 @@ i32.shr_u local.set $10 loop $for-loop|045 - local.get $3 + local.get $5 local.get $10 i32.lt_s if - local.get $7 - local.get $3 + local.get $8 + local.get $5 i32.const 2 i32.shl i32.add @@ -5478,19 +5475,19 @@ i32.const 3 global.set $~argumentsLength local.get $11 - local.get $3 - local.get $7 + local.get $5 + local.get $8 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $9 + local.get $7 i32.load offset=12 local.tee $12 i32.const 1 i32.add local.tee $2 - local.get $9 + local.get $7 i32.load offset=8 local.tee $0 i32.const 2 @@ -5533,7 +5530,7 @@ i32.gt_u select local.tee $6 - local.get $9 + local.get $7 i32.load local.tee $1 i32.const 20 @@ -5573,25 +5570,25 @@ local.get $1 i32.ne if - local.get $9 + local.get $7 local.get $0 i32.store - local.get $9 + local.get $7 local.get $0 i32.store offset=4 local.get $0 if - local.get $9 + local.get $7 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $9 + local.get $7 local.get $6 i32.store offset=8 end - local.get $9 + local.get $7 i32.load offset=4 local.get $12 i32.const 2 @@ -5599,14 +5596,14 @@ i32.add local.get $11 i32.store - local.get $9 + local.get $7 local.get $2 i32.store offset=12 end - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|045 end end @@ -5614,10 +5611,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 local.get $9 + local.get $7 i32.store offset=24 - local.get $9 + local.get $7 i32.load offset=12 i32.const 2 i32.ne @@ -5629,7 +5626,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $7 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -5642,7 +5639,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $7 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -5659,38 +5656,38 @@ i32.const 3344 i32.store offset=12 i32.const 0 - local.set $1 + local.set $2 i32.const 0 local.set $0 - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $2 + local.set $1 loop $for-loop|076 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $7 + local.get $8 local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $5 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $3 + local.get $2 + local.get $5 local.get $0 - local.get $7 + local.get $8 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 + local.set $2 local.get $0 i32.const 1 i32.add @@ -5698,7 +5695,7 @@ br $for-loop|076 end end - local.get $1 + local.get $2 i32.const 6 i32.ne if @@ -5714,7 +5711,7 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5722,33 +5719,33 @@ i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|080 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|080 end end @@ -5768,8 +5765,8 @@ i32.const 3408 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5778,31 +5775,31 @@ local.set $0 loop $for-loop|084 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|084 end end @@ -5822,8 +5819,8 @@ i32.const 3440 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5832,31 +5829,31 @@ local.set $0 loop $for-loop|089 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some86 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|089 end end @@ -5875,8 +5872,8 @@ i32.const 3472 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5885,32 +5882,32 @@ local.set $0 loop $for-loop|093 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|093 end end @@ -5930,8 +5927,8 @@ i32.const 3504 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5940,32 +5937,32 @@ local.set $0 loop $for-loop|098 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every95 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|098 end end @@ -5983,8 +5980,8 @@ i32.const 3536 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -5994,36 +5991,36 @@ block $__inlined_func$~lib/staticarray/StaticArray#findIndex loop $for-loop|0102 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0102 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 1 i32.ne if @@ -6038,8 +6035,8 @@ i32.const 3568 i32.store offset=12 i32.const 0 - local.set $1 - local.get $7 + local.set $2 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -6049,36 +6046,36 @@ block $__inlined_func$~lib/staticarray/StaticArray#findIndex104 loop $for-loop|0107 local.get $0 - local.get $1 + local.get $2 i32.gt_s if - local.get $7 - local.get $1 + local.get $8 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 local.get $1 - local.get $7 + local.get $2 + local.get $8 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex104 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0107 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -6092,7 +6089,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=12 - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -6107,7 +6104,7 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $8 local.get $0 i32.const 2 i32.shl @@ -6118,7 +6115,7 @@ global.set $~argumentsLength local.get $1 local.get $0 - local.get $7 + local.get $8 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -6147,7 +6144,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=12 - local.get $7 + local.get $8 i32.const 20 i32.sub i32.load offset=16 @@ -6162,7 +6159,7 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $8 local.get $0 i32.const 2 i32.shl @@ -6173,7 +6170,7 @@ global.set $~argumentsLength local.get $1 local.get $0 - local.get $7 + local.get $8 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -6226,11 +6223,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of114 - block $0of115 - block $outOfRange16 + block $1of18 + block $0of19 + block $outOfRange10 global.get $~argumentsLength - br_table $0of115 $1of114 $outOfRange16 + br_table $0of19 $1of18 $outOfRange10 end unreachable end diff --git a/tests/compiler/std/string-casemapping.release.wat b/tests/compiler/std/string-casemapping.release.wat index 3d4dced0d5..b53b40a178 100644 --- a/tests/compiler/std/string-casemapping.release.wat +++ b/tests/compiler/std/string-casemapping.release.wat @@ -6304,19 +6304,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/std/string-encoding.release.wat b/tests/compiler/std/string-encoding.release.wat index a363f24256..190636b9bd 100644 --- a/tests/compiler/std/string-encoding.release.wat +++ b/tests/compiler/std/string-encoding.release.wat @@ -1617,13 +1617,13 @@ local.get $2 ) (func $~lib/string/String.UTF8.encode@varargs (param $0 i32) (param $1 i32) (result i32) - block $1of2 + block $2of2 block $0of2 block $outOfRange global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of2 $1of2 $1of2 $outOfRange + br_table $0of2 $2of2 $2of2 $outOfRange end unreachable end @@ -3528,60 +3528,57 @@ call $~lib/string/String.UTF8.byteLength i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store + local.get $5 + local.set $4 + local.get $0 local.get $0 - local.tee $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.set $5 - local.get $4 - local.set $0 - local.get $3 - local.get $5 i32.const 1 i32.shl i32.add local.set $6 block $__inlined_func$~lib/string/String.UTF8.encodeUnsafe loop $while-continue|0 - local.get $3 + local.get $0 local.get $6 i32.lt_u if - local.get $3 + local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 local.get $1 - local.get $5 + local.get $3 i32.eqz i32.and br_if $__inlined_func$~lib/string/String.UTF8.encodeUnsafe else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -3590,27 +3587,27 @@ i32.shl i32.or i32.store16 - local.get $0 + local.get $4 i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $0 i32.const 2 i32.add local.get $6 i32.lt_u i32.and if - local.get $3 + local.get $0 i32.load16_u offset=2 local.tee $7 i32.const 64512 @@ -3618,8 +3615,8 @@ i32.const 56320 i32.eq if - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 1023 i32.and i32.const 10 @@ -3630,14 +3627,14 @@ i32.const 1023 i32.and i32.or - local.tee $5 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -3647,7 +3644,7 @@ i32.const 16 i32.shl i32.or - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -3657,21 +3654,21 @@ i32.const 8 i32.shl i32.or - local.get $5 + local.get $3 i32.const 18 i32.shr_u i32.const 240 i32.or i32.or i32.store - local.get $0 + local.get $4 i32.const 4 i32.add - local.set $0 - local.get $3 + local.set $4 + local.get $0 i32.const 4 i32.add - local.set $3 + local.set $0 br $while-continue|0 end end @@ -3689,16 +3686,16 @@ unreachable end i32.const 65533 - local.set $5 + local.set $3 end end - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -3709,29 +3706,29 @@ i32.shl i32.or i32.store16 - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 63 i32.and i32.const 128 i32.or i32.store8 offset=2 - local.get $0 + local.get $4 i32.const 3 i32.add end - local.set $0 + local.set $4 end - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $3 + local.set $0 br $while-continue|0 end end local.get $1 if - local.get $0 + local.get $4 i32.const 0 i32.store8 end @@ -3740,7 +3737,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4107,19 +4104,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/std/string.release.wat b/tests/compiler/std/string.release.wat index 2f6399375b..9b4cb24995 100644 --- a/tests/compiler/std/string.release.wat +++ b/tests/compiler/std/string.release.wat @@ -3234,7 +3234,7 @@ end end i32.const 1 - local.set $4 + local.set $3 local.get $1 i32.const 43 i32.eq @@ -3258,7 +3258,7 @@ i32.const 45 i32.eq select - local.set $4 + local.set $3 local.get $2 i32.const 2 i32.add @@ -3304,7 +3304,7 @@ i32.sub local.set $0 i32.const 2 - local.set $3 + local.set $4 br $break|1 end local.get $2 @@ -3316,7 +3316,7 @@ i32.sub local.set $0 i32.const 8 - local.set $3 + local.set $4 br $break|1 end local.get $2 @@ -3328,18 +3328,18 @@ i32.sub local.set $0 i32.const 16 - local.set $3 + local.set $4 end end - local.get $3 + local.get $4 i32.const 10 - local.get $3 + local.get $4 select - local.set $6 + local.set $4 local.get $0 i32.const 1 i32.sub - local.set $3 + local.set $6 loop $while-continue|2 block $while-break|2 local.get $0 @@ -3349,7 +3349,7 @@ local.set $0 local.get $1 if - local.get $6 + local.get $4 local.get $2 i32.load16_u local.tee $1 @@ -3388,7 +3388,7 @@ i32.le_u if local.get $0 - local.get $3 + local.get $6 i32.eq if i32.const 0 @@ -3396,8 +3396,8 @@ end br $while-break|2 end + local.get $4 local.get $5 - local.get $6 i32.mul local.get $1 i32.add @@ -3410,7 +3410,7 @@ end end end - local.get $4 + local.get $3 local.get $5 i32.mul ) @@ -4883,10 +4883,10 @@ (local $6 i32) local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.add - local.tee $2 + local.tee $3 local.get $0 i32.load offset=8 local.tee $5 @@ -4894,7 +4894,7 @@ i32.shr_u i32.gt_u if - local.get $2 + local.get $3 i32.const 268435455 i32.gt_u if @@ -4918,9 +4918,9 @@ i32.lt_u select local.tee $5 - local.get $2 + local.get $3 i32.const 8 - local.get $2 + local.get $3 i32.const 8 i32.gt_u select @@ -4957,7 +4957,7 @@ end local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add @@ -4971,7 +4971,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $3 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -5249,17 +5249,16 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) (local $9 i32) (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $11 + local.set $8 i64.const 1 i32.const 0 local.get $2 @@ -5268,66 +5267,66 @@ i64.extend_i32_s local.tee $0 i64.shl - local.tee $12 + local.tee $10 i64.const 1 i64.sub - local.tee $10 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -5343,151 +5342,150 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $2 + local.get $5 i32.const 1000000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 - local.set $5 + local.get $5 + local.set $6 i32.const 0 - local.set $2 + local.set $5 br $break|1 end i32.const 0 - local.set $5 + local.set $6 end local.get $4 - local.get $5 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 23136 i32.add - local.get $5 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $2 + local.set $2 + local.get $3 + local.get $5 i64.extend_i32_u local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 - local.get $3 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 24064 @@ -5502,12 +5500,12 @@ i32.shl i32.const 23134 i32.add - local.tee $2 + local.tee $5 i32.load16_u - local.set $5 + local.set $2 loop $while-continue|3 local.get $0 - local.get $11 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -5516,28 +5514,28 @@ i64.ge_u i32.and if (result i32) - local.get $11 - local.get $0 - i64.sub + local.get $8 local.get $0 local.get $1 i64.add - local.tee $6 - local.get $11 + local.tee $7 + i64.gt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $11 - i64.lt_u i32.or else i32.const 0 end if - local.get $5 + local.get $2 i32.const 1 i32.sub - local.set $5 + local.set $2 local.get $0 local.get $1 i64.add @@ -5545,8 +5543,8 @@ br $while-continue|3 end end - local.get $2 local.get $5 + local.get $2 i32.store16 local.get $4 return @@ -5554,12 +5552,12 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $3 i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 @@ -5574,11 +5572,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 23136 @@ -5591,87 +5589,87 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $3 + local.set $2 local.get $0 - local.get $10 + local.get $11 i64.and - local.tee $6 - i64.le_u + local.tee $7 + local.get $3 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $8 - i32.add - global.set $~lib/util/number/_K - local.get $6 - local.set $0 - local.get $11 - i32.const 0 - local.get $8 - i32.sub - i32.const 2 - i32.shl - i32.const 24064 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 23134 - i32.add - local.tee $2 - i32.load16_u - local.set $5 - loop $while-continue|6 - local.get $0 + end + global.get $~lib/util/number/_K + local.get $2 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $0 + local.get $8 + i32.const 0 + local.get $2 + i32.sub + i32.const 2 + i32.shl + i32.const 24064 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 23134 + i32.add + local.tee $5 + i32.load16_u + local.set $2 + loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u + local.get $3 + local.get $0 + i64.sub + local.get $10 + i64.ge_u + i32.and + if (result i32) local.get $1 - i64.lt_u - local.get $3 local.get $0 i64.sub - local.get $12 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub - local.get $0 - local.get $12 - i64.add - local.tee $6 - local.get $1 - i64.sub - i64.gt_u - local.get $1 - local.get $6 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $5 - i32.const 1 - i32.sub - local.set $5 - local.get $0 - local.get $12 - i64.add - local.set $0 - br $while-continue|6 - end + local.get $0 + local.get $10 + i64.add + local.tee $7 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $2 + i32.const 1 + i32.sub + local.set $2 + local.get $0 + local.get $10 + i64.add + local.set $0 + br $while-continue|6 end - local.get $2 - local.get $5 - i32.store16 - local.get $4 end + local.get $5 + local.get $2 + i32.store16 + local.get $4 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -6007,10 +6005,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i32) + (local $6 i64) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) @@ -6036,19 +6034,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $6 + local.tee $7 i32.const 1 - local.get $6 + local.get $7 select i32.const 1075 i32.sub - local.tee $7 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $6 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -6063,11 +6061,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $6 + local.tee $7 i32.sub - local.set $8 + local.set $9 local.get $3 - local.get $6 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -6077,25 +6075,25 @@ i64.eq i32.const 1 i32.add - local.tee $6 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub + local.get $8 local.get $7 - local.get $6 i32.sub - local.get $8 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $8 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $6 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -6104,8 +6102,8 @@ f64.add local.tee $0 i32.trunc_sat_f64_s - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.convert_i32_s local.get $0 f64.ne @@ -6114,18 +6112,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 3 i32.shl - local.tee $8 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $8 + local.get $9 i32.const 23192 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $7 + local.get $8 i32.const 1 i32.shl i32.const 23888 @@ -6140,78 +6138,78 @@ i64.const 4294967295 i64.and local.set $4 + global.get $~lib/util/number/_frc_pow + local.tee $10 + i64.const 4294967295 + i64.and + local.tee $11 local.get $1 i64.const 32 i64.shr_u local.tee $1 - global.get $~lib/util/number/_frc_pow - local.tee $9 - i64.const 4294967295 - i64.and - local.tee $10 i64.mul local.get $4 - local.get $10 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $11 + local.set $5 global.get $~lib/util/number/_frc_plus local.tee $3 i64.const 4294967295 i64.and local.set $12 - local.get $10 local.get $3 i64.const 32 i64.shr_u local.tee $3 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $6 global.get $~lib/util/number/_frc_minus local.tee $13 i64.const 4294967295 i64.and local.set $14 - local.get $10 local.get $13 i64.const 32 i64.shr_u local.tee $13 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 23136 i32.add - local.get $9 + local.get $1 + local.get $10 i64.const 32 i64.shr_u - local.tee $9 - local.get $1 + local.tee $1 i64.mul - local.get $11 + local.get $5 i64.const 32 i64.shr_u i64.add + local.get $1 local.get $4 - local.get $9 i64.mul - local.get $11 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -6220,17 +6218,17 @@ i64.const 32 i64.shr_u i64.add + local.get $1 local.get $3 - local.get $9 i64.mul - local.get $5 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $12 i64.mul - local.get $5 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -6241,24 +6239,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 - local.get $6 + local.tee $3 + local.get $7 global.get $~lib/util/number/_exp_pow i32.add i32.const -64 i32.sub + local.get $3 local.get $1 - local.get $9 local.get $13 i64.mul - local.get $10 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $14 i64.mul - local.get $10 + local.get $11 i64.const 4294967295 i64.and i64.add diff --git a/tests/compiler/std/symbol.release.wat b/tests/compiler/std/symbol.release.wat index 9029cd0c70..3c560bcc75 100644 --- a/tests/compiler/std/symbol.release.wat +++ b/tests/compiler/std/symbol.release.wat @@ -2468,11 +2468,11 @@ global.set $~lib/symbol/idToString end global.get $~lib/symbol/nextId - local.tee $2 + local.tee $3 i32.const 1 i32.add global.set $~lib/symbol/nextId - local.get $2 + local.get $3 i32.eqz if unreachable @@ -2501,7 +2501,7 @@ local.tee $0 if local.get $0 - local.get $2 + local.get $3 i32.store offset=4 else local.get $4 @@ -2570,7 +2570,7 @@ i32.store offset=4 local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 local.get $4 i32.load offset=16 i32.const 12 @@ -2580,18 +2580,18 @@ local.get $1 local.set $0 loop $while-continue|0 - local.get $3 + local.get $2 local.get $9 i32.ne if - local.get $3 + local.get $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.load local.tee $10 i32.store offset=8 @@ -2599,7 +2599,7 @@ local.get $10 i32.store local.get $0 - local.get $3 + local.get $2 i32.load offset=4 i32.store offset=4 local.get $0 @@ -2622,10 +2622,10 @@ i32.add local.set $0 end - local.get $3 + local.get $2 i32.const 12 i32.add - local.set $3 + local.set $2 br $while-continue|0 end end @@ -2689,7 +2689,7 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 - local.get $2 + local.get $3 i32.store offset=4 local.get $4 local.get $4 @@ -2735,7 +2735,7 @@ i32.store local.get $4 i32.load - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -2745,23 +2745,23 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor local.tee $5 local.get $4 @@ -2786,7 +2786,7 @@ else local.get $0 i32.load - local.get $2 + local.get $3 i32.eq end br_if $__inlined_func$~lib/map/Map#find @@ -2873,7 +2873,7 @@ i32.store offset=4 local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 local.get $4 i32.load offset=16 i32.const 12 @@ -2883,23 +2883,23 @@ local.get $1 local.set $0 loop $while-continue|00 - local.get $3 + local.get $2 local.get $9 i32.ne if - local.get $3 + local.get $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $3 + local.get $2 i32.load local.tee $10 i32.store local.get $0 - local.get $3 + local.get $2 i32.load offset=4 i32.store offset=4 local.get $0 @@ -2948,10 +2948,10 @@ i32.add local.set $0 end - local.get $3 + local.get $2 i32.const 12 i32.add - local.set $3 + local.set $2 br $while-continue|00 end end @@ -3008,7 +3008,7 @@ i32.mul i32.add local.tee $0 - local.get $2 + local.get $3 i32.store local.get $0 i32.const 1056 @@ -3048,7 +3048,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 19104 diff --git a/tests/compiler/std/typedarray.release.wat b/tests/compiler/std/typedarray.release.wat index a9d5d70eb0..1301e0fc3e 100644 --- a/tests/compiler/std/typedarray.release.wat +++ b/tests/compiler/std/typedarray.release.wat @@ -22492,6 +22492,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -22505,8 +22506,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -22841,6 +22841,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -22854,8 +22855,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -23114,6 +23114,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -23129,8 +23130,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -23352,6 +23352,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -23367,8 +23368,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -23605,6 +23605,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -23620,8 +23621,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -23834,6 +23834,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -23849,8 +23850,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -24873,6 +24873,7 @@ br $for-loop|0 end end + local.get $5 local.get $1 local.get $0 i32.const 1 @@ -24888,8 +24889,7 @@ local.get $0 i32.add local.tee $0 - local.get $5 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -24923,26 +24923,25 @@ (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 i64) (local $11 i64) (local $12 i64) - (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $12 + local.set $11 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $1 i64.shl - local.tee $13 + local.tee $12 i64.const 1 i64.sub - local.tee $11 + local.tee $10 local.get $2 i64.and local.set $7 @@ -24996,9 +24995,9 @@ i32.add end end - local.set $9 + local.set $8 loop $while-continue|0 - local.get $9 + local.get $8 i32.const 0 i32.gt_s if @@ -25014,7 +25013,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $9 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -25122,13 +25121,8 @@ local.get $6 i32.or if - local.get $5 - local.tee $8 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $8 + local.get $5 i32.const 1 i32.shl i32.add @@ -25138,33 +25132,37 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 + local.get $4 local.get $3 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.get $7 i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $9 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 2 i32.shl i32.const 10736 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $2 @@ -25177,10 +25175,10 @@ i32.add local.tee $0 i32.load16_u - local.set $9 + local.set $8 loop $while-continue|3 local.get $1 - local.get $12 + local.get $11 i64.lt_u local.get $4 local.get $1 @@ -25189,28 +25187,28 @@ i64.ge_u i32.and if (result i32) - local.get $12 - local.get $1 - i64.sub + local.get $11 local.get $1 local.get $2 i64.add local.tee $7 - local.get $12 - i64.sub i64.gt_u + local.get $11 + local.get $1 + i64.sub local.get $7 - local.get $12 - i64.lt_u + local.get $11 + i64.sub + i64.gt_u i32.or else i32.const 0 end if - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 local.get $1 local.get $2 i64.add @@ -25219,7 +25217,7 @@ end end local.get $0 - local.get $9 + local.get $8 i32.store16 local.get $5 return @@ -25227,7 +25225,7 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $4 i64.const 10 i64.mul @@ -25236,7 +25234,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $2 @@ -25246,13 +25244,8 @@ i64.const 0 i64.ne if - local.get $5 - local.tee $3 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $3 + local.get $5 i32.const 1 i32.shl i32.add @@ -25263,90 +25256,94 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - local.get $4 + local.set $8 local.get $1 - local.get $11 + local.get $10 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $9 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 + end + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + local.get $11 + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 10736 + i32.add + i64.load32_u + i64.mul + local.set $2 + local.get $0 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.tee $0 + i32.load16_u + local.set $8 + loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u + local.get $4 + local.get $1 + i64.sub local.get $12 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 10736 - i32.add - i64.load32_u - i64.mul - local.set $2 - local.get $0 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.tee $0 - i32.load16_u - local.set $9 - loop $while-continue|6 + i64.ge_u + i32.and + if (result i32) + local.get $2 local.get $1 + local.get $12 + i64.add + local.tee $7 + i64.gt_u local.get $2 - i64.lt_u - local.get $4 local.get $1 i64.sub - local.get $13 - i64.ge_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub - local.get $1 - local.get $13 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u - local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $9 - i32.const 1 - i32.sub - local.set $9 - local.get $1 - local.get $13 - i64.add - local.set $1 - br $while-continue|6 - end + local.get $7 + local.get $2 + i64.sub + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $8 + i32.const 1 + i32.sub + local.set $8 + local.get $1 + local.get $12 + i64.add + local.set $1 + br $while-continue|6 end - local.get $0 - local.get $9 - i32.store16 - local.get $5 end + local.get $0 + local.get $8 + i32.store16 + local.get $5 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -26155,6 +26152,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -26171,8 +26169,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -26320,6 +26317,7 @@ br $for-loop|0 end end + local.get $6 local.get $1 local.get $0 i32.const 1 @@ -26335,8 +26333,7 @@ local.get $0 i32.add local.tee $0 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 local.get $0 @@ -42805,20 +42802,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 f32) - (local $6 f64) + (local $3 i64) + (local $4 f32) + (local $5 f64) + (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i64) - (local $13 f32) - (local $14 f64) + (local $11 i64) + (local $12 f32) + (local $13 f64) + (local $14 i32) (local $15 i32) - (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 i32.sub @@ -42843,2054 +42839,2057 @@ block $folding-inner24 block $folding-inner23 block $folding-inner21 - block $folding-inner18 - block $folding-inner17 - block $folding-inner16 - block $folding-inner22 - block $folding-inner20 - block $folding-inner19 - block $folding-inner15 - block $folding-inner14 - block $folding-inner13 - block $folding-inner12 - block $folding-inner6 - block $folding-inner5 - block $folding-inner4 - block $folding-inner3 - block $folding-inner2 - block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - br_if $folding-inner21 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.const 32 - memory.fill - memory.size - i32.const 16 - i32.shl - i32.const 33012 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1284 - i32.const 1280 - i32.store - i32.const 1288 - i32.const 1280 - i32.store - i32.const 1280 - global.set $~lib/rt/itcms/pinSpace - i32.const 1316 - i32.const 1312 - i32.store - i32.const 1320 - i32.const 1312 - i32.store - i32.const 1312 - global.set $~lib/rt/itcms/toSpace - i32.const 1460 - i32.const 1456 - i32.store - i32.const 1464 - i32.const 1456 - i32.store - i32.const 1456 - global.set $~lib/rt/itcms/fromSpace - i32.const 0 - call $std/typedarray/testInstantiate - i32.const 5 - call $std/typedarray/testInstantiate - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 95 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - if - i32.const 0 - i32.const 1568 - i32.const 96 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 12 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 97 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 98 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 99 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 100 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#subarray - local.tee $7 - i32.store - local.get $7 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 103 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 104 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 105 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 106 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - call $~lib/typedarray/Float64Array#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 2 - f64.const 7 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 3 - f64.const 6 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 4 - f64.const 5 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 5 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 6 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $7 - i32.const 7 - f64.const 8 - call $~lib/typedarray/Float64Array#__set - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Float64Array#subarray - local.tee $7 - i32.store - local.get $7 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 122 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.const 16 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 123 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 32 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 124 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $~argumentsLength - local.get $7 - call $~lib/typedarray/Float64Array#sort@varargs - drop - local.get $7 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 4 - f64.eq - if (result i32) - local.get $7 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 5 - f64.eq - else - i32.const 0 - end - if (result i32) - local.get $7 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 6 - f64.eq - else - i32.const 0 - end - if (result i32) - local.get $7 - i32.const 3 - call $~lib/typedarray/Float64Array#__get - f64.const 7 - f64.eq - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 126 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - i32.const -32 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 - i32.const 2 - i32.const 256 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - if - i32.const 0 - i32.const 1568 - i32.const 135 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 136 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 255 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 137 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5 - call $~lib/typedarray/Int8Array#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.load offset=4 - local.set $8 - i32.const 1 - local.get $7 - i32.load offset=8 - local.tee $9 - local.get $9 - i32.const 1 - i32.gt_s - select - local.tee $10 - i32.const 3 - local.get $9 - local.get $9 - i32.const 3 - i32.gt_s - select - local.tee $9 - i32.lt_s - if - local.get $8 - local.get $10 - i32.add - i32.const 1 - local.get $9 - local.get $10 - i32.sub - memory.fill - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1728 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 149 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.set $8 - i32.const 0 - local.get $7 - i32.load offset=8 - local.tee $9 - local.get $9 - i32.const 0 - i32.gt_s - select - local.tee $10 - local.get $9 - i32.lt_s - if - local.get $8 - local.get $10 - i32.add - i32.const 0 - local.get $9 - local.get $10 - i32.sub - memory.fill - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1808 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 152 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.set $8 - i32.const 0 - local.get $7 - i32.load offset=8 - local.tee $9 - local.get $9 - i32.const 0 - i32.gt_s - select - local.tee $10 - local.get $9 - i32.const 3 - i32.sub - local.tee $9 - i32.const 0 - local.get $9 - i32.const 0 - i32.gt_s - select - local.tee $9 - i32.lt_s - if - local.get $8 - local.get $10 - i32.add - i32.const 1 - local.get $9 - local.get $10 - i32.sub - memory.fill - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1840 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 155 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.set $8 - local.get $7 - i32.load offset=8 - local.tee $9 - i32.const 2 - i32.sub - local.tee $10 - i32.const 0 - local.get $10 - i32.const 0 - i32.gt_s - select - local.tee $10 - local.get $9 - i32.lt_s - if - local.get $8 - local.get $10 - i32.add - i32.const 2 - local.get $9 - local.get $10 - i32.sub - memory.fill - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1872 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 158 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.set $8 - i32.const 1 - local.get $7 - i32.load offset=8 - local.tee $9 - local.get $9 - i32.const 1 - i32.gt_s - select - local.tee $10 - i32.const 0 - local.get $9 - local.get $9 - i32.const 0 - i32.gt_s - select - local.tee $9 - i32.lt_s - if - local.get $8 - local.get $10 - i32.add - i32.const 0 - local.get $9 - local.get $10 - i32.sub - memory.fill - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1904 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 161 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#subarray - local.tee $8 - i32.store offset=8 - local.get $8 - i32.load offset=4 - local.set $9 - i32.const 0 - local.get $8 - i32.load offset=8 - local.tee $10 - local.get $10 - i32.const 0 - i32.gt_s - select - local.tee $11 - local.get $10 - i32.lt_s - if - local.get $9 - local.get $11 - i32.add - i32.const 0 - local.get $10 - local.get $11 - i32.sub - memory.fill - end - local.get $8 - i32.load offset=8 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 165 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=4 - local.get $8 - i32.load - i32.sub - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 166 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 167 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 0 - i32.const 15 - i32.const 1936 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $8 - local.get $9 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 168 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 0 - i32.const 15 - i32.const 1968 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 169 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - i32.store offset=8 - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 1 - i32.const 1 - i32.const 3 - call $~lib/typedarray/Int32Array#fill - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2000 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 181 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#fill - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2048 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 184 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.const 0 - i32.const -3 - call $~lib/typedarray/Int32Array#fill - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2096 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 187 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - i32.const -2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#fill - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2144 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 190 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - i32.const 1 - i32.const 0 - call $~lib/typedarray/Int32Array#fill - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2192 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 193 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#subarray - local.tee $8 - i32.store offset=12 - local.get $8 - i32.const 0 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#fill - local.get $8 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 197 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=4 - local.get $8 - i32.load - i32.sub - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 198 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 12 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 199 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 16 - i32.const 2240 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $8 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 200 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2272 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 201 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 6 - call $~lib/typedarray/Int8Array#constructor - local.tee $7 - i32.store offset=12 - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 5 - i32.const 6 - call $~lib/typedarray/Int8Array#__set - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 6 - call $~lib/typedarray/Int8Array#subarray - local.tee $7 - i32.store offset=8 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 222 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 5 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 223 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 224 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 5 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 225 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 5 - call $~lib/typedarray/Int8Array#subarray - local.tee $7 - i32.store - local.get $7 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 228 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 229 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 230 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 231 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#subarray - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 234 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 235 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 236 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.load offset=8 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 237 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $8 - i32.store - local.get $7 - i32.const 0 - i32.const 3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2320 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 248 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 1 - i32.const 3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2368 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 250 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 1 - i32.const 2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2416 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 252 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 2 - i32.const 2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2464 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 254 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 0 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2512 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 256 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2560 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 258 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 1 - i32.const 2 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2608 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 260 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 0 - i32.const -2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2656 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 262 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const 0 - i32.const -2 - i32.const -1 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2704 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 264 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const -4 - i32.const -3 - i32.const -2 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2752 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 266 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const -4 - i32.const -3 - i32.const -1 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2800 - call $~lib/rt/__newArray - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $7 - local.get $9 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 268 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $7 - i32.store offset=16 - local.get $7 - i32.const -4 - i32.const -3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=20 - i32.const 5 - i32.const 2 - i32.const 16 - i32.const 2848 - call $~lib/rt/__newArray - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $7 - local.get $8 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 270 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#subarray - local.tee $8 - i32.store offset=16 - local.get $8 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 282 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=4 - local.get $8 - i32.load - i32.sub - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 283 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 12 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 284 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 1 - i32.const 3 - call $~lib/typedarray/Int32Array#slice - local.tee $9 - i32.store offset=8 - local.get $9 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 287 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 288 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 289 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.load offset=4 - local.get $9 - i32.load - i32.sub - if - i32.const 0 - i32.const 1568 - i32.const 290 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.load offset=8 - i32.const 8 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 291 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#slice - local.tee $8 - i32.store offset=12 - local.get $8 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 294 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 295 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=4 - local.get $8 - i32.load - i32.sub - if - i32.const 0 - i32.const 1568 - i32.const 296 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 297 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.const 0 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#slice - local.tee $8 - i32.store offset=24 - local.get $7 - local.get $8 - i32.eq - if - i32.const 0 - i32.const 1568 - i32.const 300 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.get $7 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 301 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=4 - local.get $8 - i32.load - i32.sub - local.get $7 - i32.load offset=4 - local.get $7 - i32.load - i32.sub - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 302 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.load offset=8 - local.get $7 - i32.load offset=8 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 303 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - br_if $folding-inner21 - global.get $~lib/memory/__stack_pointer - local.tee $7 - i64.const 0 - i64.store - local.get $7 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $7 - i32.store - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 2896 - i32.store offset=4 - local.get $7 - i32.load offset=4 - local.set $8 - local.get $7 - i32.load offset=8 - local.set $9 - loop $for-loop|0 - local.get $2 - local.get $9 - i32.lt_s - if - local.get $2 - local.get $8 - i32.add - i32.load8_s - local.set $10 - i32.const 4 - global.set $~argumentsLength - local.get $1 - local.get $10 - local.get $2 - local.get $7 - i32.const 2896 - i32.load - call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|0 - end - end + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner21 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.const 32 + memory.fill + memory.size + i32.const 16 + i32.shl + i32.const 33012 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1284 + i32.const 1280 + i32.store + i32.const 1288 + i32.const 1280 + i32.store + i32.const 1280 + global.set $~lib/rt/itcms/pinSpace + i32.const 1316 + i32.const 1312 + i32.store + i32.const 1320 + i32.const 1312 + i32.store + i32.const 1312 + global.set $~lib/rt/itcms/toSpace + i32.const 1460 + i32.const 1456 + i32.store + i32.const 1464 + i32.const 1456 + i32.store + i32.const 1456 + global.set $~lib/rt/itcms/fromSpace + i32.const 0 + call $std/typedarray/testInstantiate + i32.const 5 + call $std/typedarray/testInstantiate + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 95 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + if + i32.const 0 + i32.const 1568 + i32.const 96 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 12 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 97 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 98 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 99 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 100 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#subarray + local.tee $6 + i32.store + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 103 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 104 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 105 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 106 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + call $~lib/typedarray/Float64Array#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 2 + f64.const 7 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 3 + f64.const 6 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 4 + f64.const 5 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 5 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 6 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 7 + f64.const 8 + call $~lib/typedarray/Float64Array#__set + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Float64Array#subarray + local.tee $6 + i32.store + local.get $6 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 122 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 16 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 123 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 32 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 124 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $~argumentsLength + local.get $6 + call $~lib/typedarray/Float64Array#sort@varargs + drop + local.get $6 + i32.const 0 + call $~lib/typedarray/Float64Array#__get + f64.const 4 + f64.eq + if (result i32) + local.get $6 + i32.const 1 + call $~lib/typedarray/Float64Array#__get + f64.const 5 + f64.eq + else + i32.const 0 + end + if (result i32) + local.get $6 + i32.const 2 + call $~lib/typedarray/Float64Array#__get + f64.const 6 + f64.eq + else + i32.const 0 + end + if (result i32) + local.get $6 + i32.const 3 + call $~lib/typedarray/Float64Array#__get + f64.const 7 + f64.eq + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 126 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + i32.const -32 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $6 + i32.const 2 + i32.const 256 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $6 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + if + i32.const 0 + i32.const 1568 + i32.const 135 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 136 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 255 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 137 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5 + call $~lib/typedarray/Int8Array#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.load offset=4 + local.set $7 + i32.const 1 + local.get $6 + i32.load offset=8 + local.tee $8 + local.get $8 + i32.const 1 + i32.gt_s + select + local.tee $9 + i32.const 3 + local.get $8 + local.get $8 + i32.const 3 + i32.gt_s + select + local.tee $8 + i32.lt_s + if + local.get $7 + local.get $9 + i32.add + i32.const 1 + local.get $8 + local.get $9 + i32.sub + memory.fill + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1728 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 149 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.set $7 + i32.const 0 + local.get $6 + i32.load offset=8 + local.tee $8 + local.get $8 + i32.const 0 + i32.gt_s + select + local.set $9 + local.get $8 + local.get $9 + i32.gt_s + if + local.get $7 + local.get $9 + i32.add + i32.const 0 + local.get $8 + local.get $9 + i32.sub + memory.fill + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1808 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 152 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.set $7 + i32.const 0 + local.get $6 + i32.load offset=8 + local.tee $8 + local.get $8 + i32.const 0 + i32.gt_s + select + local.tee $9 + local.get $8 + i32.const 3 + i32.sub + local.tee $8 + i32.const 0 + local.get $8 + i32.const 0 + i32.gt_s + select + local.tee $8 + i32.lt_s + if + local.get $7 + local.get $9 + i32.add + i32.const 1 + local.get $8 + local.get $9 + i32.sub + memory.fill + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1840 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 155 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.set $7 + local.get $6 + i32.load offset=8 + local.tee $8 + i32.const 2 + i32.sub + local.tee $9 + i32.const 0 + local.get $9 + i32.const 0 + i32.gt_s + select + local.set $9 + local.get $8 + local.get $9 + i32.gt_s + if + local.get $7 + local.get $9 + i32.add + i32.const 2 + local.get $8 + local.get $9 + i32.sub + memory.fill + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1872 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 158 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.set $7 + i32.const 1 + local.get $6 + i32.load offset=8 + local.tee $8 + local.get $8 + i32.const 1 + i32.gt_s + select + local.tee $9 + i32.const 0 + local.get $8 + local.get $8 + i32.const 0 + i32.gt_s + select + local.tee $8 + i32.lt_s + if + local.get $7 + local.get $9 + i32.add + i32.const 0 + local.get $8 + local.get $9 + i32.sub + memory.fill + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1904 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 161 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#subarray + local.tee $7 + i32.store offset=8 + local.get $7 + i32.load offset=4 + local.set $8 + i32.const 0 + local.get $7 + i32.load offset=8 + local.tee $9 + local.get $9 + i32.const 0 + i32.gt_s + select + local.set $10 + local.get $9 + local.get $10 + i32.gt_s + if + local.get $8 + local.get $10 + i32.add + i32.const 0 + local.get $9 + local.get $10 + i32.sub + memory.fill + end + local.get $7 + i32.load offset=8 + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 165 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=4 + local.get $7 + i32.load + i32.sub + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 166 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 167 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 0 + i32.const 15 + i32.const 1936 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $7 + local.get $8 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 168 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 0 + i32.const 15 + i32.const 1968 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 169 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.tee $6 + i32.store offset=8 + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.const 1 + i32.const 3 + call $~lib/typedarray/Int32Array#fill + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2000 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 181 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 0 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#fill + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2048 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 184 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.const 0 + i32.const -3 + call $~lib/typedarray/Int32Array#fill + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2096 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 187 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 2 + i32.const -2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#fill + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2144 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 190 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 0 + i32.const 1 + i32.const 0 + call $~lib/typedarray/Int32Array#fill + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2192 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 193 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#subarray + local.tee $7 + i32.store offset=12 + local.get $7 + i32.const 0 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#fill + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 197 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=4 + local.get $7 + i32.load + i32.sub + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 198 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 12 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 199 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 16 + i32.const 2240 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $7 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 200 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2272 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 201 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 6 + call $~lib/typedarray/Int8Array#constructor + local.tee $6 + i32.store offset=12 + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 5 + i32.const 6 + call $~lib/typedarray/Int8Array#__set + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 6 + call $~lib/typedarray/Int8Array#subarray + local.tee $6 + i32.store offset=8 + local.get $6 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 222 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 5 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 223 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 224 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 5 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 225 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 5 + call $~lib/typedarray/Int8Array#subarray + local.tee $6 + i32.store + local.get $6 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 228 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 229 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 230 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 231 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#subarray + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 234 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 235 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 236 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 237 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $7 + i32.store + local.get $6 + i32.const 0 + i32.const 3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2320 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 248 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 1 + i32.const 3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2368 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 250 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 1 + i32.const 2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2416 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 252 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 2 + i32.const 2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2464 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 254 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 0 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2512 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 256 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2560 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 258 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 1 + i32.const 2 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2608 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 260 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 0 + i32.const -2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2656 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 262 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const 0 + i32.const -2 + i32.const -1 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2704 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 264 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const -4 + i32.const -3 + i32.const -2 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2752 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 266 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const -4 + i32.const -3 + i32.const -1 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2800 + call $~lib/rt/__newArray + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $6 + local.get $8 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 268 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $6 + i32.store offset=16 + local.get $6 + i32.const -4 + i32.const -3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=20 + i32.const 5 + i32.const 2 + i32.const 16 + i32.const 2848 + call $~lib/rt/__newArray + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + local.get $6 + local.get $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 270 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#subarray + local.tee $7 + i32.store offset=16 + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 282 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=4 + local.get $7 + i32.load + i32.sub + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 283 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 12 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 284 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 1 + i32.const 3 + call $~lib/typedarray/Int32Array#slice + local.tee $8 + i32.store offset=8 + local.get $8 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 287 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 288 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 289 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=4 + local.get $8 + i32.load + i32.sub + if + i32.const 0 + i32.const 1568 + i32.const 290 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=8 + i32.const 8 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 291 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#slice + local.tee $7 + i32.store offset=12 + local.get $7 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 294 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 295 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=4 + local.get $7 + i32.load + i32.sub + if + i32.const 0 + i32.const 1568 + i32.const 296 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 297 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 0 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#slice + local.tee $7 + i32.store offset=24 + local.get $6 + local.get $7 + i32.eq + if + i32.const 0 + i32.const 1568 + i32.const 300 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.get $6 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 301 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=4 + local.get $7 + i32.load + i32.sub + local.get $6 + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 302 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + local.get $6 + i32.load offset=8 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 303 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner21 + global.get $~lib/memory/__stack_pointer + local.tee $6 + i64.const 0 + i64.store + local.get $6 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $6 + i32.store + local.get $6 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 2896 + i32.store offset=4 + local.get $6 + i32.load offset=4 + local.set $7 + local.get $6 + i32.load offset=8 + local.set $8 + loop $for-loop|0 + local.get $2 + local.get $8 + i32.lt_s + if + local.get $2 + local.get $7 + i32.add + i32.load8_s + local.set $9 + i32.const 4 + global.set $~argumentsLength + local.get $1 + local.get $9 + local.get $2 + local.get $6 + i32.const 2896 + i32.load + call_indirect $0 (type $i32_i32_i32_i32_=>_i32) + local.set $1 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|0 + end + end + block $folding-inner18 + block $folding-inner17 + block $folding-inner16 + block $folding-inner22 + block $folding-inner20 + block $folding-inner19 + block $folding-inner15 + block $folding-inner14 + block $folding-inner13 + block $folding-inner12 + block $folding-inner6 + block $folding-inner5 + block $folding-inner4 + block $folding-inner3 + block $folding-inner2 + block $folding-inner1 local.get $1 i32.const 255 i32.and @@ -44916,17 +44915,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -44935,30 +44934,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 - local.set $9 + local.set $8 loop $for-loop|05 local.get $2 - local.get $9 + local.get $8 i32.lt_s if local.get $2 - local.get $8 + local.get $7 i32.add i32.load8_u - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -44995,17 +44994,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -45014,30 +45013,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 - local.set $9 + local.set $8 loop $for-loop|013 local.get $2 - local.get $9 + local.get $8 i32.lt_s if local.get $2 - local.get $8 + local.get $7 i32.add i32.load8_u - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -45074,17 +45073,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -45093,34 +45092,34 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 + local.set $8 loop $for-loop|017 local.get $2 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $7 local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -45157,17 +45156,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -45176,34 +45175,34 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 + local.set $8 loop $for-loop|022 local.get $2 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $7 local.get $2 i32.const 1 i32.shl i32.add i32.load16_u - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -45240,17 +45239,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -45259,34 +45258,34 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 + local.set $8 loop $for-loop|027 local.get $2 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -45321,17 +45320,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -45340,34 +45339,34 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 0 local.set $2 - local.get $7 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 + local.set $8 loop $for-loop|032 local.get $2 - local.get $9 + local.get $8 i32.lt_s if - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $10 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $9 local.get $2 - local.get $7 + local.get $6 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -45421,36 +45420,36 @@ i32.store offset=4 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 i32.const 0 local.set $2 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 loop $for-loop|037 local.get $2 - local.get $8 + local.get $7 i32.lt_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $12 + local.get $3 + local.get $11 local.get $2 local.get $1 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $4 + local.set $3 local.get $2 i32.const 1 i32.add @@ -45458,7 +45457,7 @@ br $for-loop|037 end end - local.get $4 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -45499,39 +45498,39 @@ i32.const 3152 i32.store offset=4 i64.const 0 - local.set $4 + local.set $3 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 i32.const 0 local.set $2 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 loop $for-loop|042 local.get $2 - local.get $8 + local.get $7 i32.lt_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $12 + local.get $3 + local.get $11 local.get $2 local.get $1 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $4 + local.set $3 local.get $2 i32.const 1 i32.add @@ -45539,7 +45538,7 @@ br $for-loop|042 end end - local.get $4 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -45581,36 +45580,36 @@ i32.store offset=4 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 i32.const 0 local.set $2 local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $7 loop $for-loop|047 local.get $2 - local.get $8 + local.get $7 i32.lt_s if - local.get $7 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $13 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $13 + local.get $4 + local.get $12 local.get $2 local.get $1 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $5 + local.set $4 local.get $2 i32.const 1 i32.add @@ -45618,7 +45617,7 @@ br $for-loop|047 end end - local.get $5 + local.get $4 f32.const 6 f32.ne br_if $folding-inner1 @@ -45660,36 +45659,36 @@ i32.store offset=4 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 i32.const 0 local.set $2 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 loop $for-loop|052 local.get $2 - local.get $8 + local.get $7 i32.lt_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add f64.load - local.set $14 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $14 + local.get $5 + local.get $13 local.get $2 local.get $1 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $6 + local.set $5 local.get $2 i32.const 1 i32.add @@ -45697,7 +45696,7 @@ br $for-loop|052 end end - local.get $6 + local.get $5 f64.const 6 f64.ne br_if $folding-inner1 @@ -46281,17 +46280,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -46300,10 +46299,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 1 i32.sub @@ -46314,16 +46313,16 @@ i32.ge_s if local.get $2 - local.get $8 + local.get $7 i32.add i32.load8_s - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46360,17 +46359,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -46379,10 +46378,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 1 i32.sub @@ -46393,16 +46392,16 @@ i32.ge_s if local.get $2 - local.get $8 + local.get $7 i32.add i32.load8_u - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46439,17 +46438,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -46458,10 +46457,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 1 i32.sub @@ -46472,16 +46471,16 @@ i32.ge_s if local.get $2 - local.get $8 + local.get $7 i32.add i32.load8_u - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46518,17 +46517,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -46537,10 +46536,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u @@ -46552,19 +46551,19 @@ i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46601,17 +46600,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -46620,10 +46619,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u @@ -46635,19 +46634,19 @@ i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $2 i32.const 1 i32.shl i32.add i32.load16_u - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46684,17 +46683,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -46703,10 +46702,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u @@ -46718,19 +46717,19 @@ i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46765,17 +46764,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -46784,10 +46783,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $6 i32.load offset=4 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u @@ -46799,19 +46798,19 @@ i32.const 0 i32.ge_s if - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $9 + local.get $8 local.get $2 - local.get $7 + local.get $6 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -46864,10 +46863,10 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $4 + local.set $3 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=8 i32.const 3 @@ -46880,23 +46879,23 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $12 + local.get $3 + local.get $11 local.get $2 local.get $1 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $4 + local.set $3 local.get $2 i32.const 1 i32.sub @@ -46904,7 +46903,7 @@ br $for-loop|096 end end - local.get $4 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -46945,10 +46944,10 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $4 + local.set $3 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=8 i32.const 3 @@ -46961,23 +46960,23 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $12 + local.get $3 + local.get $11 local.get $2 local.get $1 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $4 + local.set $3 local.get $2 i32.const 1 i32.sub @@ -46985,7 +46984,7 @@ br $for-loop|0101 end end - local.get $4 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -47026,10 +47025,10 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=8 i32.const 2 @@ -47042,23 +47041,23 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $13 + local.set $12 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $13 + local.get $4 + local.get $12 local.get $2 local.get $1 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $5 + local.set $4 local.get $2 i32.const 1 i32.sub @@ -47066,7 +47065,7 @@ br $for-loop|0106 end end - local.get $5 + local.get $4 f32.const 6 f32.ne br_if $folding-inner5 @@ -47107,10 +47106,10 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $6 + local.set $5 local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=8 i32.const 3 @@ -47123,23 +47122,23 @@ i32.const 0 i32.ge_s if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add f64.load - local.set $14 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $14 + local.get $5 + local.get $13 local.get $2 local.get $1 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $6 + local.set $5 local.get $2 i32.const 1 i32.sub @@ -47147,7 +47146,7 @@ br $for-loop|0111 end end - local.get $6 + local.get $5 f64.const 6 f64.ne br_if $folding-inner5 @@ -47201,91 +47200,91 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $9 i32.store offset=4 loop $for-loop|01 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $3 - local.get $9 + local.get $0 + local.get $8 i32.add i32.load8_s - local.set $11 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $10 + local.get $0 + local.get $9 i32.add - local.get $11 - local.get $3 + local.get $10 + local.get $0 local.get $1 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|01 end end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store - local.get $10 + local.get $9 if - local.get $7 - local.get $10 + local.get $6 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store offset=4 + local.get $6 local.get $7 - local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -47296,7 +47295,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47343,91 +47342,91 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $9 i32.store offset=4 loop $for-loop|03 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $3 - local.get $9 + local.get $0 + local.get $8 i32.add i32.load8_u - local.set $11 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $10 + local.get $0 + local.get $9 i32.add - local.get $11 - local.get $3 + local.get $10 + local.get $0 local.get $1 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|03 end end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store - local.get $10 + local.get $9 if - local.get $7 - local.get $10 + local.get $6 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store offset=4 + local.get $6 local.get $7 - local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -47438,7 +47437,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47485,91 +47484,91 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $9 i32.store offset=4 loop $for-loop|06 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $3 - local.get $9 + local.get $0 + local.get $8 i32.add i32.load8_u - local.set $11 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $10 + local.get $0 + local.get $9 i32.add - local.get $11 - local.get $3 + local.get $10 + local.get $0 local.get $1 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|06 end end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store - local.get $10 + local.get $9 if - local.get $7 - local.get $10 + local.get $6 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.store offset=4 + local.get $6 local.get $7 - local.get $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -47580,7 +47579,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47627,99 +47626,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 1 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|09 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 1 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i32.load16_s - local.set $16 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $16 - local.get $3 + local.get $15 + local.get $0 local.get $1 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|09 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -47730,7 +47729,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47777,99 +47776,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 1 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|012 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 1 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i32.load16_u - local.set $16 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $16 - local.get $3 + local.get $15 + local.get $0 local.get $1 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|012 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -47880,7 +47879,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -47927,99 +47926,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 2 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|015 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 2 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i32.load - local.set $16 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $16 - local.get $3 + local.get $15 + local.get $0 local.get $1 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|015 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -48030,7 +48029,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48077,99 +48076,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 2 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|018 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 2 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i32.load - local.set $16 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $16 - local.get $3 + local.get $15 + local.get $0 local.get $1 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|018 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -48180,7 +48179,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48227,99 +48226,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 3 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|021 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 3 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $4 local.get $3 + local.get $0 local.get $1 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|021 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -48330,7 +48329,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48377,99 +48376,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 3 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|024 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 3 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $4 local.get $3 + local.get $0 local.get $1 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|024 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -48480,7 +48479,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48527,99 +48526,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 2 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|028 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 2 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $5 - local.get $3 + local.get $4 + local.get $0 local.get $1 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|028 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -48630,7 +48629,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48677,99 +48676,99 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $8 + local.set $7 local.get $1 i32.load offset=4 - local.set $9 - local.get $7 + local.set $8 + local.get $6 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 3 i32.shl - local.tee $10 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store offset=4 loop $for-loop|031 - local.get $3 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $9 - local.get $3 + local.get $0 i32.const 3 i32.shl - local.tee $15 + local.tee $14 + local.get $8 i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.add - local.get $6 - local.get $3 + local.get $5 + local.get $0 local.get $1 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|031 end end - local.get $7 - local.get $11 + local.get $6 + local.get $10 i32.store - local.get $11 + local.get $10 if - local.get $7 - local.get $11 + local.get $6 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $11 - i32.store offset=4 - local.get $7 + local.get $6 local.get $10 + i32.store offset=4 + local.get $6 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store offset=8 - local.get $7 + local.get $6 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner16 - local.get $7 + local.get $6 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner17 - local.get $7 + local.get $6 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -48799,23 +48798,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -48823,30 +48822,30 @@ global.get $~lib/memory/__stack_pointer i32.const 4304 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|0633 + local.set $6 + loop $for-loop|00 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -48856,7 +48855,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0633 + br $for-loop|00 end end i32.const 0 @@ -48867,30 +48866,30 @@ global.get $~lib/memory/__stack_pointer i32.const 4336 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 loop $for-loop|04 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -48919,23 +48918,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -48943,30 +48942,30 @@ global.get $~lib/memory/__stack_pointer i32.const 4368 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|07 + local.set $6 + loop $for-loop|0133 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -48976,7 +48975,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|07 + br $for-loop|0133 end end i32.const 0 @@ -48987,30 +48986,30 @@ global.get $~lib/memory/__stack_pointer i32.const 4400 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|048 + local.set $6 + loop $for-loop|043 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49020,7 +49019,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|048 + br $for-loop|043 end end i32.const 0 @@ -49039,108 +49038,108 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.09 (result i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.04 (result i32) global.get $~lib/memory/__stack_pointer i32.const 4432 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|010 + local.set $6 + loop $for-loop|0634 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.09 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.04 drop local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|010 + br $for-loop|0634 end end i32.const 0 end i32.eqz br_if $folding-inner23 - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0111 (result i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.017 (result i32) global.get $~lib/memory/__stack_pointer i32.const 4464 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|0412 + local.set $6 + loop $for-loop|048 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0111 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.017 drop local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|0412 + br $for-loop|048 end end i32.const 0 @@ -49159,23 +49158,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -49183,34 +49182,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4496 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|014 + local.set $6 + loop $for-loop|0935 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49220,7 +49219,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|014 + br $for-loop|0935 end end i32.const 0 @@ -49231,34 +49230,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4528 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|0415 + local.set $6 + loop $for-loop|0410 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49268,7 +49267,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0415 + br $for-loop|0410 end end i32.const 0 @@ -49287,23 +49286,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -49311,34 +49310,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4560 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|016 + local.set $6 + loop $for-loop|011 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49348,7 +49347,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|016 + br $for-loop|011 end end i32.const 0 @@ -49359,34 +49358,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4592 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|0417 + local.set $6 + loop $for-loop|0412 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49396,7 +49395,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0417 + br $for-loop|0412 end end i32.const 0 @@ -49415,23 +49414,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -49439,34 +49438,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4624 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|01834 + local.set $6 + loop $for-loop|014 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49476,7 +49475,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|01834 + br $for-loop|014 end end i32.const 0 @@ -49487,34 +49486,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4656 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|0419 + local.set $6 + loop $for-loop|0415 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49524,7 +49523,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0419 + br $for-loop|0415 end end i32.const 0 @@ -49543,23 +49542,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -49567,34 +49566,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4688 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|020 + local.set $6 + loop $for-loop|016 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49604,7 +49603,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|020 + br $for-loop|016 end end i32.const 0 @@ -49615,34 +49614,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4720 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|0421 + local.set $6 + loop $for-loop|0417 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -49652,7 +49651,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0421 + br $for-loop|0417 end end i32.const 0 @@ -49671,23 +49670,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -49695,34 +49694,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4752 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|023 + local.set $6 + loop $for-loop|01836 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -49732,7 +49731,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|023 + br $for-loop|01836 end end i32.const 0 @@ -49743,34 +49742,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4784 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0424 + local.set $6 + loop $for-loop|0419 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -49780,7 +49779,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0424 + br $for-loop|0419 end end i32.const 0 @@ -49799,23 +49798,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -49823,34 +49822,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4816 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|025 + local.set $6 + loop $for-loop|020 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -49860,7 +49859,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|025 + br $for-loop|020 end end i32.const 0 @@ -49871,34 +49870,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4848 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0426 + local.set $6 + loop $for-loop|0421 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -49908,7 +49907,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0426 + br $for-loop|0421 end end i32.const 0 @@ -49927,23 +49926,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -49951,34 +49950,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4880 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|02835 + local.set $6 + loop $for-loop|023 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -49988,7 +49987,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|02835 + br $for-loop|023 end end i32.const 0 @@ -49999,34 +49998,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4912 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|0429 + local.set $6 + loop $for-loop|0424 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -50036,7 +50035,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0429 + br $for-loop|0424 end end i32.const 0 @@ -50055,23 +50054,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -50079,34 +50078,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4944 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|030 + local.set $6 + loop $for-loop|025 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -50116,7 +50115,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|030 + br $for-loop|025 end end i32.const 0 @@ -50127,34 +50126,34 @@ global.get $~lib/memory/__stack_pointer i32.const 4976 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0431 + local.set $6 + loop $for-loop|0426 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -50164,7 +50163,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0431 + br $for-loop|0426 end end i32.const 0 @@ -50183,53 +50182,53 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5008 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - loop $for-loop|033 + loop $for-loop|02837 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50238,7 +50237,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|033 + br $for-loop|02837 end end i32.const -1 @@ -50251,30 +50250,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5040 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 - loop $for-loop|0434 + loop $for-loop|0429 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50283,7 +50282,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0434 + br $for-loop|0429 end end i32.const -1 @@ -50306,53 +50305,53 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5072 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - loop $for-loop|035 + loop $for-loop|030 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50361,7 +50360,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|035 + br $for-loop|030 end end i32.const -1 @@ -50374,30 +50373,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5104 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 - loop $for-loop|0436 + loop $for-loop|0431 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50406,7 +50405,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0436 + br $for-loop|0431 end end i32.const -1 @@ -50429,62 +50428,62 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5136 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.037 - loop $for-loop|038 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.032 + loop $for-loop|033 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.037 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.032 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|038 + br $for-loop|033 end end i32.const -1 @@ -50497,39 +50496,39 @@ global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0139 - loop $for-loop|0440 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0134 + loop $for-loop|0435 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0139 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0134 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|0440 + br $for-loop|0435 end end i32.const -1 @@ -50552,57 +50551,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - loop $for-loop|041 + loop $for-loop|036 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50611,7 +50610,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|041 + br $for-loop|036 end end i32.const -1 @@ -50624,34 +50623,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5232 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 - loop $for-loop|0442 + loop $for-loop|0437 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50660,7 +50659,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0442 + br $for-loop|0437 end end i32.const -1 @@ -50683,57 +50682,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5264 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - loop $for-loop|043 + loop $for-loop|038 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50742,7 +50741,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|043 + br $for-loop|038 end end i32.const -1 @@ -50755,34 +50754,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5296 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 - loop $for-loop|0444 + loop $for-loop|0439 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50791,7 +50790,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0444 + br $for-loop|0439 end end i32.const -1 @@ -50814,57 +50813,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5328 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - loop $for-loop|045 + loop $for-loop|040 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50873,7 +50872,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|045 + br $for-loop|040 end end i32.const -1 @@ -50886,34 +50885,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 - loop $for-loop|0446 + loop $for-loop|0441 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50922,7 +50921,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0446 + br $for-loop|0441 end end i32.const -1 @@ -50945,57 +50944,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - loop $for-loop|049 + loop $for-loop|044 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51004,7 +51003,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|049 + br $for-loop|044 end end i32.const -1 @@ -51017,34 +51016,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5424 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 - loop $for-loop|0450 + loop $for-loop|0445 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51053,7 +51052,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0450 + br $for-loop|0445 end end i32.const -1 @@ -51076,57 +51075,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5456 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - loop $for-loop|051 + loop $for-loop|046 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51135,7 +51134,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|051 + br $for-loop|046 end end i32.const -1 @@ -51148,34 +51147,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5488 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 - loop $for-loop|0452 + loop $for-loop|0447 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51184,7 +51183,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0452 + br $for-loop|0447 end end i32.const -1 @@ -51207,57 +51206,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5520 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - loop $for-loop|053 + loop $for-loop|049 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51266,7 +51265,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|053 + br $for-loop|049 end end i32.const -1 @@ -51279,34 +51278,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5552 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 - loop $for-loop|0454 + loop $for-loop|0450 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51315,7 +51314,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0454 + br $for-loop|0450 end end i32.const -1 @@ -51338,57 +51337,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5584 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - loop $for-loop|055 + loop $for-loop|051 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -51397,7 +51396,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|055 + br $for-loop|051 end end i32.const -1 @@ -51410,34 +51409,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 - loop $for-loop|0456 + loop $for-loop|0452 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -51446,7 +51445,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0456 + br $for-loop|0452 end end i32.const -1 @@ -51469,57 +51468,57 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5648 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - loop $for-loop|057 + loop $for-loop|053 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -51528,7 +51527,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|057 + br $for-loop|053 end end i32.const -1 @@ -51541,34 +51540,34 @@ global.get $~lib/memory/__stack_pointer i32.const 5680 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 - loop $for-loop|0458 + loop $for-loop|0454 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -51577,7 +51576,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0458 + br $for-loop|0454 end end i32.const -1 @@ -51600,53 +51599,53 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - loop $for-loop|060 + loop $for-loop|055 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51655,7 +51654,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|060 + br $for-loop|055 end end i32.const -1 @@ -51668,30 +51667,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 - loop $for-loop|0461 + loop $for-loop|0456 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51700,7 +51699,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0461 + br $for-loop|0456 end end i32.const -1 @@ -51723,53 +51722,53 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - loop $for-loop|062 + loop $for-loop|057 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51778,7 +51777,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|062 + br $for-loop|057 end end i32.const -1 @@ -51791,30 +51790,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 - loop $for-loop|0463 + loop $for-loop|0458 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51823,7 +51822,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0463 + br $for-loop|0458 end end i32.const -1 @@ -51846,62 +51845,62 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 - loop $for-loop|065 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.059 + loop $for-loop|060 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.059 local.get $1 i32.const 1 i32.sub local.set $1 - br $for-loop|065 + br $for-loop|060 end end i32.const -1 @@ -51914,39 +51913,39 @@ global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.sub local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 - loop $for-loop|0467 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0161 + loop $for-loop|0462 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0161 local.get $1 i32.const 1 i32.sub local.set $1 - br $for-loop|0467 + br $for-loop|0462 end end i32.const -1 @@ -51969,33 +51968,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -52003,23 +52002,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - loop $for-loop|068 + loop $for-loop|063 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52028,7 +52027,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|068 + br $for-loop|063 end end i32.const -1 @@ -52041,10 +52040,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -52052,23 +52051,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 - loop $for-loop|0469 + loop $for-loop|0464 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52077,7 +52076,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0469 + br $for-loop|0464 end end i32.const -1 @@ -52100,33 +52099,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -52134,23 +52133,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - loop $for-loop|070 + loop $for-loop|065 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52159,7 +52158,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|070 + br $for-loop|065 end end i32.const -1 @@ -52172,10 +52171,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -52183,23 +52182,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 - loop $for-loop|0471 + loop $for-loop|0466 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52208,7 +52207,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0471 + br $for-loop|0466 end end i32.const -1 @@ -52231,33 +52230,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52265,23 +52264,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - loop $for-loop|072 + loop $for-loop|067 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52290,7 +52289,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|072 + br $for-loop|067 end end i32.const -1 @@ -52303,10 +52302,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52314,23 +52313,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 - loop $for-loop|0473 + loop $for-loop|0468 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52339,7 +52338,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0473 + br $for-loop|0468 end end i32.const -1 @@ -52362,33 +52361,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52396,23 +52395,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - loop $for-loop|074 + loop $for-loop|069 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52421,7 +52420,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|074 + br $for-loop|069 end end i32.const -1 @@ -52434,10 +52433,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52445,23 +52444,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 - loop $for-loop|0475 + loop $for-loop|0470 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $1 - local.get $2 + local.get $0 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52470,7 +52469,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0475 + br $for-loop|0470 end end i32.const -1 @@ -52493,33 +52492,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6160 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52527,23 +52526,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - loop $for-loop|077 + loop $for-loop|072 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52552,7 +52551,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|077 + br $for-loop|072 end end i32.const -1 @@ -52565,10 +52564,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6192 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52576,23 +52575,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 - loop $for-loop|0478 + loop $for-loop|0473 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52601,7 +52600,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0478 + br $for-loop|0473 end end i32.const -1 @@ -52624,33 +52623,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6224 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52658,23 +52657,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - loop $for-loop|079 + loop $for-loop|074 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52683,7 +52682,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|079 + br $for-loop|074 end end i32.const -1 @@ -52696,10 +52695,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6256 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52707,23 +52706,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 - loop $for-loop|0480 + loop $for-loop|0475 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52732,7 +52731,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0480 + br $for-loop|0475 end end i32.const -1 @@ -52755,33 +52754,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6288 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52789,23 +52788,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - loop $for-loop|082 + loop $for-loop|077 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -52814,7 +52813,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|082 + br $for-loop|077 end end i32.const -1 @@ -52827,10 +52826,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6320 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -52838,23 +52837,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 - loop $for-loop|0483 + loop $for-loop|0478 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -52863,7 +52862,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0483 + br $for-loop|0478 end end i32.const -1 @@ -52886,33 +52885,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6352 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52920,23 +52919,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - loop $for-loop|084 + loop $for-loop|079 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -52945,7 +52944,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|084 + br $for-loop|079 end end i32.const -1 @@ -52958,10 +52957,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -52969,23 +52968,23 @@ i32.sub local.set $1 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 - loop $for-loop|0485 + loop $for-loop|0480 local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -52994,7 +52993,7 @@ i32.const 1 i32.sub local.set $1 - br $for-loop|0485 + br $for-loop|0480 end end i32.const -1 @@ -53017,23 +53016,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -53041,30 +53040,30 @@ global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|087 + local.set $6 + loop $for-loop|082 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53075,7 +53074,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|087 + br $for-loop|082 end end i32.const 1 @@ -53086,30 +53085,30 @@ global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|0488 + local.set $6 + loop $for-loop|0483 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53120,7 +53119,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0488 + br $for-loop|0483 end end i32.const 1 @@ -53139,23 +53138,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -53163,30 +53162,30 @@ global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|089 + local.set $6 + loop $for-loop|084 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53197,7 +53196,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|089 + br $for-loop|084 end end i32.const 1 @@ -53208,30 +53207,30 @@ global.get $~lib/memory/__stack_pointer i32.const 6512 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|0490 + local.set $6 + loop $for-loop|0485 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53242,7 +53241,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0490 + br $for-loop|0485 end end i32.const 1 @@ -53261,110 +53260,110 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.091 (result i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.086 (result i32) global.get $~lib/memory/__stack_pointer i32.const 6544 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|092 + local.set $6 + loop $for-loop|087 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.091 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.086 drop local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|092 + br $for-loop|087 end end i32.const 1 end i32.eqz br_if $folding-inner29 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0193 (result i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0188 (result i32) global.get $~lib/memory/__stack_pointer i32.const 6576 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 - local.set $7 - loop $for-loop|0494 + local.set $6 + loop $for-loop|0489 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $1 - local.get $3 + local.get $2 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0193 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0188 drop local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|0494 + br $for-loop|0489 end end i32.const 1 @@ -53383,23 +53382,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -53407,34 +53406,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6608 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|095 + local.set $6 + loop $for-loop|090 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53445,7 +53444,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|095 + br $for-loop|090 end end i32.const 1 @@ -53456,34 +53455,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|0496 + local.set $6 + loop $for-loop|0491 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53494,7 +53493,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0496 + br $for-loop|0491 end end i32.const 1 @@ -53513,23 +53512,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -53537,34 +53536,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|097 + local.set $6 + loop $for-loop|092 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53575,7 +53574,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|097 + br $for-loop|092 end end i32.const 1 @@ -53586,34 +53585,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6704 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|0498 + local.set $6 + loop $for-loop|0493 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53624,7 +53623,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0498 + br $for-loop|0493 end end i32.const 1 @@ -53643,23 +53642,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -53667,34 +53666,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6736 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|099 + local.set $6 + loop $for-loop|094 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53705,7 +53704,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|099 + br $for-loop|094 end end i32.const 1 @@ -53716,34 +53715,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6768 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|04100 + local.set $6 + loop $for-loop|0495 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53754,7 +53753,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04100 + br $for-loop|0495 end end i32.const 1 @@ -53773,23 +53772,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -53797,34 +53796,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|0102 + local.set $6 + loop $for-loop|097 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53835,7 +53834,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0102 + br $for-loop|097 end end i32.const 1 @@ -53846,34 +53845,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|04103 + local.set $6 + loop $for-loop|0498 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 + local.get $7 local.get $1 - local.get $2 + local.get $0 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53884,7 +53883,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04103 + br $for-loop|0498 end end i32.const 1 @@ -53903,23 +53902,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -53927,34 +53926,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6864 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0104 + local.set $6 + loop $for-loop|099 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6864 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -53965,7 +53964,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0104 + br $for-loop|099 end end i32.const 1 @@ -53976,34 +53975,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6896 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|04105 + local.set $6 + loop $for-loop|04100 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6896 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54014,7 +54013,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04105 + br $for-loop|04100 end end i32.const 1 @@ -54033,23 +54032,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -54057,34 +54056,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0107 + local.set $6 + loop $for-loop|0102 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6928 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54095,7 +54094,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0107 + br $for-loop|0102 end end i32.const 1 @@ -54106,34 +54105,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|04108 + local.set $6 + loop $for-loop|04103 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6960 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54144,7 +54143,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04108 + br $for-loop|04103 end end i32.const 1 @@ -54163,23 +54162,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -54187,34 +54186,34 @@ global.get $~lib/memory/__stack_pointer i32.const 6992 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|0109 + local.set $6 + loop $for-loop|0104 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 6992 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54225,7 +54224,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0109 + br $for-loop|0104 end end i32.const 1 @@ -54236,34 +54235,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7024 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - loop $for-loop|04110 + local.set $6 + loop $for-loop|04105 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $5 + local.get $4 local.get $1 - local.get $2 + local.get $0 i32.const 7024 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54274,7 +54273,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04110 + br $for-loop|04105 end end i32.const 1 @@ -54293,23 +54292,23 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -54317,34 +54316,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7056 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|0112 + local.set $6 + loop $for-loop|0107 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 7056 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54355,7 +54354,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0112 + br $for-loop|0107 end end i32.const 1 @@ -54366,34 +54365,34 @@ global.get $~lib/memory/__stack_pointer i32.const 7088 i32.store offset=4 - local.get $2 + local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - loop $for-loop|04113 + local.set $6 + loop $for-loop|04108 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 + local.get $5 local.get $1 - local.get $2 + local.get $0 i32.const 7088 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54404,7 +54403,7 @@ i32.const 1 i32.add local.set $1 - br $for-loop|04113 + br $for-loop|04108 end end i32.const 1 @@ -54423,25 +54422,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54451,7 +54450,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54461,7 +54460,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54471,29 +54470,29 @@ global.get $~lib/memory/__stack_pointer i32.const 7200 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 loop $for-loop|0116 local.get $2 - local.get $7 + local.get $6 i32.lt_s if + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -54521,25 +54520,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54550,7 +54549,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54561,7 +54560,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54572,29 +54571,29 @@ global.get $~lib/memory/__stack_pointer i32.const 7232 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 loop $for-loop|0121 local.get $2 - local.get $7 + local.get $6 i32.lt_s if + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -54622,25 +54621,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54651,7 +54650,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54662,7 +54661,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54673,29 +54672,29 @@ global.get $~lib/memory/__stack_pointer i32.const 7264 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 - local.set $7 + local.set $6 loop $for-loop|0128 local.get $2 - local.get $7 + local.get $6 i32.lt_s if + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -54723,25 +54722,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54751,7 +54750,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54761,7 +54760,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54771,33 +54770,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7296 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - loop $for-loop|0133 + local.set $6 + loop $for-loop|013338 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -54805,7 +54804,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|0133 + br $for-loop|013338 end end global.get $std/typedarray/forEachCallCount @@ -54825,25 +54824,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54854,7 +54853,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54865,7 +54864,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54876,33 +54875,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7328 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0138 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 1 i32.shl i32.add i32.load16_u - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -54930,25 +54929,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -54957,7 +54956,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -54966,7 +54965,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -54975,33 +54974,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7360 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0143 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -55029,25 +55028,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -55056,7 +55055,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -55065,7 +55064,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -55074,33 +55073,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7392 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0148 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $7 local.get $2 - local.get $1 + local.get $0 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -55128,25 +55127,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -55156,7 +55155,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -55166,7 +55165,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -55176,33 +55175,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7424 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0153 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $2 - local.get $1 + local.get $0 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) @@ -55230,25 +55229,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -55258,7 +55257,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -55268,7 +55267,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -55278,33 +55277,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7456 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0158 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl i32.add i64.load - local.set $4 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $3 local.get $2 - local.get $1 + local.get $0 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) @@ -55332,25 +55331,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -55360,7 +55359,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -55370,7 +55369,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -55380,33 +55379,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7488 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0163 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $4 local.get $2 - local.get $1 + local.get $0 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) @@ -55434,25 +55433,25 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 @@ -55462,7 +55461,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 @@ -55472,7 +55471,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 @@ -55482,33 +55481,33 @@ global.get $~lib/memory/__stack_pointer i32.const 7520 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 loop $for-loop|0168 local.get $2 - local.get $7 + local.get $6 i32.lt_s if - local.get $3 + local.get $1 local.get $2 i32.const 3 i32.shl i32.add f64.load - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $5 local.get $2 - local.get $1 + local.get $0 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) @@ -55538,38 +55537,38 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $2 + local.get $0 i32.const 7616 i32.store - local.get $2 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Int8Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 - loop $for-loop|0114 + loop $for-loop|0109 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -55580,26 +55579,26 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0114 + br $for-loop|0109 end end - local.get $3 + local.get $2 i32.load offset=4 - local.get $3 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 local.set $1 loop $for-loop|1 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Int8Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -55616,42 +55615,42 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=12 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $0 local.get $1 - local.get $2 i32.store offset=16 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $2 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -55672,31 +55671,31 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $2 + local.get $0 i32.const 7616 i32.store - local.get $2 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Uint8Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 - loop $for-loop|0115 + loop $for-loop|0110 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 @@ -55704,7 +55703,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -55716,26 +55715,26 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0115 + br $for-loop|0110 end end - local.get $3 + local.get $2 i32.load offset=4 - local.get $3 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 local.set $1 - loop $for-loop|1116 + loop $for-loop|1111 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -55749,45 +55748,45 @@ i32.const 1 i32.add local.set $1 - br $for-loop|1116 + br $for-loop|1111 end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=12 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $0 local.get $1 - local.get $2 i32.store offset=16 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $2 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -55808,31 +55807,31 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $2 + local.get $0 i32.const 7616 i32.store - local.get $2 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $6 i32.store offset=8 - loop $for-loop|0117 + loop $for-loop|0112 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 @@ -55840,7 +55839,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -55852,26 +55851,26 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0117 + br $for-loop|0112 end end - local.get $3 + local.get $2 i32.load offset=4 - local.get $3 + local.get $2 i32.load offset=8 call $~lib/util/bytes/REVERSE i32.const 0 local.set $1 - loop $for-loop|1118 + loop $for-loop|1113 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -55885,45 +55884,45 @@ i32.const 1 i32.add local.set $1 - br $for-loop|1118 + br $for-loop|1113 end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=12 - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=8 call $~lib/util/bytes/REVERSE + local.get $0 local.get $1 - local.get $2 i32.store offset=16 - local.get $2 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $2 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $2 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $2 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -55942,40 +55941,40 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 loop $for-loop|0171 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -55989,21 +55988,21 @@ br $for-loop|0171 end end - local.get $3 + local.get $2 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 local.set $1 - loop $for-loop|1119 + loop $for-loop|1114 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Int16Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -56016,42 +56015,42 @@ i32.const 1 i32.add local.set $1 - br $for-loop|1119 + br $for-loop|1114 end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $2 call $~lib/typedarray/Int16Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -56070,33 +56069,33 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 - loop $for-loop|02136 + loop $for-loop|02139 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 @@ -56104,7 +56103,7 @@ i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -56116,24 +56115,24 @@ i32.const 1 i32.add local.set $1 - br $for-loop|02136 + br $for-loop|02139 end end - local.get $3 + local.get $2 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 local.set $1 loop $for-loop|124 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -56151,38 +56150,38 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $2 call $~lib/typedarray/Int16Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -56201,39 +56200,39 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 loop $for-loop|029 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -56248,51 +56247,51 @@ end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 loop $while-continue|0 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load - local.set $15 - local.get $11 + local.set $14 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load i32.store - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.store local.get $1 i32.const 1 @@ -56305,15 +56304,15 @@ i32.const 0 local.set $1 loop $for-loop|132 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Int32Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -56329,93 +56328,93 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0121 + local.set $7 + loop $while-continue|0116 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load - local.set $11 - local.get $10 + local.set $10 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load i32.store + local.get $9 local.get $10 - local.get $11 i32.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0121 + br $while-continue|0116 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -56434,39 +56433,39 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 loop $for-loop|037175 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -56481,72 +56480,72 @@ end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - loop $while-continue|0123 + local.set $8 + loop $while-continue|0118 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load - local.set $15 - local.get $11 + local.set $14 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 i32.load i32.store - local.get $11 - local.get $15 + local.get $10 + local.get $14 i32.store local.get $1 i32.const 1 i32.add local.set $1 - br $while-continue|0123 + br $while-continue|0118 end end end i32.const 0 local.set $1 loop $for-loop|140 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -56562,92 +56561,92 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0125 + local.set $7 + loop $while-continue|0120 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load - local.set $11 - local.get $10 + local.set $10 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load i32.store + local.get $9 local.get $10 - local.get $11 i32.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0125 + br $while-continue|0120 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 i32.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 i32.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 i32.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -56666,40 +56665,40 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 - loop $for-loop|045126 + loop $for-loop|045 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -56710,77 +56709,77 @@ i32.const 1 i32.add local.set $1 - br $for-loop|045126 + br $for-loop|045 end end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - loop $while-continue|0127 + local.set $8 + loop $while-continue|0121 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 i64.load - local.set $4 - local.get $11 + local.set $3 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 i64.load i64.store - local.get $11 - local.get $4 + local.get $10 + local.get $3 i64.store local.get $1 i32.const 1 i32.add local.set $1 - br $while-continue|0127 + br $while-continue|0121 end end end i32.const 0 local.set $1 loop $for-loop|148 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -56797,92 +56796,92 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0129 + local.set $7 + loop $while-continue|0123 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 i64.load - local.set $4 - local.get $10 + local.set $3 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 i64.load i64.store - local.get $10 - local.get $4 + local.get $9 + local.get $3 i64.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0129 + br $while-continue|0123 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 i64.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 i64.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 i64.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -56901,40 +56900,40 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Uint64Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 - loop $for-loop|053130 + loop $for-loop|053124 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -56945,77 +56944,77 @@ i32.const 1 i32.add local.set $1 - br $for-loop|053130 + br $for-loop|053124 end end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - loop $while-continue|0132 + local.set $8 + loop $while-continue|0126 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 i64.load - local.set $4 - local.get $11 + local.set $3 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 i64.load i64.store - local.get $11 - local.get $4 + local.get $10 + local.get $3 i64.store local.get $1 i32.const 1 i32.add local.set $1 - br $while-continue|0132 + br $while-continue|0126 end end end i32.const 0 local.set $1 loop $for-loop|156 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -57032,92 +57031,92 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0134 + local.set $7 + loop $while-continue|0128 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 i64.load - local.set $4 - local.get $10 + local.set $3 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 i64.load i64.store - local.get $10 - local.get $4 + local.get $9 + local.get $3 i64.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0134 + br $while-continue|0128 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 i64.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 i64.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 i64.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -57136,40 +57135,40 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Float32Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 loop $for-loop|061 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -57185,72 +57184,72 @@ end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - loop $while-continue|0135 + local.set $8 + loop $while-continue|0129 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 f32.load - local.set $5 - local.get $11 + local.set $4 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 f32.load f32.store - local.get $11 - local.get $5 + local.get $10 + local.get $4 f32.store local.get $1 i32.const 1 i32.add local.set $1 - br $while-continue|0135 + br $while-continue|0129 end end end i32.const 0 local.set $1 loop $for-loop|164 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -57267,92 +57266,92 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0137 + local.set $7 + loop $while-continue|0131 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 f32.load - local.set $5 - local.get $10 + local.set $4 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 f32.load f32.store - local.get $10 - local.get $5 + local.get $9 + local.get $4 f32.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0137 + br $while-continue|0131 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 f32.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 f32.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 f32.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -57371,40 +57370,40 @@ i32.lt_s br_if $folding-inner21 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.const 20 memory.fill - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $2 + local.tee $0 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $~lib/typedarray/Float64Array#constructor - local.tee $7 + local.tee $6 i32.store offset=8 i32.const 0 local.set $1 - loop $for-loop|069 + loop $for-loop|069132 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $7 + local.get $6 local.get $1 i32.const 7616 local.get $1 @@ -57415,77 +57414,77 @@ i32.const 1 i32.add local.set $1 - br $for-loop|069 + br $for-loop|069132 end end i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=4 - local.set $8 - local.get $3 + local.set $7 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $9 + local.tee $8 i32.const 1 i32.gt_u if - local.get $9 + local.get $8 i32.const 1 i32.shr_u - local.set $10 - local.get $9 + local.set $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - loop $while-continue|0138 + local.set $8 + loop $while-continue|0133 local.get $1 - local.get $10 + local.get $9 i32.lt_u if - local.get $8 + local.get $7 local.get $1 i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 f64.load - local.set $6 - local.get $11 + local.set $5 + local.get $10 + local.get $7 local.get $8 - local.get $9 local.get $1 i32.sub i32.const 3 i32.shl i32.add - local.tee $11 + local.tee $10 f64.load f64.store - local.get $11 - local.get $6 + local.get $10 + local.get $5 f64.store local.get $1 i32.const 1 i32.add local.set $1 - br $while-continue|0138 + br $while-continue|0133 end end end i32.const 0 local.set $1 loop $for-loop|172 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub local.get $1 @@ -57502,93 +57501,93 @@ end end global.get $~lib/memory/__stack_pointer - local.set $1 - local.get $7 + local.set $0 + local.get $6 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 i32.const 0 local.set $2 - local.get $3 + local.get $1 i32.load offset=4 - local.set $7 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.gt_u if - local.get $8 + local.get $7 i32.const 1 i32.shr_u - local.set $9 - local.get $8 + local.set $8 + local.get $7 i32.const 1 i32.sub - local.set $8 - loop $while-continue|0140 + local.set $7 + loop $while-continue|0135 local.get $2 - local.get $9 + local.get $8 i32.lt_u if - local.get $7 + local.get $6 local.get $2 i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 f64.load - local.set $6 - local.get $10 + local.set $5 + local.get $9 + local.get $6 local.get $7 - local.get $8 local.get $2 i32.sub i32.const 3 i32.shl i32.add - local.tee $10 + local.tee $9 f64.load f64.store - local.get $10 - local.get $6 + local.get $9 + local.get $5 f64.store local.get $2 i32.const 1 i32.add local.set $2 - br $while-continue|0140 + br $while-continue|0135 end end end + local.get $0 local.get $1 - local.get $3 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 f64.ne br_if $folding-inner32 - local.get $3 + local.get $1 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 f64.ne br_if $folding-inner33 - local.get $3 + local.get $1 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 f64.ne br_if $folding-inner34 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -57618,6 +57617,8 @@ i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set + i32.const 0 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 @@ -57625,15 +57626,15 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $6 i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 i32.load offset=4 local.set $7 - loop $while-continue|0141 + loop $while-continue|0136 local.get $0 - local.get $3 + local.get $6 i32.lt_s if local.get $7 @@ -57650,7 +57651,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|0141 + br $while-continue|0136 end end i32.const -1 @@ -57682,7 +57683,7 @@ local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|0142 + loop $while-continue|0137 local.get $0 local.get $1 i32.gt_s @@ -57694,11 +57695,11 @@ i32.shl i32.add f64.load - local.tee $6 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $6 - local.get $6 + local.get $5 + local.get $5 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 @@ -57707,7 +57708,7 @@ i32.const 1 i32.add local.set $1 - br $while-continue|0142 + br $while-continue|0137 end end i32.const 0 @@ -57739,15 +57740,15 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $6 i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $1 i32.load offset=4 local.set $7 - loop $while-continue|0143 + loop $while-continue|0138 local.get $0 - local.get $3 + local.get $6 i32.lt_s if local.get $7 @@ -57764,7 +57765,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|0143 + br $while-continue|0138 end end i32.const -1 @@ -57808,11 +57809,11 @@ i32.shl i32.add f32.load - local.tee $5 + local.tee $4 f32.const nan:0x400000 f32.eq - local.get $5 - local.get $5 + local.get $4 + local.get $4 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 @@ -58927,10 +58928,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -58945,7 +58946,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -58990,7 +58991,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $7 i32.store offset=16 i32.const 0 @@ -59044,7 +59045,7 @@ i32.store offset=4 i32.const 0 local.set $1 - loop $for-loop|092144 + loop $for-loop|092139 local.get $0 local.get $1 i32.gt_s @@ -59061,17 +59062,17 @@ i32.const 1 i32.add local.set $1 - br $for-loop|092144 + br $for-loop|092139 end end global.get $~lib/memory/__stack_pointer local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59091,7 +59092,7 @@ local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $3 + local.tee $6 i32.store offset=16 i32.const 0 local.set $1 @@ -59103,7 +59104,7 @@ local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get - local.get $3 + local.get $6 local.get $1 call $~lib/typedarray/Uint8Array#__get i32.ne @@ -59144,7 +59145,7 @@ i32.store offset=4 i32.const 0 local.set $1 - loop $for-loop|0102145 + loop $for-loop|0102140 local.get $0 local.get $1 i32.gt_s @@ -59161,17 +59162,17 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0102145 + br $for-loop|0102140 end end global.get $~lib/memory/__stack_pointer local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59186,7 +59187,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59231,7 +59232,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $7 i32.store offset=16 i32.const 0 @@ -59285,7 +59286,7 @@ i32.store offset=4 i32.const 0 local.set $1 - loop $for-loop|0112147 + loop $for-loop|0112142 local.get $0 local.get $1 i32.gt_s @@ -59301,17 +59302,17 @@ i32.const 1 i32.add local.set $1 - br $for-loop|0112147 + br $for-loop|0112142 end end global.get $~lib/memory/__stack_pointer local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59326,7 +59327,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59373,7 +59374,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -59451,10 +59452,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59469,7 +59470,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59516,7 +59517,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -59592,10 +59593,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59610,7 +59611,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59657,7 +59658,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -59733,10 +59734,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59751,7 +59752,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59798,7 +59799,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -59875,10 +59876,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -59893,7 +59894,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -59940,7 +59941,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -60017,10 +60018,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -60035,7 +60036,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60082,7 +60083,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -60159,10 +60160,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -60177,7 +60178,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60224,7 +60225,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -60301,10 +60302,10 @@ local.tee $1 local.get $2 i32.load - local.tee $3 + local.tee $6 i32.store offset=8 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load offset=4 local.get $2 @@ -60319,7 +60320,7 @@ local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.set $3 + local.set $6 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer @@ -60366,7 +60367,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $8 i32.store offset=16 i32.const 0 @@ -60431,21 +60432,21 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set @@ -60503,13 +60504,13 @@ i32.shl i32.add f32.load - local.tee $5 + local.tee $4 f32.min f32.max i32.trunc_sat_f32_u i32.const 0 - local.get $5 - local.get $5 + local.get $4 + local.get $4 f32.sub f32.const 0 f32.eq @@ -60523,7 +60524,7 @@ end end local.get $0 - local.get $3 + local.get $6 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> local.get $0 @@ -60543,7 +60544,7 @@ local.set $1 local.get $7 i32.load offset=4 - local.set $3 + local.set $6 local.get $7 i32.load offset=8 i32.const 2 @@ -60559,18 +60560,18 @@ local.get $1 local.get $2 i32.add - i32.const 255 - local.get $3 + local.get $6 local.get $2 i32.const 2 i32.shl i32.add i32.load local.tee $8 + i32.const 255 + local.get $8 i32.sub i32.const 31 i32.shr_s - local.get $8 i32.or local.get $8 i32.const 31 @@ -60622,21 +60623,21 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $6 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $6 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $6 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set @@ -60690,7 +60691,7 @@ end end local.get $0 - local.get $3 + local.get $6 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -60879,11 +60880,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1158 - block $0of1159 - block $outOfRange160 + block $1of1153 + block $0of1154 + block $outOfRange155 global.get $~argumentsLength - br_table $0of1159 $1of1158 $outOfRange160 + br_table $0of1154 $1of1153 $outOfRange155 end unreachable end @@ -61004,11 +61005,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1162 - block $0of1163 - block $outOfRange164 + block $1of1157 + block $0of1158 + block $outOfRange159 global.get $~argumentsLength - br_table $0of1163 $1of1162 $outOfRange164 + br_table $0of1158 $1of1157 $outOfRange159 end unreachable end @@ -61129,11 +61130,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of139 - block $0of140 - block $outOfRange41 + block $1of142 + block $0of143 + block $outOfRange44 global.get $~argumentsLength - br_table $0of140 $1of139 $outOfRange41 + br_table $0of143 $1of142 $outOfRange44 end unreachable end @@ -61258,11 +61259,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of143 - block $0of144 - block $outOfRange45 + block $1of146 + block $0of147 + block $outOfRange48 global.get $~argumentsLength - br_table $0of144 $1of143 $outOfRange45 + br_table $0of147 $1of146 $outOfRange48 end unreachable end @@ -61387,11 +61388,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of147 - block $0of148 - block $outOfRange49 + block $1of150 + block $0of151 + block $outOfRange52 global.get $~argumentsLength - br_table $0of148 $1of147 $outOfRange49 + br_table $0of151 $1of150 $outOfRange52 end unreachable end @@ -61516,11 +61517,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of151 - block $0of152 - block $outOfRange53 + block $1of154 + block $0of155 + block $outOfRange56 global.get $~argumentsLength - br_table $0of152 $1of151 $outOfRange53 + br_table $0of155 $1of154 $outOfRange56 end unreachable end @@ -61645,11 +61646,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of155 - block $0of156 - block $outOfRange57 + block $1of158 + block $0of159 + block $outOfRange60 global.get $~argumentsLength - br_table $0of156 $1of155 $outOfRange57 + br_table $0of159 $1of158 $outOfRange60 end unreachable end @@ -61774,11 +61775,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of159 - block $0of160 - block $outOfRange61 + block $1of162 + block $0of163 + block $outOfRange64 global.get $~argumentsLength - br_table $0of160 $1of159 $outOfRange61 + br_table $0of163 $1of162 $outOfRange64 end unreachable end @@ -61903,11 +61904,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of163 - block $0of164 - block $outOfRange65 + block $1of166 + block $0of167 + block $outOfRange68 global.get $~argumentsLength - br_table $0of164 $1of163 $outOfRange65 + br_table $0of167 $1of166 $outOfRange68 end unreachable end @@ -63453,48 +63454,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store - local.get $0 - i32.load offset=8 - local.set $2 - local.get $3 - i32.const 12 i32.const 4 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 local.get $0 - i32.load + i32.load offset=8 local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_s select - local.tee $0 - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63504,26 +63480,51 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 4 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Uint8ClampedArray#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -63545,48 +63546,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 - local.set $2 - local.get $3 - i32.const 12 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_s select - local.tee $0 - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63596,26 +63572,51 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 5 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Int16Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -63637,52 +63638,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 1 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63692,19 +63666,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 6 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 1 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 1 i32.shl @@ -63713,7 +63714,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Uint16Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -63735,52 +63736,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 1 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63790,19 +63764,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 7 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 1 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 1 i32.shl @@ -63811,7 +63812,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Uint32Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -63833,52 +63834,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 9 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 2 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63888,19 +63862,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 9 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 2 i32.shl @@ -63909,7 +63910,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Int64Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -63931,52 +63932,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 10 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -63986,19 +63960,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 10 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 3 i32.shl @@ -64007,7 +64008,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Uint64Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -64029,52 +64030,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 11 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -64084,19 +64058,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 11 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 3 i32.shl @@ -64105,7 +64106,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/typedarray/Float32Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -64127,52 +64128,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store + i32.const 4 local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 - local.get $3 - i32.const 12 - i32.const 12 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $4 - local.get $0 - i32.load local.tee $3 - i32.store local.get $3 - if - local.get $4 - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $4 - local.get $0 - i32.load offset=4 - i32.const 4 - local.get $2 - local.get $2 i32.const 4 i32.gt_u select - local.tee $0 - i32.const 2 - i32.shl - i32.add - i32.store offset=4 - local.get $4 + local.set $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -64182,19 +64156,46 @@ select else local.get $1 - local.get $2 + local.get $3 local.get $1 - local.get $2 + local.get $3 i32.lt_s select end + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 12 + call $~lib/rt/itcms/__new local.tee $1 + i32.store + local.get $1 local.get $0 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select - local.get $0 + local.get $2 i32.sub i32.const 2 i32.shl @@ -64203,7 +64204,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/util/number/itoa32 (param $0 i32) (result i32) (local $1 i32) diff --git a/tests/compiler/std/uri.release.wat b/tests/compiler/std/uri.release.wat index c8d9f63f98..d41a455c03 100644 --- a/tests/compiler/std/uri.release.wat +++ b/tests/compiler/std/uri.release.wat @@ -4246,19 +4246,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/super-inline.release.wat b/tests/compiler/super-inline.release.wat index cc60d96dc6..a29b4866d3 100644 --- a/tests/compiler/super-inline.release.wat +++ b/tests/compiler/super-inline.release.wat @@ -1045,13 +1045,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1525,19 +1525,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/templateliteral.release.wat b/tests/compiler/templateliteral.release.wat index b115663b48..afe4124458 100644 --- a/tests/compiler/templateliteral.release.wat +++ b/tests/compiler/templateliteral.release.wat @@ -1,8 +1,8 @@ (module (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $none_=>_none (func)) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $f64_=>_i32 (func (param f64) (result i32))) @@ -1734,222 +1734,6 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end ) - (func $~lib/staticarray/StaticArray<~lib/string/String>#join (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $__inlined_func$~lib/util/string/joinStringArray (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 2 - i32.shr_u - local.set $4 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 5732 - i32.lt_s - if - i32.const 22144 - i32.const 22192 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $5 - i64.const 0 - i64.store - local.get $5 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const 1 - i32.sub - local.tee $5 - i32.const 0 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1184 - br $__inlined_func$~lib/util/string/joinStringArray - end - local.get $5 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load - local.tee $0 - i32.store - local.get $1 - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.const 1184 - local.get $0 - select - br $__inlined_func$~lib/util/string/joinStringArray - end - loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $6 - i32.store offset=4 - local.get $6 - if - local.get $1 - local.get $6 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.add - local.set $1 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|0 - end - end - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.const 1180 - i32.load - i32.const 1 - i32.shr_u - local.tee $1 - local.get $5 - i32.mul - i32.add - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - i32.const 0 - local.set $3 - loop $for-loop|1 - local.get $3 - local.get $5 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $6 - i32.store offset=4 - local.get $6 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $6 - local.get $6 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $6 - i32.const 1 - i32.shl - memory.copy - local.get $2 - local.get $6 - i32.add - local.set $2 - end - local.get $1 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - i32.const 1184 - local.get $1 - i32.const 1 - i32.shl - memory.copy - local.get $1 - local.get $2 - i32.add - local.set $2 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $0 - i32.store offset=4 - local.get $0 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - memory.copy - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $4 - end - ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) loop $while-continue|0 @@ -2176,17 +1960,16 @@ ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i32) + (local $6 i32) + (local $7 i64) + (local $8 i64) (local $9 i32) (local $10 i64) (local $11 i64) - (local $12 i64) local.get $1 local.get $0 i64.sub - local.set $11 + local.set $8 i64.const 1 i32.const 0 local.get $2 @@ -2195,66 +1978,66 @@ i64.extend_i32_s local.tee $0 i64.shl - local.tee $12 + local.tee $10 i64.const 1 i64.sub - local.tee $10 + local.tee $11 local.get $1 i64.and - local.set $6 + local.set $7 local.get $1 local.get $0 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $8 + local.set $2 loop $while-continue|0 - local.get $8 + local.get $2 i32.const 0 i32.gt_s if @@ -2270,151 +2053,150 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $8 + local.get $2 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $2 + local.get $5 i32.const 1000000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 1000 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 1000 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 100 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 100 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 + local.get $5 i32.const 10 i32.div_u - local.set $5 - local.get $2 + local.set $6 + local.get $5 i32.const 10 i32.rem_u - local.set $2 + local.set $5 br $break|1 end - local.get $2 - local.set $5 + local.get $5 + local.set $6 i32.const 0 - local.set $2 + local.set $5 br $break|1 end i32.const 0 - local.set $5 + local.set $6 end local.get $4 - local.get $5 + local.get $6 i32.or if local.get $4 - local.tee $7 - i32.const 1 - i32.add - local.set $4 - local.get $7 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $5 + local.get $6 i32.const 65535 i32.and i32.const 48 i32.add i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $2 + local.set $2 + local.get $3 + local.get $5 i64.extend_i32_u local.get $9 i64.extend_i32_s i64.shl - local.get $6 + local.get $7 i64.add local.tee $0 - local.get $3 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $8 + local.get $2 i32.add global.set $~lib/util/number/_K - local.get $8 + local.get $2 i32.const 2 i32.shl i32.const 4848 @@ -2429,12 +2211,12 @@ i32.shl i32.const 3918 i32.add - local.tee $2 + local.tee $5 i32.load16_u - local.set $5 + local.set $2 loop $while-continue|3 local.get $0 - local.get $11 + local.get $8 i64.lt_u local.get $3 local.get $0 @@ -2443,28 +2225,28 @@ i64.ge_u i32.and if (result i32) - local.get $11 - local.get $0 - i64.sub + local.get $8 local.get $0 local.get $1 i64.add - local.tee $6 - local.get $11 + local.tee $7 + i64.gt_u + local.get $8 + local.get $0 + i64.sub + local.get $7 + local.get $8 i64.sub i64.gt_u - local.get $6 - local.get $11 - i64.lt_u i32.or else i32.const 0 end if - local.get $5 + local.get $2 i32.const 1 i32.sub - local.set $5 + local.set $2 local.get $0 local.get $1 i64.add @@ -2472,8 +2254,8 @@ br $while-continue|3 end end - local.get $2 local.get $5 + local.get $2 i32.store16 local.get $4 return @@ -2481,12 +2263,12 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $3 i64.const 10 i64.mul local.set $3 - local.get $6 + local.get $7 i64.const 10 i64.mul local.tee $0 @@ -2501,11 +2283,11 @@ i64.ne if local.get $4 - local.tee $2 + local.tee $5 i32.const 1 i32.add local.set $4 - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 3920 @@ -2518,87 +2300,87 @@ i32.add i32.store16 end - local.get $8 + local.get $2 i32.const 1 i32.sub - local.set $8 - local.get $3 + local.set $2 local.get $0 - local.get $10 + local.get $11 i64.and - local.tee $6 - i64.le_u + local.tee $7 + local.get $3 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $8 - i32.add - global.set $~lib/util/number/_K - local.get $6 - local.set $0 - local.get $11 - i32.const 0 - local.get $8 - i32.sub - i32.const 2 - i32.shl - i32.const 4848 - i32.add - i64.load32_u - i64.mul - local.set $1 - local.get $4 - i32.const 1 - i32.shl - i32.const 3918 - i32.add - local.tee $2 - i32.load16_u - local.set $5 - loop $while-continue|6 - local.get $0 + end + global.get $~lib/util/number/_K + local.get $2 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $0 + local.get $8 + i32.const 0 + local.get $2 + i32.sub + i32.const 2 + i32.shl + i32.const 4848 + i32.add + i64.load32_u + i64.mul + local.set $1 + local.get $4 + i32.const 1 + i32.shl + i32.const 3918 + i32.add + local.tee $5 + i32.load16_u + local.set $2 + loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u + local.get $3 + local.get $0 + i64.sub + local.get $10 + i64.ge_u + i32.and + if (result i32) local.get $1 - i64.lt_u - local.get $3 local.get $0 i64.sub - local.get $12 - i64.ge_u - i32.and - if (result i32) - local.get $1 - local.get $0 - i64.sub - local.get $0 - local.get $12 - i64.add - local.tee $6 - local.get $1 - i64.sub - i64.gt_u - local.get $1 - local.get $6 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $5 - i32.const 1 - i32.sub - local.set $5 - local.get $0 - local.get $12 - i64.add - local.set $0 - br $while-continue|6 - end + local.get $0 + local.get $10 + i64.add + local.tee $7 + local.get $1 + i64.sub + i64.gt_u + local.get $1 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $2 + i32.const 1 + i32.sub + local.set $2 + local.get $0 + local.get $10 + i64.add + local.set $0 + br $while-continue|6 end - local.get $2 - local.get $5 - i32.store16 - local.get $4 end + local.get $5 + local.get $2 + i32.store16 + local.get $4 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -2934,10 +2716,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i32) + (local $6 i64) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) @@ -2963,19 +2745,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $6 + local.tee $7 i32.const 1 - local.get $6 + local.get $7 select i32.const 1075 i32.sub - local.tee $7 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $6 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -2990,11 +2772,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $6 + local.tee $7 i32.sub - local.set $8 + local.set $9 local.get $3 - local.get $6 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3004,25 +2786,25 @@ i64.eq i32.const 1 i32.add - local.tee $6 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub + local.get $8 local.get $7 - local.get $6 i32.sub - local.get $8 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $8 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $6 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3031,8 +2813,8 @@ f64.add local.tee $0 i32.trunc_sat_f64_s - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.convert_i32_s local.get $0 f64.ne @@ -3041,18 +2823,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 3 i32.shl - local.tee $8 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $8 + local.get $9 i32.const 3976 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $7 + local.get $8 i32.const 1 i32.shl i32.const 4672 @@ -3067,78 +2849,78 @@ i64.const 4294967295 i64.and local.set $4 + global.get $~lib/util/number/_frc_pow + local.tee $10 + i64.const 4294967295 + i64.and + local.tee $11 local.get $1 i64.const 32 i64.shr_u local.tee $1 - global.get $~lib/util/number/_frc_pow - local.tee $9 - i64.const 4294967295 - i64.and - local.tee $10 i64.mul local.get $4 - local.get $10 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $11 + local.set $5 global.get $~lib/util/number/_frc_plus local.tee $3 i64.const 4294967295 i64.and local.set $12 - local.get $10 local.get $3 i64.const 32 i64.shr_u local.tee $3 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $6 global.get $~lib/util/number/_frc_minus local.tee $13 i64.const 4294967295 i64.and local.set $14 - local.get $10 local.get $13 i64.const 32 i64.shr_u local.tee $13 + local.get $11 i64.mul - local.get $10 + local.get $11 local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $9 + local.get $1 + local.get $10 i64.const 32 i64.shr_u - local.tee $9 - local.get $1 + local.tee $1 i64.mul - local.get $11 + local.get $5 i64.const 32 i64.shr_u i64.add + local.get $1 local.get $4 - local.get $9 i64.mul - local.get $11 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -3147,17 +2929,17 @@ i64.const 32 i64.shr_u i64.add + local.get $1 local.get $3 - local.get $9 i64.mul - local.get $5 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $12 i64.mul - local.get $5 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -3168,24 +2950,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 - local.get $6 + local.tee $3 + local.get $7 global.get $~lib/util/number/_exp_pow i32.add i32.const -64 i32.sub + local.get $3 local.get $1 - local.get $9 local.get $13 i64.mul - local.get $10 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $1 local.get $14 i64.mul - local.get $10 + local.get $11 i64.const 4294967295 i64.and i64.add @@ -3409,7 +3191,11 @@ i32.const 1184 i32.store offset=20 i32.const 1744 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 1740 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 @@ -3531,7 +3317,11 @@ i32.const 1184 i32.store offset=12 i32.const 3680 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 3676 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 @@ -3653,7 +3443,11 @@ i32.const 1184 i32.store offset=12 i32.const 4976 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 4972 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 @@ -3787,7 +3581,11 @@ i32.const 1184 i32.store offset=20 i32.const 5440 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 5436 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 @@ -4293,7 +4091,11 @@ i32.const 1184 i32.store offset=16 i32.const 5616 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 5612 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -4374,6 +4176,214 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $~lib/util/string/joinStringArray (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 5732 + i32.lt_s + if + i32.const 22144 + i32.const 22192 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $4 + i64.const 0 + i64.store + local.get $4 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 1 + i32.sub + local.tee $4 + i32.const 0 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1184 + return + end + local.get $4 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.load + local.tee $0 + i32.store + local.get $1 + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.const 1184 + local.get $0 + select + return + end + loop $for-loop|0 + local.get $1 + local.get $3 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + i32.store offset=4 + local.get $5 + if + local.get $2 + local.get $5 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.add + local.set $2 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|0 + end + end + i32.const 0 + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.const 1180 + i32.load + i32.const 1 + i32.shr_u + local.tee $2 + local.get $4 + i32.mul + i32.add + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=8 + i32.const 0 + local.set $3 + loop $for-loop|1 + local.get $3 + local.get $4 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $6 + i32.store offset=4 + local.get $6 + if + local.get $5 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $6 + local.get $6 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $6 + i32.const 1 + i32.shl + memory.copy + local.get $1 + local.get $6 + i32.add + local.set $1 + end + local.get $2 + if + local.get $5 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 1184 + local.get $2 + i32.const 1 + i32.shl + memory.copy + local.get $1 + local.get $2 + i32.add + local.set $1 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|1 + end + end + global.get $~lib/memory/__stack_pointer + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.store offset=4 + local.get $0 + if + local.get $5 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.const 1 + i32.shl + memory.copy + end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $5 + ) (func $templateliteral/Ref#constructor (param $0 i32) (result i32) (local $1 i32) global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/throw.release.wat b/tests/compiler/throw.release.wat index 49cdf4f173..1cc6182270 100644 --- a/tests/compiler/throw.release.wat +++ b/tests/compiler/throw.release.wat @@ -1219,19 +1219,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/typeof.release.wat b/tests/compiler/typeof.release.wat index 8f7157b49a..dd158bb874 100644 --- a/tests/compiler/typeof.release.wat +++ b/tests/compiler/typeof.release.wat @@ -2065,19 +2065,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 diff --git a/tests/compiler/wasi/abort.release.wat b/tests/compiler/wasi/abort.release.wat index 057961b964..92a18cbb31 100644 --- a/tests/compiler/wasi/abort.release.wat +++ b/tests/compiler/wasi/abort.release.wat @@ -22,12 +22,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $0of2 + block $2of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $0of2 $0of2 $0of2 $outOfRange + br_table $2of2 $2of2 $2of2 $outOfRange end unreachable end diff --git a/tests/compiler/wasi/trace.release.wat b/tests/compiler/wasi/trace.release.wat index f947dd1f37..f58ef99384 100644 --- a/tests/compiler/wasi/trace.release.wat +++ b/tests/compiler/wasi/trace.release.wat @@ -43,12 +43,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - block $0of2 + block $2of2 block $outOfRange global.get $~argumentsLength i32.const 3 i32.sub - br_table $0of2 $0of2 $0of2 $outOfRange + br_table $2of2 $2of2 $2of2 $outOfRange end unreachable end @@ -1165,26 +1165,25 @@ (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 i64) (local $11 i64) (local $12 i64) - (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $12 + local.set $11 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $10 + local.tee $9 i64.extend_i32_s local.tee $1 i64.shl - local.tee $13 + local.tee $12 i64.const 1 i64.sub - local.tee $11 + local.tee $10 local.get $2 i64.and local.set $7 @@ -1238,9 +1237,9 @@ i32.add end end - local.set $9 + local.set $8 loop $while-continue|0 - local.get $9 + local.get $8 i32.const 0 i32.gt_s if @@ -1256,7 +1255,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $9 + local.get $8 i32.const 1 i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 @@ -1364,13 +1363,8 @@ local.get $6 i32.or if - local.get $5 - local.tee $8 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $8 + local.get $5 i32.const 1 i32.shl i32.add @@ -1380,33 +1374,37 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 + local.get $4 local.get $3 i64.extend_i32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.get $7 i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if global.get $~lib/util/number/_K - local.get $9 + local.get $8 i32.add global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 2 i32.shl i32.const 2200 i32.add i64.load32_u - local.get $10 + local.get $9 i64.extend_i32_s i64.shl local.set $2 @@ -1419,10 +1417,10 @@ i32.add local.tee $0 i32.load16_u - local.set $9 + local.set $8 loop $while-continue|3 local.get $1 - local.get $12 + local.get $11 i64.lt_u local.get $4 local.get $1 @@ -1431,28 +1429,28 @@ i64.ge_u i32.and if (result i32) - local.get $12 - local.get $1 - i64.sub + local.get $11 local.get $1 local.get $2 i64.add local.tee $7 - local.get $12 - i64.sub i64.gt_u + local.get $11 + local.get $1 + i64.sub local.get $7 - local.get $12 - i64.lt_u + local.get $11 + i64.sub + i64.gt_u i32.or else i32.const 0 end if - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 local.get $1 local.get $2 i64.add @@ -1461,7 +1459,7 @@ end end local.get $0 - local.get $9 + local.get $8 i32.store16 local.get $5 return @@ -1469,7 +1467,7 @@ br $while-continue|0 end end - loop $while-continue|4 (result i32) + loop $while-continue|4 local.get $4 i64.const 10 i64.mul @@ -1478,7 +1476,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $10 + local.get $9 i64.extend_i32_s i64.shr_u local.tee $2 @@ -1488,13 +1486,8 @@ i64.const 0 i64.ne if - local.get $5 - local.tee $3 - i32.const 1 - i32.add - local.set $5 local.get $0 - local.get $3 + local.get $5 i32.const 1 i32.shl i32.add @@ -1505,90 +1498,94 @@ i32.const 48 i32.add i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 end - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 - local.get $4 + local.set $8 local.get $1 - local.get $11 + local.get $10 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - global.get $~lib/util/number/_K - local.get $9 - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 + end + global.get $~lib/util/number/_K + local.get $8 + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + local.get $11 + i32.const 0 + local.get $8 + i32.sub + i32.const 2 + i32.shl + i32.const 2200 + i32.add + i64.load32_u + i64.mul + local.set $2 + local.get $0 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.tee $0 + i32.load16_u + local.set $8 + loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u + local.get $4 + local.get $1 + i64.sub local.get $12 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 2200 - i32.add - i64.load32_u - i64.mul - local.set $2 - local.get $0 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.tee $0 - i32.load16_u - local.set $9 - loop $while-continue|6 + i64.ge_u + i32.and + if (result i32) + local.get $2 local.get $1 + local.get $12 + i64.add + local.tee $7 + i64.gt_u local.get $2 - i64.lt_u - local.get $4 local.get $1 i64.sub - local.get $13 - i64.ge_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub - local.get $1 - local.get $13 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u - local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $9 - i32.const 1 - i32.sub - local.set $9 - local.get $1 - local.get $13 - i64.add - local.set $1 - br $while-continue|6 - end + local.get $7 + local.get $2 + i64.sub + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $8 + i32.const 1 + i32.sub + local.set $8 + local.get $1 + local.get $12 + i64.add + local.set $1 + br $while-continue|6 end - local.get $0 - local.get $9 - i32.store16 - local.get $5 end + local.get $0 + local.get $8 + i32.store16 + local.get $5 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) diff --git a/tests/compiler/while.release.wat b/tests/compiler/while.release.wat index 7d3570887b..59141029e8 100644 --- a/tests/compiler/while.release.wat +++ b/tests/compiler/while.release.wat @@ -1602,13 +1602,13 @@ end global.get $~lib/rt/itcms/total local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $0 i32.add global.set $~lib/rt/itcms/threshold end @@ -1917,19 +1917,17 @@ i32.const 32 i32.and end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end local.set $3 local.get $2 i32.load offset=8 local.set $0 local.get $1 - local.get $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.const 2 local.get $3 + select + local.get $2 i32.or i32.store offset=4 local.get $1 From 5ea7fb9c3c3a99fdb21b5a00ef4d3b154a1b86ec Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 07:18:13 +0300 Subject: [PATCH 20/38] less work --- src/module.ts | 1 - tests/compiler/std/static-array.release.wat | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/module.ts b/src/module.ts index 0c6430e9ef..7d559a1a65 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2365,7 +2365,6 @@ export class Module { passes.push("licm"); passes.push("merge-locals"); passes.push("reorder-locals"); - passes.push("dae-optimizing"); } passes.push("optimize-instructions"); if (optimizeLevel >= 3 || shrinkLevel >= 1) { diff --git a/tests/compiler/std/static-array.release.wat b/tests/compiler/std/static-array.release.wat index b8e5fd39ad..93b293ebc2 100644 --- a/tests/compiler/std/static-array.release.wat +++ b/tests/compiler/std/static-array.release.wat @@ -1367,13 +1367,13 @@ end global.get $~lib/rt/itcms/total local.tee $1 - local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $1 i32.add global.set $~lib/rt/itcms/threshold end From 17499ac2004c0c9d512d0b01943deac2b5f58c8e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 14:10:21 +0300 Subject: [PATCH 21/38] refactor toBinary --- src/glue/binaryen.d.ts | 4 +++- src/glue/binaryen.js | 1 + src/module.ts | 34 +++++++++++++++++++++++----------- 3 files changed, 27 insertions(+), 12 deletions(-) diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index f91e469a00..a84a0ac1da 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -33,6 +33,7 @@ export type ElementSegmentRef = Ref; export type RelooperRef = Ref; export type RelooperBlockRef = Ref; export type ExpressionRunnerRef = Ref; +export type BinaryenModuleAllocateAndWriteResultRef = Ref; export declare function _BinaryenTypeCreate(types: ArrayRef, numTypes: u32): TypeRef; export declare function _BinaryenTypeArity(type: TypeRef): u32; @@ -605,7 +606,8 @@ export declare function _BinaryenModuleValidate(module: ModuleRef): i32; export declare function _BinaryenModuleOptimize(module: ModuleRef): void; export declare function _BinaryenModuleRunPasses(module: ModuleRef, passes: ArrayRef, numPasses: Index): void; export declare function _BinaryenModuleAutoDrop(module: ModuleRef): void; -export declare function _BinaryenModuleAllocateAndWrite(out: ArrayRef, module: ModuleRef, sourceMapUrl: StringRef): void; +export declare function _BinaryenSizeofAllocateAndWriteResult(): i32; +export declare function _BinaryenModuleAllocateAndWrite(resultOut: BinaryenModuleAllocateAndWriteResultRef, module: ModuleRef, sourceMapUrl: StringRef); export declare function _BinaryenModuleAllocateAndWriteText(module: ModuleRef): StringRef; export declare function _BinaryenModuleAllocateAndWriteStackIR(module: ModuleRef, optimize: bool): StringRef; export declare function _BinaryenModuleRead(input: ArrayRef, inputSize: usize): ModuleRef; diff --git a/src/glue/binaryen.js b/src/glue/binaryen.js index 5fa0fb290b..e36b91dc4b 100644 --- a/src/glue/binaryen.js +++ b/src/glue/binaryen.js @@ -572,6 +572,7 @@ export const { _BinaryenModuleOptimize, _BinaryenModuleRunPasses, _BinaryenModuleAutoDrop, + _BinaryenSizeofAllocateAndWriteResult, _BinaryenModuleAllocateAndWrite, _BinaryenModuleAllocateAndWriteText, _BinaryenModuleAllocateAndWriteStackIR, diff --git a/src/module.ts b/src/module.ts index 7d559a1a65..2b560e676c 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2511,19 +2511,31 @@ export class Module { } toBinary(sourceMapUrl: string | null = null): BinaryModule { - var out = this.lit; // safe to reuse as long as.. - assert(binaryen._BinaryenSizeofLiteral() >= 12); - var cStr = allocString(sourceMapUrl); - var binaryPtr: usize = 0; - var sourceMapPtr: usize = 0; - binaryen._BinaryenModuleAllocateAndWrite(out, this.ref, cStr); - binaryPtr = assert(binaryen.__i32_load(out)); + assert( + binaryen._BinaryenSizeofLiteral() >= + binaryen._BinaryenSizeofAllocateAndWriteResult() + ); + + // now safely reuse lit buffer for BinaryenModuleAllocateAndWriteResult + var out = this.lit; + var str = allocString(sourceMapUrl); + + binaryen._BinaryenModuleAllocateAndWrite(out, this.ref, str); + + // read BinaryenModuleAllocateAndWriteResult struct + var binaryPtr = binaryen.__i32_load(out + 0) as usize; // non-nullabe var binaryLen = binaryen.__i32_load(out + 4); - sourceMapPtr = binaryen.__i32_load(out + 8); // may be NULL - var binary = new BinaryModule(readBuffer(binaryPtr, binaryLen), readString(sourceMapPtr)); - if (cStr) binaryen._free(cStr); + var srcMapPtr = binaryen.__i32_load(out + 8) as usize; // nullable + + var binary = new BinaryModule( + readBuffer(assert(binaryPtr), binaryLen), + readString(srcMapPtr) + ); + + if (str) binaryen._free(str); + if (srcMapPtr) binaryen._free(srcMapPtr); binaryen._free(binaryPtr); - if (sourceMapPtr) binaryen._free(sourceMapPtr); + return binary; } From 47449d1499b98e0f37a29566ead363dc277b0c9c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 14:13:42 +0300 Subject: [PATCH 22/38] fix --- src/glue/binaryen.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index a84a0ac1da..ff64079655 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -607,7 +607,7 @@ export declare function _BinaryenModuleOptimize(module: ModuleRef): void; export declare function _BinaryenModuleRunPasses(module: ModuleRef, passes: ArrayRef, numPasses: Index): void; export declare function _BinaryenModuleAutoDrop(module: ModuleRef): void; export declare function _BinaryenSizeofAllocateAndWriteResult(): i32; -export declare function _BinaryenModuleAllocateAndWrite(resultOut: BinaryenModuleAllocateAndWriteResultRef, module: ModuleRef, sourceMapUrl: StringRef); +export declare function _BinaryenModuleAllocateAndWrite(resultOut: BinaryenModuleAllocateAndWriteResultRef, module: ModuleRef, sourceMapUrl: StringRef): void; export declare function _BinaryenModuleAllocateAndWriteText(module: ModuleRef): StringRef; export declare function _BinaryenModuleAllocateAndWriteStackIR(module: ModuleRef, optimize: bool): StringRef; export declare function _BinaryenModuleRead(input: ArrayRef, inputSize: usize): ModuleRef; From 66b745a862e6b257d6638e48cc5ba86540a481d1 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Jul 2022 15:28:38 +0300 Subject: [PATCH 23/38] better names --- src/module.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/module.ts b/src/module.ts index 2b560e676c..e299dbaa31 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2517,22 +2517,22 @@ export class Module { ); // now safely reuse lit buffer for BinaryenModuleAllocateAndWriteResult - var out = this.lit; - var str = allocString(sourceMapUrl); + var resPtr = this.lit; + var urlPtr = allocString(sourceMapUrl); - binaryen._BinaryenModuleAllocateAndWrite(out, this.ref, str); + binaryen._BinaryenModuleAllocateAndWrite(resPtr, this.ref, urlPtr); // read BinaryenModuleAllocateAndWriteResult struct - var binaryPtr = binaryen.__i32_load(out + 0) as usize; // non-nullabe - var binaryLen = binaryen.__i32_load(out + 4); - var srcMapPtr = binaryen.__i32_load(out + 8) as usize; // nullable + var binaryPtr = binaryen.__i32_load(resPtr + 0) as usize; // non-nullabe + var binaryLen = binaryen.__i32_load(resPtr + 4); + var srcMapPtr = binaryen.__i32_load(resPtr + 8) as usize; // nullable var binary = new BinaryModule( readBuffer(assert(binaryPtr), binaryLen), readString(srcMapPtr) ); - if (str) binaryen._free(str); + if (urlPtr) binaryen._free(urlPtr); if (srcMapPtr) binaryen._free(srcMapPtr); binaryen._free(binaryPtr); From ffe50ac869abce5f1f31445736f56a9fe885196c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sun, 31 Jul 2022 07:27:06 +0300 Subject: [PATCH 24/38] add merge-similar-functions pass for shrinkLevel >= 2 --- src/module.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/module.ts b/src/module.ts index e299dbaa31..1d0807756e 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2495,6 +2495,9 @@ export class Module { } // clean up passes.push("duplicate-function-elimination"); + if (shrinkLevel >= 2) { + passes.push("merge-similar-functions"); + } passes.push("memory-packing"); passes.push("remove-unused-module-elements"); From 6ddc7b69479d84a42e91f0e07810bd0e2104c54e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sun, 31 Jul 2022 08:14:28 +0300 Subject: [PATCH 25/38] clean unused arg in isConstExpression --- src/module.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/module.ts b/src/module.ts index 1d0807756e..eb0bf254d8 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2629,7 +2629,7 @@ export class Module { return precomp; } - isConstExpression(expr: ExpressionRef, features: FeatureFlags = 0): bool { + isConstExpression(expr: ExpressionRef): bool { switch (getExpressionId(expr)) { case ExpressionId.Const: case ExpressionId.RefNull: From 6480d04079cc4234295ab063e78b4719975bb810 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 2 Aug 2022 08:48:46 +0300 Subject: [PATCH 26/38] update binaryen again --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 47232bbfdf..56e2740fd1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220730", + "binaryen": "109.0.0-nightly.20220802", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220730", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220730.tgz", - "integrity": "sha512-pytRpzYsosF+3lwyg/xeZapnVO1Y/lKmILsgYAXV42/KLa/GJvlMjBCwBzQGlGg+zM4CLfb4llZpLXGKnJzceQ==", + "version": "109.0.0-nightly.20220802", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220802.tgz", + "integrity": "sha512-cRpji6EYTHsXC87HJRIz0Qj34BkVRiKdZFuSRAOHhssho/88pOWM8McB/kG3WfY35RouU/cVf/uLJQtjouqVtQ==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220730", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220730.tgz", - "integrity": "sha512-pytRpzYsosF+3lwyg/xeZapnVO1Y/lKmILsgYAXV42/KLa/GJvlMjBCwBzQGlGg+zM4CLfb4llZpLXGKnJzceQ==" + "version": "109.0.0-nightly.20220802", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220802.tgz", + "integrity": "sha512-cRpji6EYTHsXC87HJRIz0Qj34BkVRiKdZFuSRAOHhssho/88pOWM8McB/kG3WfY35RouU/cVf/uLJQtjouqVtQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 83cb0004a6..0bf09f8eb6 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220730", + "binaryen": "109.0.0-nightly.20220802", "long": "^5.2.0" }, "devDependencies": { From 9f96f792618c2820ff3e2a0c5b10f1062982982e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 3 Aug 2022 06:05:43 +0300 Subject: [PATCH 27/38] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 56e2740fd1..5068b8bc30 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220802", + "binaryen": "109.0.0-nightly.20220803", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220802", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220802.tgz", - "integrity": "sha512-cRpji6EYTHsXC87HJRIz0Qj34BkVRiKdZFuSRAOHhssho/88pOWM8McB/kG3WfY35RouU/cVf/uLJQtjouqVtQ==", + "version": "109.0.0-nightly.20220803", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220803.tgz", + "integrity": "sha512-pnRGqscs3Sh+DQWt0le1AIcpfs2FpTpUt36KLJFbhChQ7WuFE8L2DMNxcBwsFWzzY5zQHzRpNxr1YRNYtOmswg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220802", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220802.tgz", - "integrity": "sha512-cRpji6EYTHsXC87HJRIz0Qj34BkVRiKdZFuSRAOHhssho/88pOWM8McB/kG3WfY35RouU/cVf/uLJQtjouqVtQ==" + "version": "109.0.0-nightly.20220803", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220803.tgz", + "integrity": "sha512-pnRGqscs3Sh+DQWt0le1AIcpfs2FpTpUt36KLJFbhChQ7WuFE8L2DMNxcBwsFWzzY5zQHzRpNxr1YRNYtOmswg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 0bf09f8eb6..52148cb08c 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220802", + "binaryen": "109.0.0-nightly.20220803", "long": "^5.2.0" }, "devDependencies": { From e06f862f2f0a6911a45557ccb4d82de650709221 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 4 Aug 2022 06:05:44 +0300 Subject: [PATCH 28/38] update binaryen --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5068b8bc30..c31b3f20ca 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220803", + "binaryen": "109.0.0-nightly.20220804", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220803", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220803.tgz", - "integrity": "sha512-pnRGqscs3Sh+DQWt0le1AIcpfs2FpTpUt36KLJFbhChQ7WuFE8L2DMNxcBwsFWzzY5zQHzRpNxr1YRNYtOmswg==", + "version": "109.0.0-nightly.20220804", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220804.tgz", + "integrity": "sha512-hWKDbcLgWyEAf4Hf/ptg6DIedsKHCdMG0GZ91YPUcfKKavK3skxqEjXQQpa/uOID1eFRIyf/vQjUpGxYW2pPLw==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220803", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220803.tgz", - "integrity": "sha512-pnRGqscs3Sh+DQWt0le1AIcpfs2FpTpUt36KLJFbhChQ7WuFE8L2DMNxcBwsFWzzY5zQHzRpNxr1YRNYtOmswg==" + "version": "109.0.0-nightly.20220804", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220804.tgz", + "integrity": "sha512-hWKDbcLgWyEAf4Hf/ptg6DIedsKHCdMG0GZ91YPUcfKKavK3skxqEjXQQpa/uOID1eFRIyf/vQjUpGxYW2pPLw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 52148cb08c..8c9409ac4f 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220803", + "binaryen": "109.0.0-nightly.20220804", "long": "^5.2.0" }, "devDependencies": { From e089cccf1963c7144d615112babc02cf048600db Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 5 Aug 2022 06:27:27 +0300 Subject: [PATCH 29/38] update binaryen --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index c31b3f20ca..b1fd69ef2d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220804", + "binaryen": "109.0.0-nightly.20220805", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220804", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220804.tgz", - "integrity": "sha512-hWKDbcLgWyEAf4Hf/ptg6DIedsKHCdMG0GZ91YPUcfKKavK3skxqEjXQQpa/uOID1eFRIyf/vQjUpGxYW2pPLw==", + "version": "109.0.0-nightly.20220805", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220805.tgz", + "integrity": "sha512-8AOA9jfQ1T/a+M6INTiPkmJKFueoYU7fsrFjAt6ea/n+/exbd07C5mMHfHzqQcx4bAiM1fbmIocQ9tBFQq42gg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220804", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220804.tgz", - "integrity": "sha512-hWKDbcLgWyEAf4Hf/ptg6DIedsKHCdMG0GZ91YPUcfKKavK3skxqEjXQQpa/uOID1eFRIyf/vQjUpGxYW2pPLw==" + "version": "109.0.0-nightly.20220805", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220805.tgz", + "integrity": "sha512-8AOA9jfQ1T/a+M6INTiPkmJKFueoYU7fsrFjAt6ea/n+/exbd07C5mMHfHzqQcx4bAiM1fbmIocQ9tBFQq42gg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 8c9409ac4f..5640efe14f 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220804", + "binaryen": "109.0.0-nightly.20220805", "long": "^5.2.0" }, "devDependencies": { From 8acb2827783cf2e026951cc67ad9b1c1732d6f11 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 5 Aug 2022 09:18:03 +0300 Subject: [PATCH 30/38] add heap types for binaryen's glue --- src/glue/binaryen.d.ts | 18 +++++++++++++++++- src/glue/binaryen.js | 13 +++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index ff64079655..883fdeabfc 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -9,6 +9,8 @@ */ module "binaryen"; +type Ref = usize; + export type Index = u32; export type ExpressionId = i32; export type FeatureFlags = u32; @@ -16,10 +18,11 @@ export type Op = i32; export type ExternalKind = u32; export type SideEffects = u32; export type ExpressionRunnerFlags = u32; -type Ref = usize; + export type StringRef = Ref; export type ArrayRef = Ref; export type TypeRef = Ref; +export type HeapTypeRef = Ref; export type ModuleRef = Ref; export type LiteralRef = Ref; export type ExpressionRef = Ref; @@ -38,6 +41,9 @@ export type BinaryenModuleAllocateAndWriteResultRef = Ref; export declare function _BinaryenTypeCreate(types: ArrayRef, numTypes: u32): TypeRef; export declare function _BinaryenTypeArity(type: TypeRef): u32; export declare function _BinaryenTypeExpand(type: TypeRef, typesOut: ArrayRef): void; +export declare function _BinaryenTypeGetHeapType(type: TypeRef): HeapTypeRef; +export declare function _BinaryenTypeFromHeapType(heapType: HeapTypeRef, nullable: bool): TypeRef; +export declare function _BinaryenTypeIsNullable(type: TypeRef): bool; export declare function _BinaryenTypeFuncref(): TypeRef; export declare function _BinaryenTypeExternref(): TypeRef; @@ -50,6 +56,16 @@ export declare function _BinaryenTypeStringviewWTF8(): TypeRef; export declare function _BinaryenTypeStringviewWTF16(): TypeRef; export declare function _BinaryenTypeStringviewIter(): TypeRef; +export declare function _BinaryenHeapTypeFunc(): HeapTypeRef; +export declare function _BinaryenHeapTypeAny(): HeapTypeRef; +export declare function _BinaryenHeapTypeEq(): HeapTypeRef; +export declare function _BinaryenHeapTypeI31(): HeapTypeRef; +export declare function _BinaryenHeapTypeData(): HeapTypeRef; +export declare function _BinaryenHeapTypeString(): HeapTypeRef; +export declare function _BinaryenHeapTypeStringviewWTF8(): HeapTypeRef; +export declare function _BinaryenHeapTypeStringviewWTF16(): HeapTypeRef; +export declare function _BinaryenHeapTypeStringviewIter(): HeapTypeRef; + export declare function _BinaryenModuleCreate(): ModuleRef; export declare function _BinaryenModuleDispose(module: ModuleRef): void; diff --git a/src/glue/binaryen.js b/src/glue/binaryen.js index e36b91dc4b..f5ea338ff5 100644 --- a/src/glue/binaryen.js +++ b/src/glue/binaryen.js @@ -9,6 +9,9 @@ export const { _BinaryenTypeCreate, _BinaryenTypeArity, _BinaryenTypeExpand, + _BinaryenTypeGetHeapType, + _BinaryenTypeFromHeapType, + _BinaryenTypeIsNullable, _BinaryenTypeFuncref, _BinaryenTypeExternref, @@ -21,6 +24,16 @@ export const { _BinaryenTypeStringviewWTF16, _BinaryenTypeStringviewIter, + _BinaryenHeapTypeFunc, + _BinaryenHeapTypeAny, + _BinaryenHeapTypeEq, + _BinaryenHeapTypeI31, + _BinaryenHeapTypeData, + _BinaryenHeapTypeString, + _BinaryenHeapTypeStringviewWTF8, + _BinaryenHeapTypeStringviewWTF16, + _BinaryenHeapTypeStringviewIter, + _BinaryenModuleCreate, _BinaryenModuleDispose, From c6993cf5daa68bc3599a2ca399d0cd6c88d4eb48 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 5 Aug 2022 09:44:09 +0300 Subject: [PATCH 31/38] add HeapTypeRef to module. Remove Rtt --- src/module.ts | 38 ++++++++++++++++++++++++-------------- src/passes/pass.ts | 30 ------------------------------ 2 files changed, 24 insertions(+), 44 deletions(-) diff --git a/src/module.ts b/src/module.ts index eb0bf254d8..82789f5890 100644 --- a/src/module.ts +++ b/src/module.ts @@ -71,6 +71,19 @@ export namespace TypeRef { export const Auto: TypeRef = -1 /* _BinaryenTypeAuto */; } +export type HeapTypeRef = binaryen.HeapTypeRef; +export namespace HeapTypeRef { + export const Func = binaryen._BinaryenHeapTypeFunc(); + export const Any = binaryen._BinaryenHeapTypeAny(); + export const Eq = binaryen._BinaryenHeapTypeEq(); + export const I31 = binaryen._BinaryenHeapTypeI31(); + export const Data = binaryen._BinaryenHeapTypeData(); + export const String = binaryen._BinaryenHeapTypeString(); + export const StringviewWTF8 = binaryen._BinaryenHeapTypeStringviewWTF8(); + export const StringviewWTF16 = binaryen._BinaryenHeapTypeStringviewWTF16(); + export const StringviewIter = binaryen._BinaryenHeapTypeStringviewIter(); +} + /** Binaryen feature constants. */ export enum FeatureFlags { MVP = 0 /* _BinaryenFeatureMVP */, @@ -155,18 +168,16 @@ export enum ExpressionId { RefTest = 57 /* _BinaryenRefTestId */, RefCast = 58 /* _BinaryenRefCastId */, BrOn = 59 /* _BinaryenBrOnId */, - RttCanon = 60 /* _BinaryenRttCanonId */, - RttSub = 61 /* _BinaryenRttSubId */, - StructNew = 62 /* _BinaryenStructNewId */, - StructGet = 63 /* _BinaryenStructGetId */, - StructSet = 64 /* _BinaryenStructSetId */, - ArrayNew = 65 /* _BinaryenArrayNewId */, - ArrayInit = 66 /* _BinaryenArrayInitId */, - ArrayGet = 67 /* _BinaryenArrayGetId */, - ArraySet = 68 /* _BinaryenArraySetId */, - ArrayLen = 69 /* _BinaryenArrayLenId */, - ArrayCopy = 70 /* _BinaryenArrayCopyId */, - RefAs = 71 /* _BinaryenRefAsId */ + StructNew = 60 /* _BinaryenStructNewId */, + StructGet = 61 /* _BinaryenStructGetId */, + StructSet = 62 /* _BinaryenStructSetId */, + ArrayNew = 63 /* _BinaryenArrayNewId */, + ArrayInit = 64 /* _BinaryenArrayInitId */, + ArrayGet = 65 /* _BinaryenArrayGetId */, + ArraySet = 66 /* _BinaryenArraySetId */, + ArrayLen = 67 /* _BinaryenArrayLenId */, + ArrayCopy = 68 /* _BinaryenArrayCopyId */, + RefAs = 69 /* _BinaryenRefAsId */ } /** Binaryen external kind constants. */ @@ -2602,8 +2613,7 @@ export class Module { case ExpressionId.Nop: case ExpressionId.Unreachable: case ExpressionId.DataDrop: - case ExpressionId.RefNull: - case ExpressionId.RttCanon: return this.copyExpression(expr); + case ExpressionId.RefNull: return this.copyExpression(expr); } return 0; } diff --git a/src/passes/pass.ts b/src/passes/pass.ts index 6af6307be3..baf6bc5d26 100644 --- a/src/passes/pass.ts +++ b/src/passes/pass.ts @@ -431,14 +431,6 @@ export abstract class Visitor { // unimp } - visitRttCanon(expr: ExpressionRef): void { - // unimp - } - - visitRttSub(expr: ExpressionRef): void { - // unimp - } - visitStructNew(expr: ExpressionRef): void { // unimp } @@ -925,20 +917,6 @@ export abstract class Visitor { this.visitBrOn(expr); break; } - case ExpressionId.RttCanon: { - this.stack.push(expr); - assert(false); // TODO - assert(this.stack.pop() == expr); - this.visitRttCanon(expr); - break; - } - case ExpressionId.RttSub: { - this.stack.push(expr); - assert(false); // TODO - assert(this.stack.pop() == expr); - this.visitRttSub(expr); - break; - } case ExpressionId.StructNew: { this.stack.push(expr); assert(false); // TODO @@ -1622,14 +1600,6 @@ export function replaceChild( assert(false); // TODO break; } - case ExpressionId.RttCanon: { - assert(false); // TODO - break; - } - case ExpressionId.RttSub: { - assert(false); // TODO - break; - } case ExpressionId.StructNew: { assert(false); // TODO break; From 4987a486fa57a5338c85ca73377374c9b333da57 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 5 Aug 2022 10:25:01 +0300 Subject: [PATCH 32/38] add isNullableType and utilise it for ref_is_null and ref_as_nonnull --- src/module.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/module.ts b/src/module.ts index 82789f5890..db25e48dca 100644 --- a/src/module.ts +++ b/src/module.ts @@ -1793,7 +1793,11 @@ export class Module { ref_is_null( expr: ExpressionRef ): ExpressionRef { - return binaryen._BinaryenRefIs(this.ref, RefIsOp.RefIsNull, expr); + if (isNullableType(getExpressionType(expr))) { + return binaryen._BinaryenRefIs(this.ref, RefIsOp.RefIsNull, expr); + } else { + return this.i32(0); // false literal + } } ref_as( @@ -1806,7 +1810,11 @@ export class Module { ref_as_nonnull( expr: ExpressionRef ): ExpressionRef { - return binaryen._BinaryenRefAs(this.ref, RefAsOp.RefAsNonNull, expr); + if (isNullableType(getExpressionType(expr))) { + return binaryen._BinaryenRefAs(this.ref, RefAsOp.RefAsNonNull, expr); + } else { + return expr; + } } ref_func( @@ -2712,6 +2720,10 @@ export function expandType(type: TypeRef): TypeRef[] { return types; } +export function isNullableType(type: TypeRef): bool { + return binaryen._BinaryenTypeIsNullable(type); +} + // expressions export function getExpressionId(expr: ExpressionRef): ExpressionId { From 857160011fd9384427d1943807634346ceed6ba5 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 6 Aug 2022 14:36:39 +0300 Subject: [PATCH 33/38] upd date fixture after conflicts --- tests/compiler/std/date.release.wat | 842 ++++++---------------------- 1 file changed, 187 insertions(+), 655 deletions(-) diff --git a/tests/compiler/std/date.release.wat b/tests/compiler/std/date.release.wat index f438cf6b40..5878f502e2 100644 --- a/tests/compiler/std/date.release.wat +++ b/tests/compiler/std/date.release.wat @@ -2143,21 +2143,6 @@ i32.ne if local.get $0 -<<<<<<< HEAD - local.get $0 - i64.load offset=16 - i64.const 86400000 - i64.rem_s - local.tee $3 - i64.const 86400000 - i64.const 0 - local.get $3 - i64.const 0 - i64.lt_s - select - i64.add -======= ->>>>>>> main local.get $0 i32.load local.get $1 @@ -2426,222 +2411,6 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end ) - (func $~lib/staticarray/StaticArray<~lib/string/String>#join (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $__inlined_func$~lib/util/string/joinStringArray (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 2 - i32.shr_u - local.set $4 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7884 - i32.lt_s - if - i32.const 24288 - i32.const 24336 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $5 - i64.const 0 - i64.store - local.get $5 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const 1 - i32.sub - local.tee $5 - i32.const 0 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 3456 - br $__inlined_func$~lib/util/string/joinStringArray - end - local.get $5 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load - local.tee $0 - i32.store - local.get $1 - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.const 3456 - local.get $0 - select - br $__inlined_func$~lib/util/string/joinStringArray - end - loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $6 - i32.store offset=4 - local.get $6 - if - local.get $1 - local.get $6 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.add - local.set $1 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|0 - end - end - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.const 3452 - i32.load - i32.const 1 - i32.shr_u - local.tee $1 - local.get $5 - i32.mul - i32.add - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - i32.const 0 - local.set $3 - loop $for-loop|1 - local.get $3 - local.get $5 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $6 - i32.store offset=4 - local.get $6 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $6 - local.get $6 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $6 - i32.const 1 - i32.shl - memory.copy - local.get $2 - local.get $6 - i32.add - local.set $2 - end - local.get $1 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - i32.const 3456 - local.get $1 - i32.const 1 - i32.shl - memory.copy - local.get $1 - local.get $2 - i32.add - local.set $2 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $0 - i32.store offset=4 - local.get $0 - if - local.get $4 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - memory.copy - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $4 - end - ) (func $~lib/util/string/compareImpl (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) local.get $0 @@ -3376,293 +3145,14 @@ i32.const 1872 i32.store offset=4 global.get $~lib/memory/__stack_pointer -<<<<<<< HEAD - local.set $3 - local.get $1 - call $~lib/number/I32#toString - local.set $1 -======= i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer ->>>>>>> main global.get $~lib/memory/__stack_pointer i32.const 7884 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer -<<<<<<< HEAD - i32.const 1872 - i32.store offset=8 - local.get $3 - local.get $1 - i32.const 4 - call $~lib/string/String#padStart - local.tee $1 - i32.store offset=16 - end - global.get $~lib/memory/__stack_pointer - i32.const 1616 - i32.store offset=100 - local.get $1 - i32.const 1616 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=92 - local.get $0 - i32.load offset=4 - call $~lib/number/I32#toString - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=104 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=108 - local.get $3 - i32.const 2 - call $~lib/string/String#padStart - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=96 - local.get $1 - local.get $3 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=84 - global.get $~lib/memory/__stack_pointer - i32.const 1616 - i32.store offset=88 - local.get $1 - i32.const 1616 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=76 - local.get $0 - i32.load offset=8 - call $~lib/number/I32#toString - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=84 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=92 - local.get $3 - i32.const 2 - call $~lib/string/String#padStart - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=80 - local.get $1 - local.get $3 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=68 - global.get $~lib/memory/__stack_pointer - i32.const 3488 - i32.store offset=72 - local.get $1 - i32.const 3488 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=60 - i64.const 86400000 - i64.const 0 - local.get $0 - i64.load offset=16 - i64.const 86400000 - i64.rem_s - local.tee $2 - i64.const 0 - i64.lt_s - select - local.get $2 - i64.add - i32.wrap_i64 - i32.const 3600000 - i32.div_s - call $~lib/number/I32#toString - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=68 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=76 - local.get $3 - i32.const 2 - call $~lib/string/String#padStart - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=64 - local.get $1 - local.get $3 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=52 - global.get $~lib/memory/__stack_pointer - i32.const 3520 - i32.store offset=56 - local.get $1 - i32.const 3520 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=44 - i64.const 3600000 - i64.const 0 - local.get $0 - i64.load offset=16 - i64.const 3600000 - i64.rem_s - local.tee $2 - i64.const 0 - i64.lt_s - select - local.get $2 - i64.add - i32.wrap_i64 - i32.const 60000 - i32.div_s - call $~lib/number/I32#toString - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=52 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=60 - local.get $3 - i32.const 2 - call $~lib/string/String#padStart - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=48 - local.get $1 - local.get $3 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=36 - global.get $~lib/memory/__stack_pointer - i32.const 3520 - i32.store offset=40 - local.get $1 - i32.const 3520 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=28 - i64.const 60000 - i64.const 0 - local.get $0 - i64.load offset=16 - i64.const 60000 - i64.rem_s - local.tee $2 - i64.const 0 - i64.lt_s - select - local.get $2 - i64.add - i32.wrap_i64 - i32.const 1000 - i32.div_s - call $~lib/number/I32#toString - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=36 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=44 - local.get $3 - i32.const 2 - call $~lib/string/String#padStart - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=32 - local.get $1 - local.get $3 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 3552 - i32.store offset=24 - local.get $1 - i32.const 3552 - call $~lib/string/String.__concat - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 - i64.const 1000 - i64.const 0 - local.get $0 - i64.load offset=16 - i64.const 1000 - i64.rem_s - local.tee $2 - i64.const 0 - i64.lt_s - select - local.get $2 - i64.add - i32.wrap_i64 - call $~lib/number/I32#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=28 - local.get $0 - i32.const 3 - call $~lib/string/String#padStart - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=20 - local.get $1 - local.get $0 - call $~lib/string/String.__concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 3584 - i32.store offset=4 - local.get $0 - i32.const 3584 - call $~lib/string/String.__concat - local.set $0 -======= i32.const 0 i32.store block $__inlined_func$~lib/string/String#padStart @@ -3785,14 +3275,10 @@ (local $5 i32) (local $6 i32) (local $7 i32) ->>>>>>> main global.get $~lib/memory/__stack_pointer i32.const 36 i32.sub global.set $~lib/memory/__stack_pointer -<<<<<<< HEAD - local.get $0 -======= block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 7884 @@ -4054,11 +3540,17 @@ i32.const 3456 i32.store offset=4 i32.const 3616 - call $~lib/staticarray/StaticArray<~lib/string/String>#join + i32.const 3612 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 36 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 return end i32.const 24288 @@ -4067,7 +3559,6 @@ i32.const 1 call $~lib/builtins/abort unreachable ->>>>>>> main ) (func $~lib/date/Date#toDateString (param $0 i32) (result i32) (local $1 i32) @@ -4115,12 +3606,8 @@ i32.const 5072 i32.const 48 memory.copy -<<<<<<< HEAD local.get $1 - local.get $2 -======= local.get $3 ->>>>>>> main i32.store offset=4 local.get $0 i32.load @@ -4183,13 +3670,8 @@ local.get $5 i32.add local.set $5 - global.get $~lib/memory/__stack_pointer -<<<<<<< HEAD - local.set $0 - local.get $4 -======= + global.get $~lib/memory/__stack_pointer local.get $1 ->>>>>>> main i32.const 31 i32.shr_s local.tee $6 @@ -4197,19 +3679,6 @@ local.get $6 i32.add i32.xor -<<<<<<< HEAD - call $~lib/number/I32#toString - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 1872 - i32.store offset=12 - local.get $0 - local.get $7 -======= ->>>>>>> main i32.const 4 call $~lib/date/stringify local.tee $6 @@ -4276,13 +3745,6 @@ i32.const 5152 i32.const 7 local.get $1 -<<<<<<< HEAD - i32.store offset=8 - local.get $1 - local.get $0 - call $~lib/string/String.__concat - local.set $0 -======= call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5152 @@ -4298,8 +3760,12 @@ i32.const 3456 i32.store offset=32 i32.const 5152 - call $~lib/staticarray/StaticArray<~lib/string/String>#join ->>>>>>> main + i32.const 5148 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 36 i32.add @@ -4410,10 +3876,6 @@ i32.const 5472 i32.const 5 local.get $0 -<<<<<<< HEAD - call $~lib/string/String.__concat - local.set $0 -======= call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5472 @@ -4422,8 +3884,12 @@ i32.const 3456 i32.store offset=16 i32.const 5472 - call $~lib/staticarray/StaticArray<~lib/string/String>#join ->>>>>>> main + i32.const 5468 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add @@ -4470,7 +3936,7 @@ local.get $3 i32.store global.get $~lib/memory/__stack_pointer - local.set $1 + local.set $2 i32.const 48 i32.const 4 call $~lib/rt/itcms/__new @@ -4478,7 +3944,7 @@ i32.const 6272 i32.const 48 memory.copy - local.get $1 + local.get $2 local.get $4 i32.store offset=4 local.get $0 @@ -4543,12 +4009,7 @@ i32.add local.set $6 global.get $~lib/memory/__stack_pointer -<<<<<<< HEAD - local.set $1 - local.get $5 -======= local.get $2 ->>>>>>> main i32.const 31 i32.shr_s local.tee $8 @@ -4561,18 +4022,7 @@ local.tee $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer -<<<<<<< HEAD - i32.const 1872 - i32.store offset=12 - local.get $1 - local.get $9 - i32.const 4 - call $~lib/string/String#padStart - local.tee $1 - i32.store offset=16 -======= local.get $4 ->>>>>>> main local.get $5 i32.const 1 i32.sub @@ -4721,11 +4171,6 @@ i32.const 6384 i32.const 15 local.get $0 -<<<<<<< HEAD - i32.const 6128 - call $~lib/string/String.__concat - local.set $0 -======= call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 6384 @@ -4734,8 +4179,12 @@ i32.const 3456 i32.store offset=44 i32.const 6384 - call $~lib/staticarray/StaticArray<~lib/string/String>#join ->>>>>>> main + i32.const 6380 + i32.load + i32.const 2 + i32.shr_u + call $~lib/util/string/joinStringArray + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 48 i32.add @@ -8627,131 +8076,214 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) -<<<<<<< HEAD - (func $~lib/string/String#padStart (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/string/joinStringArray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 7564 + i32.const 7884 i32.lt_s if - i32.const 23968 - i32.const 24016 + i32.const 24288 + i32.const 24336 i32.const 1 i32.const 1 call $~lib/builtins/abort unreachable end global.get $~lib/memory/__stack_pointer + local.tee $4 + i64.const 0 + i64.store + local.get $4 i32.const 0 - i32.store - i32.const 1868 - i32.load - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - local.tee $2 - i32.eqz + i32.store offset=8 local.get $1 i32.const 1 - i32.shl - local.tee $1 - local.get $0 - i32.const 20 i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - local.tee $6 - i32.lt_u - i32.or + local.tee $4 + i32.const 0 + i32.lt_s if global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 3456 + return + end + local.get $4 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.load + local.tee $0 + i32.store + local.get $1 + i32.const 12 i32.add global.set $~lib/memory/__stack_pointer local.get $0 + i32.const 3456 + local.get $0 + select return end + loop $for-loop|0 + local.get $1 + local.get $3 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + i32.store offset=4 + local.get $5 + if + local.get $2 + local.get $5 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.add + local.set $2 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|0 + end + end + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 + i32.const 3452 + i32.load + i32.const 1 + i32.shr_u + local.tee $2 + local.get $4 + i32.mul + i32.add + i32.const 1 + i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 - i32.store - local.get $2 - local.get $1 - local.get $6 - i32.sub local.tee $5 - i32.lt_u - if - local.get $5 - local.get $5 - i32.const 2 - i32.sub - local.get $2 - i32.div_u - local.get $2 - i32.mul - local.tee $7 - i32.sub - local.set $1 - loop $while-continue|0 + i32.store offset=8 + i32.const 0 + local.set $3 + loop $for-loop|1 + local.get $3 + local.get $4 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + local.get $0 local.get $3 - local.get $7 - i32.lt_u + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $6 + i32.store offset=4 + local.get $6 if - local.get $3 - local.get $4 + local.get $5 + local.get $1 + i32.const 1 + i32.shl i32.add - i32.const 1872 + local.get $6 + local.get $6 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $6 + i32.const 1 + i32.shl + memory.copy + local.get $1 + local.get $6 + i32.add + local.set $1 + end + local.get $2 + if + local.get $5 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 3456 local.get $2 + i32.const 1 + i32.shl memory.copy + local.get $1 local.get $2 - local.get $3 i32.add - local.set $3 - br $while-continue|0 + local.set $1 end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|1 end - local.get $4 - local.get $7 - i32.add - i32.const 1872 - local.get $1 - memory.copy - else - local.get $4 - i32.const 1872 - local.get $5 - memory.copy end + global.get $~lib/memory/__stack_pointer + local.get $0 local.get $4 - local.get $5 + i32.const 2 + i32.shl i32.add + i32.load + local.tee $0 + i32.store offset=4 local.get $0 - local.get $6 - memory.copy + if + local.get $5 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.const 1 + i32.shl + memory.copy + end global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 ) -======= ->>>>>>> main (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) From 0a8fb00628388a29f8728af408a7d992a737b35b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sun, 7 Aug 2022 19:55:29 +0300 Subject: [PATCH 34/38] update fixtures --- tests/compiler/bindings/noExportRuntime.release.wat | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/compiler/bindings/noExportRuntime.release.wat b/tests/compiler/bindings/noExportRuntime.release.wat index 86de2503df..0796327308 100644 --- a/tests/compiler/bindings/noExportRuntime.release.wat +++ b/tests/compiler/bindings/noExportRuntime.release.wat @@ -1068,6 +1068,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.set $1 local.get $0 i32.const 4 i32.sub @@ -1100,6 +1101,7 @@ i32.const 1 i32.or i32.store + local.get $1 local.get $2 call $~lib/rt/tlsf/insertBlock end @@ -1552,7 +1554,7 @@ local.get $1 ) (func $bindings/noExportRuntime/takesReturnsBasic (param $0 i32) (result i32) - global.get $bindings/noExportRuntime/isBasic + i32.const 0 ) (func $bindings/noExportRuntime/returnsString (result i32) i32.const 1056 From d9ddc564ba9b2ce7f4d62fe79ec12e7ec64119e8 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 8 Aug 2022 09:31:54 +0300 Subject: [PATCH 35/38] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index b1fd69ef2d..4ed3d877b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220805", + "binaryen": "109.0.0-nightly.20220808", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220805", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220805.tgz", - "integrity": "sha512-8AOA9jfQ1T/a+M6INTiPkmJKFueoYU7fsrFjAt6ea/n+/exbd07C5mMHfHzqQcx4bAiM1fbmIocQ9tBFQq42gg==", + "version": "109.0.0-nightly.20220808", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220808.tgz", + "integrity": "sha512-79RDLnm0oPXfSdSv3l0H8xPjMSGvAsAYXir6JjTap+1a/3vkA0KgbdeaUhqA4zwyY0CqccsYttuUA7963llgcg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220805", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220805.tgz", - "integrity": "sha512-8AOA9jfQ1T/a+M6INTiPkmJKFueoYU7fsrFjAt6ea/n+/exbd07C5mMHfHzqQcx4bAiM1fbmIocQ9tBFQq42gg==" + "version": "109.0.0-nightly.20220808", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220808.tgz", + "integrity": "sha512-79RDLnm0oPXfSdSv3l0H8xPjMSGvAsAYXir6JjTap+1a/3vkA0KgbdeaUhqA4zwyY0CqccsYttuUA7963llgcg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 5640efe14f..5f7817ea25 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220805", + "binaryen": "109.0.0-nightly.20220808", "long": "^5.2.0" }, "devDependencies": { From 7c6cb946ba238cd907d8d3a9c5a332bb2df09bb7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 9 Aug 2022 06:33:53 +0300 Subject: [PATCH 36/38] update binaryen --- package-lock.json | 14 ++++++------ package.json | 2 +- tests/compiler/if.release.wat | 4 ++-- tests/compiler/object-literal.release.wat | 8 +++---- tests/compiler/std/date.release.wat | 12 +++++----- tests/compiler/std/math.release.wat | 28 +++++++++++------------ tests/compiler/std/string.release.wat | 4 ++-- 7 files changed, 36 insertions(+), 36 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ed3d877b0..fc21848600 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220808", + "binaryen": "109.0.0-nightly.20220809", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220808", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220808.tgz", - "integrity": "sha512-79RDLnm0oPXfSdSv3l0H8xPjMSGvAsAYXir6JjTap+1a/3vkA0KgbdeaUhqA4zwyY0CqccsYttuUA7963llgcg==", + "version": "109.0.0-nightly.20220809", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220809.tgz", + "integrity": "sha512-CR5IMSGO/x17ngBhHDBLh/8catLFWhzD6SsrRLfsIc3CtfLAohBjUI+tPsQh3erF22uxjDhoj3q4pF4Ec3aHkg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220808", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220808.tgz", - "integrity": "sha512-79RDLnm0oPXfSdSv3l0H8xPjMSGvAsAYXir6JjTap+1a/3vkA0KgbdeaUhqA4zwyY0CqccsYttuUA7963llgcg==" + "version": "109.0.0-nightly.20220809", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220809.tgz", + "integrity": "sha512-CR5IMSGO/x17ngBhHDBLh/8catLFWhzD6SsrRLfsIc3CtfLAohBjUI+tPsQh3erF22uxjDhoj3q4pF4Ec3aHkg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 5f7817ea25..9a6a20ed30 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220808", + "binaryen": "109.0.0-nightly.20220809", "long": "^5.2.0" }, "devDependencies": { diff --git a/tests/compiler/if.release.wat b/tests/compiler/if.release.wat index 4f5d7d31d9..cb1de7ed68 100644 --- a/tests/compiler/if.release.wat +++ b/tests/compiler/if.release.wat @@ -14,8 +14,8 @@ (export "memory" (memory $0)) (func $if/ifThenElse (param $0 i32) (result i32) local.get $0 - i32.eqz - i32.eqz + i32.const 0 + i32.ne ) (func $if/ifThen (param $0 i32) (result i32) local.get $0 diff --git a/tests/compiler/object-literal.release.wat b/tests/compiler/object-literal.release.wat index 5681aa5932..96fa3e192e 100644 --- a/tests/compiler/object-literal.release.wat +++ b/tests/compiler/object-literal.release.wat @@ -2180,8 +2180,8 @@ end local.get $1 i64.load offset=8 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1504 @@ -2192,8 +2192,8 @@ end local.get $1 i64.load offset=16 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1504 diff --git a/tests/compiler/std/date.release.wat b/tests/compiler/std/date.release.wat index 5878f502e2..5a51aa62e9 100644 --- a/tests/compiler/std/date.release.wat +++ b/tests/compiler/std/date.release.wat @@ -4752,8 +4752,8 @@ i32.or br_if $folding-inner0 local.get $1 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1152 @@ -4779,8 +4779,8 @@ i32.or br_if $folding-inner0 local.get $1 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1152 @@ -4806,8 +4806,8 @@ i32.or br_if $folding-inner0 local.get $1 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1152 diff --git a/tests/compiler/std/math.release.wat b/tests/compiler/std/math.release.wat index 72ba6e6ecf..0123e3383c 100644 --- a/tests/compiler/std/math.release.wat +++ b/tests/compiler/std/math.release.wat @@ -55819,8 +55819,8 @@ i64.const 0 i64.const 1 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -55832,8 +55832,8 @@ i64.const 0 i64.const 2 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -55845,8 +55845,8 @@ i64.const 0 i64.const 3 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -56092,8 +56092,8 @@ i64.const 2 i64.const 64 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -56144,8 +56144,8 @@ i64.const 2 i64.const -1 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -56157,8 +56157,8 @@ i64.const 2 i64.const 64 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 @@ -56170,8 +56170,8 @@ i64.const 2 i64.const 128 call $~lib/math/ipow64 - i64.eqz - i32.eqz + i64.const 0 + i64.ne if i32.const 0 i32.const 1056 diff --git a/tests/compiler/std/string.release.wat b/tests/compiler/std/string.release.wat index 9b4cb24995..6e525b77ce 100644 --- a/tests/compiler/std/string.release.wat +++ b/tests/compiler/std/string.release.wat @@ -4243,8 +4243,8 @@ else local.get $6 local.get $4 - i32.eqz - i32.eqz + i32.const 0 + i32.ne i64.extend_i32_u i64.or end From 0d98517f661619ecc770941c57ce28a8504abab9 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 10 Aug 2022 07:01:54 +0300 Subject: [PATCH 37/38] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index fc21848600..1b207ed692 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220809", + "binaryen": "109.0.0-nightly.20220810", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220809", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220809.tgz", - "integrity": "sha512-CR5IMSGO/x17ngBhHDBLh/8catLFWhzD6SsrRLfsIc3CtfLAohBjUI+tPsQh3erF22uxjDhoj3q4pF4Ec3aHkg==", + "version": "109.0.0-nightly.20220810", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220810.tgz", + "integrity": "sha512-QSjKU6eq5w5w/eIeoWUVpdKzZ/3KbSqAefFIykdFJqIYcpu2ceXGHDNZ6uYx0FAKFZIHUxH8sKM0XiQqsCdpkg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220809", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220809.tgz", - "integrity": "sha512-CR5IMSGO/x17ngBhHDBLh/8catLFWhzD6SsrRLfsIc3CtfLAohBjUI+tPsQh3erF22uxjDhoj3q4pF4Ec3aHkg==" + "version": "109.0.0-nightly.20220810", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220810.tgz", + "integrity": "sha512-QSjKU6eq5w5w/eIeoWUVpdKzZ/3KbSqAefFIykdFJqIYcpu2ceXGHDNZ6uYx0FAKFZIHUxH8sKM0XiQqsCdpkg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 9a6a20ed30..a58356b0e9 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220809", + "binaryen": "109.0.0-nightly.20220810", "long": "^5.2.0" }, "devDependencies": { From 1d21f30bd92be92d0957b0e244d8b44cd70d4c25 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 13 Aug 2022 09:52:29 +0300 Subject: [PATCH 38/38] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1b207ed692..ec47c0f469 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "109.0.0-nightly.20220810", + "binaryen": "109.0.0-nightly.20220813", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "109.0.0-nightly.20220810", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220810.tgz", - "integrity": "sha512-QSjKU6eq5w5w/eIeoWUVpdKzZ/3KbSqAefFIykdFJqIYcpu2ceXGHDNZ6uYx0FAKFZIHUxH8sKM0XiQqsCdpkg==", + "version": "109.0.0-nightly.20220813", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220813.tgz", + "integrity": "sha512-u85Ti3LiGRrV0HqdNDRknalkx7QiCSL0jNsEsT522nnZacWxUaSJEILphxc2OnzmHVtdiWBE3c4lEzlU3ZEyDw==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "109.0.0-nightly.20220810", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220810.tgz", - "integrity": "sha512-QSjKU6eq5w5w/eIeoWUVpdKzZ/3KbSqAefFIykdFJqIYcpu2ceXGHDNZ6uYx0FAKFZIHUxH8sKM0XiQqsCdpkg==" + "version": "109.0.0-nightly.20220813", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-109.0.0-nightly.20220813.tgz", + "integrity": "sha512-u85Ti3LiGRrV0HqdNDRknalkx7QiCSL0jNsEsT522nnZacWxUaSJEILphxc2OnzmHVtdiWBE3c4lEzlU3ZEyDw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index a58356b0e9..7830005c10 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "109.0.0-nightly.20220810", + "binaryen": "109.0.0-nightly.20220813", "long": "^5.2.0" }, "devDependencies": {