diff options
36 files changed, 28877 insertions, 30295 deletions
diff --git a/src/passes/SSAify.cpp b/src/passes/SSAify.cpp index 9e6ff2de2..1ed3b976f 100644 --- a/src/passes/SSAify.cpp +++ b/src/passes/SSAify.cpp @@ -27,6 +27,26 @@ // TODO: consider adding a "proper" phi node to the AST, that passes // can utilize // +// There is also a "no-merge" variant of this pass. That will ignore +// sets leading to merges, that is, it only creates new SSA indexes +// for sets whose gets have just that set, e.g. +// +// x = .. +// f(x, x) +// x = .. +// g(x, x) +// => +// x = .. +// f(x, x) +// x' = .. +// g(x', x') +// +// This "untangles" local indexes in a way that helps other passes, +// while not creating copies with overlapping lifetimes that can +// lead to a code size increase. In particular, the new variables +// added by ssa-nomerge can be easily removed by the coalesce-locals +// pass. +// #include <iterator> @@ -49,7 +69,11 @@ static SetLocal IMPOSSIBLE_SET; struct SSAify : public Pass { bool isFunctionParallel() override { return true; } - Pass* create() override { return new SSAify; } + Pass* create() override { return new SSAify(allowMerges); } + + SSAify(bool allowMerges) : allowMerges(allowMerges) {} + + bool allowMerges; Module* module; Function* func; @@ -59,21 +83,37 @@ struct SSAify : public Pass { module = module_; func = func_; LocalGraph graph(func); + graph.computeInfluences(); + graph.computeSSAIndexes(); // create new local indexes, one for each set - createNewIndexes(); + createNewIndexes(graph); // we now know the sets for each get, and can compute get indexes and handle phis computeGetsAndPhis(graph); // add prepends to function addPrepends(); } - void createNewIndexes() { + void createNewIndexes(LocalGraph& graph) { FindAll<SetLocal> sets(func->body); for (auto* set : sets.list) { - set->index = addLocal(func->getLocalType(set->index)); + // Indexes already in SSA form do not need to be modified - there is already + // just one set for that index. Otherwise, use a new index, unless merges + // are disallowed. + if (!graph.isSSA(set->index) && (allowMerges || !hasMerges(set, graph))) { + set->index = addLocal(func->getLocalType(set->index)); + } } } + bool hasMerges(SetLocal* set, LocalGraph& graph) { + for (auto* get : graph.setInfluences[set]) { + if (graph.getSetses[get].size() > 1) { + return true; + } + } + return false; + } + void computeGetsAndPhis(LocalGraph& graph) { FindAll<GetLocal> gets(func->body); for (auto* get : gets.list) { @@ -97,6 +137,7 @@ struct SSAify : public Pass { } continue; } + if (!allowMerges) continue; // more than 1 set, need a phi: a new local written to at each of the sets auto new_ = addLocal(get->type); auto old = get->index; @@ -154,8 +195,12 @@ struct SSAify : public Pass { } }; -Pass *createSSAifyPass() { - return new SSAify(); +Pass* createSSAifyPass() { + return new SSAify(true); +} + +Pass* createSSAifyNoMergePass() { + return new SSAify(false); } } // namespace wasm diff --git a/src/passes/pass.cpp b/src/passes/pass.cpp index 7f8e09bbf..82a804eb5 100644 --- a/src/passes/pass.cpp +++ b/src/passes/pass.cpp @@ -135,6 +135,7 @@ void PassRegistry::registerPasses() { registerPass("souperify-single-use", "emit Souper IR in text form (single-use nodes only)", createSouperifySingleUsePass); registerPass("spill-pointers", "spill pointers to the C stack (useful for Boehm-style GC)", createSpillPointersPass); registerPass("ssa", "ssa-ify variables so that they have a single assignment", createSSAifyPass); + registerPass("ssa-nomerge", "ssa-ify variables so that they have a single assignment, ignoring merges", createSSAifyNoMergePass); registerPass("strip", "deprecated; same as strip-debug", createStripDebugPass); registerPass("strip-debug", "strip debug info (including the names section)", createStripDebugPass); registerPass("strip-producers", "strip the wasm producers section", createStripProducersPass); @@ -153,6 +154,11 @@ void PassRunner::addDefaultOptimizationPasses() { } void PassRunner::addDefaultFunctionOptimizationPasses() { + // Untangling to semi-ssa form is helpful (but best to ignore merges + // so as to not introduce new copies). + if (options.optimizeLevel >= 3 || options.shrinkLevel >= 1) { + add("ssa-nomerge"); + } // if we are willing to work very very hard, flatten the IR and do opts // that depend on flat IR if (options.optimizeLevel >= 4) { diff --git a/src/passes/passes.h b/src/passes/passes.h index ac7126bd4..5ad54f705 100644 --- a/src/passes/passes.h +++ b/src/passes/passes.h @@ -93,6 +93,7 @@ Pass* createSouperifyPass(); Pass* createSouperifySingleUsePass(); Pass* createSpillPointersPass(); Pass* createSSAifyPass(); +Pass* createSSAifyNoMergePass(); Pass* createTrapModeClamp(); Pass* createTrapModeJS(); Pass* createUnteePass(); diff --git a/test/debugInfo.fromasm b/test/debugInfo.fromasm index 09e692304..7d1771d00 100644 --- a/test/debugInfo.fromasm +++ b/test/debugInfo.fromasm @@ -36,11 +36,11 @@ (if (result i32) (local.tee $2 ;;@ even-opted.cpp:2:0 - (local.tee $1 + (local.tee $0 (i32.shr_s (local.get $1) ;;@ even-opted.cpp:1:0 - (local.tee $0 + (local.tee $1 (i32.add (local.get $0) (local.get $1) @@ -50,12 +50,12 @@ ) ) (i32.rem_s - (local.get $0) + (local.get $1) (local.get $2) ) (i32.const 0) ) - (local.get $1) + (local.get $0) ) ) (func $fib (; 3 ;) (; has Stack IR ;) (param $0 i32) (result i32) @@ -63,63 +63,58 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local.set $4 + (local.set $2 (if (result i32) ;;@ fib.c:3:0 (i32.gt_s (local.get $0) (i32.const 0) ) - (block (result i32) - (local.set $3 - (i32.const 1) - ) - (i32.const 0) - ) + (i32.const 1) (block - (local.set $1 + (local.set $0 (i32.const 1) ) ;;@ fib.c:8:0 (return - (local.get $1) + (local.get $0) ) ) ) ) (loop $while-in ;;@ fib.c:4:0 - (local.set $1 + (local.set $4 (i32.add + (local.get $2) (local.get $3) - (local.get $4) ) ) ;;@ fib.c:3:0 - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (if (i32.ne (local.get $0) - (local.get $2) + (local.get $1) ) (block - (local.set $4 - (local.get $3) - ) (local.set $3 - (local.get $1) + (local.get $2) + ) + (local.set $2 + (local.get $4) ) (br $while-in) ) ) ) ;;@ fib.c:8:0 - (local.get $1) + (local.get $4) ) (func $switch_reach (; 4 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/debugInfo.fromasm.clamp b/test/debugInfo.fromasm.clamp index 09e692304..7d1771d00 100644 --- a/test/debugInfo.fromasm.clamp +++ b/test/debugInfo.fromasm.clamp @@ -36,11 +36,11 @@ (if (result i32) (local.tee $2 ;;@ even-opted.cpp:2:0 - (local.tee $1 + (local.tee $0 (i32.shr_s (local.get $1) ;;@ even-opted.cpp:1:0 - (local.tee $0 + (local.tee $1 (i32.add (local.get $0) (local.get $1) @@ -50,12 +50,12 @@ ) ) (i32.rem_s - (local.get $0) + (local.get $1) (local.get $2) ) (i32.const 0) ) - (local.get $1) + (local.get $0) ) ) (func $fib (; 3 ;) (; has Stack IR ;) (param $0 i32) (result i32) @@ -63,63 +63,58 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local.set $4 + (local.set $2 (if (result i32) ;;@ fib.c:3:0 (i32.gt_s (local.get $0) (i32.const 0) ) - (block (result i32) - (local.set $3 - (i32.const 1) - ) - (i32.const 0) - ) + (i32.const 1) (block - (local.set $1 + (local.set $0 (i32.const 1) ) ;;@ fib.c:8:0 (return - (local.get $1) + (local.get $0) ) ) ) ) (loop $while-in ;;@ fib.c:4:0 - (local.set $1 + (local.set $4 (i32.add + (local.get $2) (local.get $3) - (local.get $4) ) ) ;;@ fib.c:3:0 - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (if (i32.ne (local.get $0) - (local.get $2) + (local.get $1) ) (block - (local.set $4 - (local.get $3) - ) (local.set $3 - (local.get $1) + (local.get $2) + ) + (local.set $2 + (local.get $4) ) (br $while-in) ) ) ) ;;@ fib.c:8:0 - (local.get $1) + (local.get $4) ) (func $switch_reach (; 4 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/debugInfo.fromasm.clamp.map b/test/debugInfo.fromasm.clamp.map index 3fb1e45f2..e49a7309c 100644 --- a/test/debugInfo.fromasm.clamp.map +++ b/test/debugInfo.fromasm.clamp.map @@ -1 +1 @@ -{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"qIC8ylTA,QC7vlTA,OAkDA,UCjGA,AADA,EADA,+BCEA,kBAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file +{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"qIC8ylTA,QC7vlTA,OAkDA,UCjGA,AADA,EADA,+BCEA,cAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file diff --git a/test/debugInfo.fromasm.imprecise b/test/debugInfo.fromasm.imprecise index 008e1f018..a643cce56 100644 --- a/test/debugInfo.fromasm.imprecise +++ b/test/debugInfo.fromasm.imprecise @@ -43,11 +43,11 @@ ) ;;@ even-opted.cpp:3:0 (i32.add + (local.get $1) (i32.rem_s (local.get $0) (local.get $1) ) - (local.get $1) ) ) (func $fib (; 3 ;) (; has Stack IR ;) (param $0 i32) (result i32) @@ -55,63 +55,58 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local.set $4 + (local.set $2 (if (result i32) ;;@ fib.c:3:0 (i32.gt_s (local.get $0) (i32.const 0) ) - (block (result i32) - (local.set $3 - (i32.const 1) - ) - (i32.const 0) - ) + (i32.const 1) (block - (local.set $1 + (local.set $0 (i32.const 1) ) ;;@ fib.c:8:0 (return - (local.get $1) + (local.get $0) ) ) ) ) (loop $while-in ;;@ fib.c:4:0 - (local.set $1 + (local.set $4 (i32.add + (local.get $2) (local.get $3) - (local.get $4) ) ) ;;@ fib.c:3:0 - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (if (i32.ne (local.get $0) - (local.get $2) + (local.get $1) ) (block - (local.set $4 - (local.get $3) - ) (local.set $3 - (local.get $1) + (local.get $2) + ) + (local.set $2 + (local.get $4) ) (br $while-in) ) ) ) ;;@ fib.c:8:0 - (local.get $1) + (local.get $4) ) (func $switch_reach (; 4 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/debugInfo.fromasm.imprecise.map b/test/debugInfo.fromasm.imprecise.map index 3d93580a9..316bdc518 100644 --- a/test/debugInfo.fromasm.imprecise.map +++ b/test/debugInfo.fromasm.imprecise.map @@ -1 +1 @@ -{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"4FC8ylTA,QC7vlTA,OAkDA,QCnGA,OACA,OACA,aCAA,kBAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file +{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"4FC8ylTA,QC7vlTA,OAkDA,QCnGA,OACA,OACA,aCAA,cAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file diff --git a/test/debugInfo.fromasm.map b/test/debugInfo.fromasm.map index 3fb1e45f2..e49a7309c 100644 --- a/test/debugInfo.fromasm.map +++ b/test/debugInfo.fromasm.map @@ -1 +1 @@ -{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"qIC8ylTA,QC7vlTA,OAkDA,UCjGA,AADA,EADA,+BCEA,kBAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file +{"version":3,"sources":["tests/hello_world.c","tests/other_file.cpp","return.cpp","even-opted.cpp","fib.c","/tmp/emscripten_test_binaryen2_28hnAe/src.c","(unknown)"],"names":[],"mappings":"qIC8ylTA,QC7vlTA,OAkDA,UCjGA,AADA,EADA,+BCEA,cAKA,QAJA,OADA,0BAKA,sECsi1DA,KCrvyDA"}
\ No newline at end of file diff --git a/test/debugInfo.fromasm.read-written b/test/debugInfo.fromasm.read-written index 7fbc9e2c4..2cc9a03de 100644 --- a/test/debugInfo.fromasm.read-written +++ b/test/debugInfo.fromasm.read-written @@ -39,12 +39,12 @@ ;;@ even-opted.cpp:1:0 (if (result i32) (local.tee $2 - (local.tee $1 + (local.tee $0 (i32.shr_s ;;@ even-opted.cpp:2:0 (local.get $1) ;;@ even-opted.cpp:1:0 - (local.tee $0 + (local.tee $1 (i32.add (local.get $0) (local.get $1) @@ -55,12 +55,12 @@ ) ;;@ even-opted.cpp:3:0 (i32.rem_s - (local.get $0) + (local.get $1) (local.get $2) ) (i32.const 0) ) - (local.get $1) + (local.get $0) ) ) (func $fib (; 3 ;) (type $1) (param $0 i32) (result i32) @@ -69,63 +69,58 @@ (local $3 i32) (local $4 i32) ;;@ fib.c:8:0 - (local.set $4 + (local.set $2 ;;@ fib.c:3:0 (if (result i32) (i32.gt_s (local.get $0) (i32.const 0) ) + (i32.const 1) (block (result i32) - (local.set $3 - (i32.const 1) - ) - (i32.const 0) - ) - (block (result i32) - (local.set $1 + (local.set $0 (i32.const 1) ) ;;@ fib.c:8:0 (return - (local.get $1) + (local.get $0) ) ) ) ) (loop $label$3 ;;@ fib.c:4:0 - (local.set $1 + (local.set $4 (i32.add + (local.get $2) (local.get $3) - (local.get $4) ) ) ;;@ fib.c:3:0 - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (if (i32.ne (local.get $0) - (local.get $2) + (local.get $1) ) (block - (local.set $4 - (local.get $3) - ) (local.set $3 - (local.get $1) + (local.get $2) + ) + (local.set $2 + (local.get $4) ) (br $label$3) ) ) ) ;;@ fib.c:8:0 - (local.get $1) + (local.get $4) ) (func $switch_reach (; 4 ;) (type $1) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/emcc_O2_hello_world.fromasm b/test/emcc_O2_hello_world.fromasm index 2ea71d54e..0c0c148a1 100644 --- a/test/emcc_O2_hello_world.fromasm +++ b/test/emcc_O2_hello_world.fromasm @@ -99,11 +99,6 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) (if (i32.lt_u (local.get $0) @@ -112,16 +107,16 @@ (block (if (i32.and - (local.tee $2 + (local.tee $5 (i32.shr_u - (local.tee $15 + (local.tee $18 (i32.load (i32.const 176) ) ) (local.tee $6 (i32.shr_u - (local.tee $8 + (local.tee $4 (select (i32.const 16) (i32.and @@ -145,74 +140,69 @@ (i32.const 3) ) (block - (local.set $8 - (local.tee $1 - (i32.add - (i32.shl - (local.tee $6 - (i32.add - (local.get $6) - (i32.xor - (i32.and - (local.get $2) - (i32.const 1) + (local.set $0 + (i32.load + (local.tee $6 + (i32.add + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $6) + (i32.xor + (i32.and + (local.get $5) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const 1) ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne + (local.get $0) (local.get $1) - (local.tee $7 - (i32.load - (local.tee $17 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) - ) - ) - ) ) (block (if (i32.lt_u - (local.get $7) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $2 - (local.get $7) - ) (if (i32.eq - (local.get $0) + (local.get $4) (i32.load offset=12 - (local.get $2) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $2) + (local.get $0) (local.get $1) ) (i32.store offset=8 - (local.get $8) - (local.get $7) + (local.get $1) + (local.get $0) ) ) (call $_abort) @@ -224,34 +214,33 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $4) (i32.or - (local.tee $7 + (local.tee $0 (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $0) - (local.get $7) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $4) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -260,14 +249,14 @@ ) ) (return - (local.get $17) + (local.get $6) ) ) ) (if (i32.gt_u - (local.get $8) - (local.tee $5 + (local.get $4) + (local.tee $0 (i32.load (i32.const 184) ) @@ -275,12 +264,12 @@ ) (block (if - (local.get $2) + (local.get $5) (block (local.set $1 (i32.and (i32.shr_u - (local.tee $7 + (local.tee $3 (i32.add (i32.and (i32.sub @@ -290,17 +279,17 @@ (i32.or (i32.sub (i32.const 0) - (local.tee $7 + (local.tee $1 (i32.shl (i32.const 2) (local.get $6) ) ) ) - (local.get $7) + (local.get $1) ) (i32.shl - (local.get $2) + (local.get $5) (local.get $6) ) ) @@ -316,12 +305,12 @@ (i32.const 16) ) ) - (local.set $7 + (local.set $3 (i32.and (i32.shr_u - (local.tee $10 + (local.tee $6 (i32.shr_u - (local.get $7) + (local.get $3) (local.get $1) ) ) @@ -330,13 +319,13 @@ (i32.const 8) ) ) - (local.set $10 + (local.set $6 (i32.and (i32.shr_u - (local.tee $0 + (local.tee $2 (i32.shr_u - (local.get $10) - (local.get $7) + (local.get $6) + (local.get $3) ) ) (i32.const 2) @@ -344,13 +333,13 @@ (i32.const 4) ) ) - (local.set $0 + (local.set $2 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $5 (i32.shr_u - (local.get $0) - (local.get $10) + (local.get $2) + (local.get $6) ) ) (i32.const 1) @@ -358,67 +347,65 @@ (i32.const 2) ) ) - (local.set $6 - (local.tee $11 - (i32.add - (i32.shl - (local.tee $7 - (i32.add - (i32.or - (local.tee $11 - (i32.and - (i32.shr_u - (local.tee $19 + (local.set $1 + (i32.load + (local.tee $10 + (i32.add + (local.tee $6 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $2 + (i32.add + (i32.or + (local.tee $10 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $5) + (local.get $2) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $2) + (i32.or + (local.get $6) + (i32.or + (local.get $1) + (local.get $3) + ) + ) + ) + ) (i32.shr_u - (local.get $11) - (local.get $0) + (local.get $5) + (local.get $10) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $0) - (i32.or - (local.get $10) - (i32.or - (local.get $1) - (local.get $7) ) + (i32.const 3) ) + (i32.const 216) ) ) - (i32.shr_u - (local.get $19) - (local.get $11) - ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne - (local.tee $1 - (i32.load - (local.tee $10 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $6) - ) - ) - (i32.const 8) - ) - ) - ) - ) - (local.get $11) + (local.get $1) + (local.get $3) ) (block (if @@ -430,26 +417,23 @@ ) (call $_abort) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $0) + (local.get $6) (i32.load offset=12 (local.get $1) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $11) + (local.get $1) + (local.get $3) ) (i32.store offset=8 - (local.get $6) + (local.get $3) (local.get $1) ) - (local.set $17 + (local.set $13 (i32.load (i32.const 184) ) @@ -465,40 +449,40 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $7) + (local.get $2) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) - (local.set $17 - (local.get $5) + (local.set $13 + (local.get $0) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.tee $15 + (local.tee $5 (i32.add - (local.get $0) - (local.get $8) + (local.get $4) + (local.get $6) ) ) (i32.or - (local.tee $5 + (local.tee $6 (i32.sub (i32.shl - (local.get $7) + (local.get $2) (i32.const 3) ) - (local.get $8) + (local.get $4) ) ) (i32.const 1) @@ -507,24 +491,24 @@ (i32.store (i32.add (local.get $5) - (local.get $15) + (local.get $6) ) - (local.get $5) + (local.get $6) ) (if - (local.get $17) + (local.get $13) (block - (local.set $1 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.tee $19 + (local.tee $1 (i32.shr_u - (local.get $17) + (local.get $13) (i32.const 3) ) ) @@ -535,25 +519,25 @@ ) (if (i32.and - (local.tee $6 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $2 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $19) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $17 + (local.tee $4 (i32.load - (local.tee $19 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -565,11 +549,11 @@ ) (call $_abort) (block - (local.set $37 - (local.get $19) + (local.set $25 + (local.get $1) ) - (local.set $31 - (local.get $17) + (local.set $8 + (local.get $4) ) ) ) @@ -577,46 +561,46 @@ (i32.store (i32.const 176) (i32.or - (local.get $2) - (local.get $6) + (local.get $1) + (local.get $4) ) ) - (local.set $37 + (local.set $25 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $31 - (local.get $11) + (local.set $8 + (local.get $0) ) ) ) (i32.store - (local.get $37) - (local.get $1) + (local.get $25) + (local.get $3) ) (i32.store offset=12 - (local.get $31) - (local.get $1) + (local.get $8) + (local.get $3) ) (i32.store offset=8 - (local.get $1) - (local.get $31) + (local.get $3) + (local.get $8) ) (i32.store offset=12 - (local.get $1) - (local.get $11) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $5) + (local.get $6) ) (i32.store (i32.const 196) - (local.get $15) + (local.get $5) ) (return (local.get $10) @@ -624,23 +608,23 @@ ) ) (if - (local.tee $15 + (local.tee $0 (i32.load (i32.const 180) ) ) (block - (local.set $15 + (local.set $0 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $1 (i32.add (i32.and (i32.sub (i32.const 0) - (local.get $15) + (local.get $0) ) - (local.get $15) + (local.get $0) ) (i32.const -1) ) @@ -650,13 +634,13 @@ (i32.const 16) ) ) - (local.set $5 + (local.set $1 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $3 (i32.shr_u - (local.get $5) - (local.get $15) + (local.get $1) + (local.get $0) ) ) (i32.const 5) @@ -664,13 +648,13 @@ (i32.const 8) ) ) - (local.set $11 + (local.set $3 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $6 (i32.shr_u - (local.get $11) - (local.get $5) + (local.get $3) + (local.get $1) ) ) (i32.const 2) @@ -678,13 +662,13 @@ (i32.const 4) ) ) - (local.set $1 + (local.set $6 (i32.and (i32.shr_u - (local.tee $2 + (local.tee $8 (i32.shr_u - (local.get $1) - (local.get $11) + (local.get $6) + (local.get $3) ) ) (i32.const 1) @@ -692,22 +676,22 @@ (i32.const 2) ) ) - (local.set $2 + (local.set $5 (i32.sub (i32.and (i32.load offset=4 - (local.tee $17 + (local.tee $1 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $2 + (local.tee $5 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $8 (i32.shr_u - (local.get $2) - (local.get $1) + (local.get $8) + (local.get $6) ) ) (i32.const 1) @@ -716,19 +700,19 @@ ) ) (i32.or - (local.get $1) + (local.get $6) (i32.or - (local.get $11) + (local.get $3) (i32.or - (local.get $5) - (local.get $15) + (local.get $0) + (local.get $1) ) ) ) ) (i32.shr_u - (local.get $6) - (local.get $2) + (local.get $8) + (local.get $5) ) ) (i32.const 2) @@ -738,70 +722,67 @@ ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.set $1 - (local.tee $6 - (local.get $17) - ) + (local.set $0 + (local.get $1) ) (loop $while-in (block $while-out - (local.set $11 + (if + (local.tee $3 + (i32.load offset=16 + (local.get $1) + ) + ) + (local.set $1 + (local.get $3) + ) + (if + (i32.eqz + (local.tee $1 + (i32.load offset=20 + (local.get $1) + ) + ) + ) + (block + (local.set $8 + (local.get $0) + ) + (br $while-out) + ) + ) + ) + (local.set $3 (i32.lt_u - (local.tee $17 + (local.tee $6 (i32.sub (i32.and (i32.load offset=4 - (local.tee $6 - (if (result i32) - (local.tee $17 - (i32.load offset=16 - (local.get $6) - ) - ) - (local.get $17) - (if (result i32) - (local.tee $11 - (i32.load offset=20 - (local.get $6) - ) - ) - (local.get $11) - (block - (local.set $9 - (local.get $2) - ) - (local.set $5 - (local.get $1) - ) - (br $while-out) - ) - ) - ) - ) + (local.get $1) ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.get $2) + (local.get $5) ) ) - (local.set $2 + (local.set $5 (select - (local.get $17) - (local.get $2) - (local.get $11) + (local.get $6) + (local.get $5) + (local.get $3) ) ) - (local.set $1 + (local.set $0 (select - (local.get $6) (local.get $1) - (local.get $11) + (local.get $0) + (local.get $3) ) ) (br $while-in) @@ -809,8 +790,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $1 + (local.get $8) + (local.tee $18 (i32.load (i32.const 192) ) @@ -820,104 +801,98 @@ ) (if (i32.ge_u - (local.get $5) - (local.tee $6 + (local.get $8) + (local.tee $14 (i32.add - (local.get $5) + (local.get $4) (local.get $8) ) ) ) (call $_abort) ) - (local.set $2 + (local.set $10 (i32.load offset=24 - (local.get $5) + (local.get $8) ) ) (if (i32.eq - (local.tee $10 + (local.get $8) + (local.tee $0 (i32.load offset=12 - (local.get $5) + (local.get $8) ) ) - (local.get $5) ) (block $do-once4 - (local.set $4 - (if (result i32) - (local.tee $7 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $0 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $7) - ) - (local.get $0) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $11 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 16) ) ) ) ) - (local.get $11) - (br $do-once4) ) ) ) (loop $while-in7 (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) ) (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) @@ -925,17 +900,17 @@ ) (if (i32.lt_u - (local.get $4) (local.get $1) + (local.get $18) ) (call $_abort) (block (i32.store - (local.get $4) + (local.get $1) (i32.const 0) ) - (local.set $19 - (local.get $17) + (local.set $2 + (local.get $0) ) ) ) @@ -943,48 +918,42 @@ (block (if (i32.lt_u - (local.tee $0 + (local.tee $1 (i32.load offset=8 - (local.get $5) + (local.get $8) ) ) - (local.get $1) + (local.get $18) ) (call $_abort) ) - (local.set $1 - (local.get $0) - ) (if (i32.ne - (local.get $5) + (local.get $8) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $10) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=8 - (local.get $7) + (local.get $0) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $10) + (local.get $0) ) (i32.store offset=8 - (local.get $7) (local.get $0) + (local.get $1) ) - (local.set $19 - (local.get $10) + (local.set $2 + (local.get $0) ) ) (call $_abort) @@ -992,33 +961,32 @@ ) ) (if - (local.get $2) + (local.get $10) (block $do-once8 - (local.set $0 - (i32.shl - (local.tee $10 - (i32.load offset=28 - (local.get $5) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $5) + (local.get $8) ) (block (i32.store offset=480 - (local.get $0) - (local.get $19) + (local.get $1) + (local.get $2) ) (if (i32.eqz - (local.get $19) + (local.get $2) ) (block (i32.store @@ -1030,7 +998,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $10) + (local.get $0) ) (i32.const -1) ) @@ -1043,43 +1011,40 @@ (block (if (i32.lt_u - (local.get $2) + (local.get $10) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $2) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=16 - (local.get $0) + (local.get $10) ) ) (i32.store offset=16 - (local.get $0) - (local.get $19) + (local.get $10) + (local.get $2) ) (i32.store offset=20 + (local.get $10) (local.get $2) - (local.get $19) ) ) (br_if $do-once8 (i32.eqz - (local.get $19) + (local.get $2) ) ) ) ) (if (i32.lt_u - (local.get $19) - (local.tee $10 + (local.get $2) + (local.tee $1 (i32.load (i32.const 192) ) @@ -1088,42 +1053,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $19) (local.get $2) + (local.get $10) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u + (local.get $0) (local.get $1) - (local.get $10) ) (call $_abort) (block (i32.store offset=16 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=20 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u - (local.get $1) + (local.get $0) (i32.load (i32.const 192) ) @@ -1131,12 +1096,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) @@ -1145,30 +1110,29 @@ ) (if (i32.lt_u - (local.get $9) + (local.get $5) (i32.const 16) ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.tee $2 + (local.tee $0 (i32.add - (local.get $8) - (local.get $9) + (local.get $4) + (local.get $5) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $2) - (local.get $5) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $8) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -1179,44 +1143,44 @@ ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $14) (i32.or - (local.get $9) + (local.get $5) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $9) + (local.get $5) + (local.get $14) ) - (local.get $9) + (local.get $5) ) (if - (local.tee $1 + (local.tee $0 (i32.load (i32.const 184) ) ) (block - (local.set $2 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.tee $10 + (local.tee $1 (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 3) ) ) @@ -1227,25 +1191,25 @@ ) (if (i32.and - (local.tee $0 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $11 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $10) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $4 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -1257,11 +1221,11 @@ ) (call $_abort) (block - (local.set $38 - (local.get $10) + (local.set $19 + (local.get $1) ) - (local.set $32 - (local.get $7) + (local.set $7 + (local.get $4) ) ) ) @@ -1269,52 +1233,52 @@ (i32.store (i32.const 176) (i32.or - (local.get $0) - (local.get $11) + (local.get $1) + (local.get $4) ) ) - (local.set $38 + (local.set $19 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $32 - (local.get $1) + (local.set $7 + (local.get $0) ) ) ) (i32.store - (local.get $38) - (local.get $2) + (local.get $19) + (local.get $3) ) (i32.store offset=12 - (local.get $32) - (local.get $2) + (local.get $7) + (local.get $3) ) (i32.store offset=8 - (local.get $2) - (local.get $32) + (local.get $3) + (local.get $7) ) (i32.store offset=12 - (local.get $2) - (local.get $1) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $9) + (local.get $5) ) (i32.store (i32.const 196) - (local.get $6) + (local.get $14) ) ) ) (return (i32.add - (local.get $5) + (local.get $8) (i32.const 8) ) ) @@ -1323,16 +1287,16 @@ ) ) ) - (local.set $8 + (local.set $4 (if (result i32) (i32.le_u (local.get $0) (i32.const -65) ) (block $do-once (result i32) - (local.set $2 + (local.set $5 (i32.and - (local.tee $1 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1342,162 +1306,157 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $39 (i32.load (i32.const 180) ) ) (block (result i32) - (local.set $0 - (i32.sub - (i32.const 0) - (local.get $2) - ) - ) - (if - (local.tee $15 - (i32.load offset=480 - (i32.shl - (local.tee $8 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $1) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $2) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $10 - (i32.shl - (local.get $7) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) + (local.set $19 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $0) + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) + (i32.const 16) ) - (i32.const 520192) + (i32.const 8) ) - (i32.const 16) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $2) - (i32.add - (local.tee $15 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $10 - (i32.and - (i32.shr_u - (i32.add - (local.tee $17 - (i32.shl - (local.get $10) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $8) + (local.get $0) ) ) - (i32.or - (local.get $1) - (local.get $7) - ) + (i32.const 245760) ) + (i32.const 16) ) - (i32.shr_u - (i32.shl - (local.get $17) - (local.get $10) - ) - (i32.const 15) - ) + (i32.const 2) ) ) - (i32.const 7) + (i32.or + (local.get $0) + (local.get $2) + ) ) ) - (i32.const 1) - ) - (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $8) + (local.get $7) + ) + (i32.const 15) + ) ) ) + (i32.const 7) ) ) - (i32.const 0) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) ) + ) + ) + (i32.const 0) + ) + ) + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $5) + ) + ) + (if + (local.tee $7 + (i32.load offset=480 + (i32.shl + (local.get $19) (i32.const 2) ) ) ) (block $label$break$L123 - (local.set $10 - (local.get $0) - ) - (local.set $17 - (i32.const 0) - ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $2) + (local.get $5) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $8) + (local.get $19) (i32.const 1) ) ) (i32.eq - (local.get $8) + (local.get $19) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $15) + (local.set $8 + (i32.const 0) ) - (local.set $6 + (local.set $18 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $0 + (local.tee $13 (i32.sub - (local.tee $19 + (local.tee $9 (i32.and (i32.load offset=4 (local.get $7) @@ -1505,55 +1464,54 @@ (i32.const -8) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $10) + (local.get $2) ) - (local.set $5 + (local.set $2 (if (result i32) (i32.eq - (local.get $2) - (local.get $19) + (local.get $5) + (local.get $9) ) (block - (local.set $28 - (local.get $0) + (local.set $4 + (local.get $13) ) - (local.set $25 + (local.set $20 (local.get $7) ) - (local.set $29 + (local.set $6 (local.get $7) ) - (local.set $10 + (local.set $9 (i32.const 90) ) (br $label$break$L123) ) (block (result i32) - (local.set $10 - (local.get $0) + (local.set $8 + (local.get $7) ) - (local.get $7) + (local.get $13) ) ) ) ) - (local.set $19 + (local.set $13 (select - (local.get $17) - (local.tee $0 + (local.get $25) + (local.tee $13 (i32.load offset=20 (local.get $7) ) ) (i32.or (i32.eqz - (local.get $0) + (local.get $13) ) (i32.eq - (local.get $0) (local.tee $7 (i32.load (i32.add @@ -1563,7 +1521,7 @@ ) (i32.shl (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 31) ) (i32.const 2) @@ -1571,40 +1529,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $0 + (local.tee $9 (i32.eqz (local.get $7) ) ) (block (result i32) - (local.set $33 - (local.get $10) + (local.set $21 + (local.get $13) ) - (local.set $30 - (local.get $5) + (local.set $26 + (local.get $8) ) - (local.set $10 + (local.set $9 (i32.const 86) ) - (local.get $19) + (local.get $2) ) (block - (local.set $17 - (local.get $19) + (local.set $25 + (local.get $13) ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $1) + (local.get $0) (i32.xor - (i32.and - (local.get $0) - (i32.const 1) - ) + (local.get $9) (i32.const 1) ) ) @@ -1616,47 +1572,47 @@ ) ) (block - (local.set $33 - (local.get $0) + (local.set $18 + (local.get $2) ) - (local.set $10 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 86) ) (block (if (i32.eqz (i32.or - (local.get $6) - (local.get $30) + (local.get $21) + (local.get $26) ) ) (block (drop (br_if $do-once - (local.get $2) + (local.get $5) (i32.eqz (local.tee $0 (i32.and (i32.or (i32.sub (i32.const 0) - (local.tee $15 + (local.tee $0 (i32.shl (i32.const 2) - (local.get $8) + (local.get $19) ) ) ) - (local.get $15) + (local.get $0) ) - (local.get $11) + (local.get $39) ) ) ) @@ -1665,7 +1621,7 @@ (local.set $0 (i32.and (i32.shr_u - (local.tee $15 + (local.tee $2 (i32.add (i32.and (i32.sub @@ -1682,12 +1638,12 @@ (i32.const 16) ) ) - (local.set $15 + (local.set $2 (i32.and (i32.shr_u (local.tee $8 (i32.shr_u - (local.get $15) + (local.get $2) (local.get $0) ) ) @@ -1699,10 +1655,10 @@ (local.set $8 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $7 (i32.shr_u (local.get $8) - (local.get $15) + (local.get $2) ) ) (i32.const 2) @@ -1710,12 +1666,12 @@ (i32.const 4) ) ) - (local.set $6 + (local.set $7 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $13 (i32.shr_u - (local.get $6) + (local.get $7) (local.get $8) ) ) @@ -1724,18 +1680,18 @@ (i32.const 2) ) ) - (local.set $6 + (local.set $21 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $5 + (local.tee $21 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $13 (i32.shr_u - (local.get $5) - (local.get $6) + (local.get $13) + (local.get $7) ) ) (i32.const 1) @@ -1744,19 +1700,19 @@ ) ) (i32.or - (local.get $6) + (local.get $7) (i32.or (local.get $8) (i32.or (local.get $0) - (local.get $15) + (local.get $2) ) ) ) ) (i32.shr_u - (local.get $1) - (local.get $5) + (local.get $13) + (local.get $21) ) ) (i32.const 2) @@ -1766,27 +1722,27 @@ ) ) (if - (local.get $6) + (local.get $21) (block - (local.set $28 - (local.get $33) + (local.set $4 + (local.get $18) ) - (local.set $25 - (local.get $6) + (local.set $20 + (local.get $21) ) - (local.set $29 - (local.get $30) + (local.set $6 + (local.get $26) ) - (local.set $10 + (local.set $9 (i32.const 90) ) ) (block - (local.set $4 - (local.get $33) + (local.set $11 + (local.get $18) ) - (local.set $13 - (local.get $30) + (local.set $12 + (local.get $26) ) ) ) @@ -1794,98 +1750,81 @@ ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 90) ) - (local.set $4 + (local.set $11 (loop $while-in16 (result i32) - (local.set $10 + (local.set $9 (i32.const 0) ) - (local.set $1 + (local.set $0 (i32.lt_u - (local.tee $5 + (local.tee $2 (i32.sub (i32.and (i32.load offset=4 - (local.get $25) + (local.get $20) ) (i32.const -8) ) - (local.get $2) + (local.get $5) ) ) - (local.get $28) + (local.get $4) ) ) - (local.set $6 + (local.set $4 (select - (local.get $5) - (local.get $28) - (local.get $1) + (local.get $2) + (local.get $4) + (local.get $0) ) ) - (local.set $5 + (local.set $6 (select - (local.get $25) - (local.get $29) - (local.get $1) + (local.get $20) + (local.get $6) + (local.get $0) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $25) + (local.get $20) ) ) (block - (local.set $28 - (local.get $6) - ) - (local.set $25 - (local.get $1) - ) - (local.set $29 - (local.get $5) + (local.set $20 + (local.get $0) ) (br $while-in16) ) ) - (if (result i32) - (local.tee $25 + (br_if $while-in16 + (local.tee $20 (i32.load offset=20 - (local.get $25) + (local.get $20) ) ) - (block - (local.set $28 - (local.get $6) - ) - (local.set $29 - (local.get $5) - ) - (br $while-in16) - ) - (block (result i32) - (local.set $13 - (local.get $5) - ) - (local.get $6) - ) ) + (local.set $12 + (local.get $6) + ) + (local.get $4) ) ) ) (if (result i32) (if (result i32) - (local.get $13) + (local.get $12) (i32.lt_u - (local.get $4) + (local.get $11) (i32.sub (i32.load (i32.const 184) ) - (local.get $2) + (local.get $5) ) ) (i32.const 0) @@ -1893,8 +1832,8 @@ (block (if (i32.lt_u - (local.get $13) - (local.tee $11 + (local.get $12) + (local.tee $8 (i32.load (i32.const 192) ) @@ -1904,11 +1843,11 @@ ) (if (i32.ge_u - (local.get $13) - (local.tee $5 + (local.get $12) + (local.tee $2 (i32.add - (local.get $2) - (local.get $13) + (local.get $5) + (local.get $12) ) ) ) @@ -1916,92 +1855,86 @@ ) (local.set $6 (i32.load offset=24 - (local.get $13) + (local.get $12) ) ) (if (i32.eq - (local.tee $1 + (local.get $12) + (local.tee $0 (i32.load offset=12 - (local.get $13) + (local.get $12) ) ) - (local.get $13) ) (block $do-once17 - (local.set $1 - (if (result i32) + (if + (i32.eqz (local.tee $0 (i32.load - (local.tee $8 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $0) - ) - (local.get $8) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $15 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 16) ) ) ) ) - (local.get $15) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) @@ -2010,7 +1943,7 @@ (if (i32.lt_u (local.get $1) - (local.get $11) + (local.get $8) ) (call $_abort) (block @@ -2018,8 +1951,8 @@ (local.get $1) (i32.const 0) ) - (local.set $9 - (local.get $17) + (local.set $15 + (local.get $0) ) ) ) @@ -2027,49 +1960,43 @@ (block (if (i32.lt_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $13) + (local.get $12) ) ) - (local.get $11) + (local.get $8) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.ne - (local.get $13) + (local.get $12) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $1) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $0) (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $7) - (local.get $8) - ) - (local.set $9 + (local.get $0) (local.get $1) ) + (local.set $15 + (local.get $0) + ) ) (call $_abort) ) @@ -2078,31 +2005,30 @@ (if (local.get $6) (block $do-once21 - (local.set $0 - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $13) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $12) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $13) + (local.get $12) ) (block (i32.store offset=480 - (local.get $0) - (local.get $9) + (local.get $1) + (local.get $15) ) (if (i32.eqz - (local.get $9) + (local.get $15) ) (block (i32.store @@ -2114,7 +2040,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $1) + (local.get $0) ) (i32.const -1) ) @@ -2134,35 +2060,32 @@ ) (call $_abort) ) - (local.set $0 - (local.get $6) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=16 - (local.get $0) + (local.get $6) ) ) (i32.store offset=16 - (local.get $0) - (local.get $9) + (local.get $6) + (local.get $15) ) (i32.store offset=20 (local.get $6) - (local.get $9) + (local.get $15) ) ) (br_if $do-once21 (i32.eqz - (local.get $9) + (local.get $15) ) ) ) ) (if (i32.lt_u - (local.get $9) + (local.get $15) (local.tee $1 (i32.load (i32.const 192) @@ -2172,42 +2095,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $9) + (local.get $15) (local.get $6) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=16 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (local.get $1) ) (call $_abort) (block (i32.store offset=16 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=20 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (i32.load (i32.const 192) ) @@ -2215,12 +2138,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) @@ -2229,47 +2152,47 @@ ) (if (i32.ge_u - (local.get $4) + (local.get $11) (i32.const 16) ) (block $do-once25 (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.get $2) + (local.get $5) (i32.const 3) ) ) (i32.store offset=4 - (local.get $5) + (local.get $2) (i32.or - (local.get $4) + (local.get $11) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $5) + (local.get $2) + (local.get $11) ) - (local.get $4) + (local.get $11) ) - (local.set $6 + (local.set $1 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 3) ) ) (if (i32.lt_u - (local.get $4) + (local.get $11) (i32.const 256) ) (block - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $1) (i32.const 3) ) (i32.const 216) @@ -2277,25 +2200,25 @@ ) (if (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $6) + (local.tee $4 + (i32.load + (i32.const 176) ) ) (local.tee $1 - (i32.load - (i32.const 176) + (i32.shl + (i32.const 1) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -2307,11 +2230,11 @@ ) (call $_abort) (block - (local.set $16 - (local.get $6) + (local.set $17 + (local.get $1) ) - (local.set $26 - (local.get $15) + (local.set $27 + (local.get $4) ) ) ) @@ -2320,70 +2243,70 @@ (i32.const 176) (i32.or (local.get $1) - (local.get $8) + (local.get $4) ) ) - (local.set $16 + (local.set $17 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $26 - (local.get $11) + (local.set $27 + (local.get $0) ) ) ) (i32.store - (local.get $16) - (local.get $5) + (local.get $17) + (local.get $2) ) (i32.store offset=12 - (local.get $26) - (local.get $5) + (local.get $27) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $26) + (local.get $2) + (local.get $27) ) (i32.store offset=12 - (local.get $5) - (local.get $11) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $6 + (local.set $1 (i32.add (local.tee $0 (i32.shl - (local.tee $7 + (local.tee $6 (if (result i32) - (local.tee $11 + (local.tee $0 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $4) + (local.get $11) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $11 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $1 + (local.tee $4 (i32.shl - (local.get $11) - (local.tee $8 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $11) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2403,21 +2326,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $4) + (local.get $11) (i32.add - (local.tee $6 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $1 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.get $11) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2428,15 +2351,15 @@ ) ) (i32.or - (local.get $8) - (local.get $11) + (local.get $0) + (local.get $1) ) ) ) (i32.shr_u (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2448,7 +2371,7 @@ (i32.const 1) ) (i32.shl - (local.get $6) + (local.get $0) (i32.const 1) ) ) @@ -2464,158 +2387,160 @@ ) ) (i32.store offset=28 - (local.get $5) - (local.get $7) + (local.get $2) + (local.get $6) ) (i32.store offset=20 - (local.get $5) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $5) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $15 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 180) ) ) + (local.tee $3 + (i32.shl + (i32.const 1) + (local.get $6) + ) + ) ) ) (block (i32.store (i32.const 180) (i32.or - (local.get $1) - (local.get $15) + (local.get $3) + (local.get $4) ) ) (i32.store offset=480 (local.get $0) - (local.get $5) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $6) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $15 + (local.set $3 (i32.shl - (local.get $4) + (local.get $11) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $7) + (local.get $6) (i32.const 1) ) ) (i32.eq - (local.get $7) + (local.get $6) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 (local.get $0) ) ) - (if - (i32.eq - (local.tee $10 - (loop $while-in28 (result i32) - (block $while-out27 (result i32) - (if - (i32.eq - (local.get $4) - (i32.and - (i32.load offset=4 - (local.get $1) - ) - (i32.const -8) - ) - ) - (block - (local.set $14 - (local.get $1) - ) - (br $while-out27 - (i32.const 148) - ) - ) + (loop $while-in28 + (block $while-out27 + (if + (i32.eq + (local.get $11) + (i32.and + (i32.load offset=4 + (local.get $0) ) - (if (result i32) - (local.tee $8 - (i32.load - (local.tee $6 - (i32.add - (i32.add - (local.get $1) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $15) - (i32.const 31) - ) - (i32.const 2) - ) - ) + (i32.const -8) + ) + ) + (block + (local.set $22 + (local.get $0) + ) + (local.set $9 + (i32.const 148) + ) + (br $while-out27) + ) + ) + (local.set $31 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $4 + (i32.add + (i32.add + (local.get $0) + (i32.const 16) ) - ) - ) - (block - (local.set $15 (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (local.get $3) + (i32.const 31) + ) + (i32.const 2) ) ) - (local.set $1 - (local.get $8) - ) - (br $while-in28) ) - (block (result i32) - (local.set $23 - (local.get $6) - ) - (local.set $20 - (local.get $1) - ) - (i32.const 145) + ) + ) + (block + (local.set $3 + (i32.shl + (local.get $3) + (i32.const 1) ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in28) + ) + (block (result i32) + (local.set $40 + (local.get $0) + ) + (local.set $9 + (i32.const 145) + ) + (local.get $4) ) ) ) + ) + ) + (if + (i32.eq + (local.get $9) (i32.const 145) ) (if (i32.lt_u - (local.get $23) + (local.get $31) (i32.load (i32.const 192) ) @@ -2623,100 +2548,96 @@ (call $_abort) (block (i32.store - (local.get $23) - (local.get $5) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $20) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $14) - ) - (if - (i32.and - (i32.ge_u - (local.tee $15 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $8 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $22) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $8) + (local.tee $4 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $15) - (local.get $5) - ) - (i32.store offset=8 - (local.get $0) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $15) - ) - (i32.store offset=12 - (local.get $5) - (local.get $14) - ) - (i32.store offset=24 - (local.get $5) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) ) - (call $_abort) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $22) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $_abort) ) ) ) ) (block (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.tee $15 + (local.tee $0 (i32.add - (local.get $2) - (local.get $4) + (local.get $5) + (local.get $11) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $12) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2728,15 +2649,15 @@ ) (return (i32.add - (local.get $13) + (local.get $12) (i32.const 8) ) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $2) + (local.get $5) ) ) (i32.const -1) @@ -2745,25 +2666,25 @@ ) (if (i32.ge_u - (local.tee $13 + (local.tee $6 (i32.load (i32.const 184) ) ) - (local.get $8) + (local.get $4) ) (block - (local.set $14 + (local.set $0 (i32.load (i32.const 196) ) ) (if (i32.gt_u - (local.tee $4 + (local.tee $1 (i32.sub - (local.get $13) - (local.get $8) + (local.get $6) + (local.get $4) ) ) (i32.const 15) @@ -2771,35 +2692,35 @@ (block (i32.store (i32.const 196) - (local.tee $20 + (local.tee $3 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 184) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $20) + (local.get $3) (i32.or - (local.get $4) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $20) + (local.get $1) + (local.get $3) ) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) @@ -2814,23 +2735,22 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $13) + (local.get $6) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $14) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $6) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) @@ -2839,1956 +2759,1882 @@ ) (return (i32.add - (local.get $14) + (local.get $0) (i32.const 8) ) ) ) ) - (if - (i32.gt_u - (local.tee $14 - (i32.load - (i32.const 188) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) - (local.get $8) ) - (block - (i32.store - (i32.const 188) - (local.tee $4 - (i32.sub - (local.get $14) - (local.get $8) - ) + (if + (i32.eqz + (i32.load + (i32.const 648) ) ) - (i32.store - (i32.const 200) - (local.tee $13 + (if + (i32.and + (local.tee $0 + (call $_sysconf + (i32.const 30) + ) + ) (i32.add - (local.get $8) - (local.tee $14 - (i32.load - (i32.const 200) + (local.get $0) + (i32.const -1) + ) + ) + (call $_abort) + (block + (i32.store + (i32.const 656) + (local.get $0) + ) + (i32.store + (i32.const 652) + (local.get $0) + ) + (i32.store + (i32.const 660) + (i32.const -1) + ) + (i32.store + (i32.const 664) + (i32.const -1) + ) + (i32.store + (i32.const 668) + (i32.const 0) + ) + (i32.store + (i32.const 620) + (i32.const 0) + ) + (i32.store + (i32.const 648) + (i32.xor + (i32.and + (call $_time + (i32.const 0) + ) + (i32.const -16) ) + (i32.const 1431655768) ) ) ) ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $4) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.get $8) - (i32.const 3) - ) - ) - (return - (i32.add - (local.get $14) - (i32.const 8) - ) - ) ) - ) - (if - (i32.eqz - (i32.load - (i32.const 648) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) (if - (i32.and - (local.tee $14 - (call $_sysconf - (i32.const 30) - ) - ) - (i32.add - (local.get $14) - (i32.const -1) - ) - ) - (call $_abort) - (block - (i32.store - (i32.const 656) - (local.get $14) - ) - (i32.store - (i32.const 652) - (local.get $14) - ) - (i32.store - (i32.const 660) - (i32.const -1) - ) - (i32.store - (i32.const 664) - (i32.const -1) - ) - (i32.store - (i32.const 668) - (i32.const 0) - ) - (i32.store - (i32.const 620) - (i32.const 0) - ) - (i32.store - (i32.const 648) - (i32.xor - (i32.and - (call $_time + (i32.le_u + (local.tee $11 + (i32.and + (local.tee $2 + (i32.add + (local.tee $0 + (i32.load + (i32.const 656) + ) + ) + (local.tee $8 + (i32.add + (local.get $4) + (i32.const 47) + ) + ) + ) + ) + (local.tee $0 + (i32.sub (i32.const 0) + (local.get $0) ) - (i32.const -16) ) - (i32.const 1431655768) ) ) + (local.get $4) ) - ) - ) - (local.set $14 - (i32.add - (local.get $8) - (i32.const 48) - ) - ) - (local.set $20 - (i32.add - (local.tee $4 - (i32.load - (i32.const 656) - ) - ) - (local.tee $13 - (i32.add - (local.get $8) - (i32.const 47) - ) + (return + (i32.const 0) ) ) - ) - (if - (i32.le_u - (local.tee $4 - (i32.and - (local.tee $23 - (i32.sub - (i32.const 0) - (local.get $4) - ) + (if + (if (result i32) + (local.tee $6 + (i32.load + (i32.const 616) ) - (local.get $20) ) - ) - (local.get $8) - ) - (return - (i32.const 0) - ) - ) - (if - (if (result i32) - (local.tee $7 - (i32.load - (i32.const 616) - ) - ) - (i32.or - (i32.le_u - (local.tee $16 - (i32.add - (local.get $4) - (local.tee $26 - (i32.load - (i32.const 608) + (i32.or + (i32.le_u + (local.tee $18 + (i32.add + (local.get $11) + (local.tee $7 + (i32.load + (i32.const 608) + ) ) ) ) + (local.get $7) + ) + (i32.gt_u + (local.get $18) + (local.get $6) ) - (local.get $26) - ) - (i32.gt_u - (local.get $16) - (local.get $7) ) + (i32.const 0) + ) + (return + (i32.const 0) ) - (i32.const 0) - ) - (return - (i32.const 0) ) - ) - (if - (block (result i32) - (if + (if + (if (result i32) (if (result i32) - (if (result i32) - (select - (i32.lt_u - (local.get $4) - (i32.const 2147483647) - ) - (i32.const 0) - (i32.eq - (local.tee $10 - (if (result i32) - (i32.and - (i32.load - (i32.const 620) - ) - (i32.const 4) + (select + (i32.lt_u + (local.get $11) + (i32.const 2147483647) + ) + (i32.const 0) + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 620) ) - (i32.const 190) - (block $label$break$L257 (result i32) - (if - (local.tee $7 - (i32.load - (i32.const 200) - ) + (i32.const 4) + ) + (i32.const 190) + (block $label$break$L257 (result i32) + (if + (local.tee $6 + (i32.load + (i32.const 200) ) - (block $label$break$L259 - (local.set $16 - (i32.const 624) - ) - (loop $while-in34 - (block $while-out33 - (if - (if (result i32) - (i32.le_u - (local.tee $26 - (i32.load - (local.get $16) - ) + ) + (block $label$break$L259 + (local.set $17 + (i32.const 624) + ) + (loop $while-in34 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $7 + (i32.load + (local.get $17) ) - (local.get $7) ) - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $16) - (i32.const 4) - ) + (local.get $6) + ) + (i32.gt_u + (i32.add + (i32.load + (local.tee $15 + (i32.add + (local.get $17) + (i32.const 4) ) ) - (local.get $26) ) (local.get $7) ) - (i32.const 0) - ) - (block - (local.set $6 - (local.get $16) - ) - (local.set $1 - (local.get $9) - ) - (br $while-out33) + (local.get $6) ) + (i32.const 0) ) + ) + (block (br_if $while-in34 - (local.tee $16 + (local.tee $17 (i32.load offset=8 - (local.get $16) + (local.get $17) ) ) ) - (local.set $10 + (local.set $9 (i32.const 173) ) (br $label$break$L259) ) ) - (if - (i32.lt_u - (local.tee $16 - (i32.and - (local.get $23) - (i32.sub - (local.get $20) - (i32.load - (i32.const 188) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $0) + (i32.sub + (local.get $2) + (i32.load + (i32.const 188) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $_sbrk - (local.get $16) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $_sbrk + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $6) - ) - (i32.load - (local.get $1) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $17) ) - (block - (local.set $21 - (local.get $9) - ) - (local.set $22 - (local.get $16) - ) - (br $label$break$L257 - (i32.const 193) - ) + (i32.load + (local.get $15) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $16) + (local.set $3 + (local.get $0) ) (local.set $10 - (i32.const 183) + (local.get $2) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) + (block + (local.set $14 + (local.get $0) + ) + (local.set $23 + (local.get $2) + ) + (local.set $9 + (i32.const 183) + ) + ) ) ) ) - (local.set $10 + ) + (local.set $9 + (i32.const 173) + ) + ) + (if + (if (result i32) + (i32.eq + (local.get $9) (i32.const 173) ) - ) - (if - (if (result i32) - (i32.eq - (local.get $10) - (i32.const 173) - ) - (i32.ne - (local.tee $7 - (call $_sbrk - (i32.const 0) - ) + (i32.ne + (local.tee $6 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - (i32.const 0) + (i32.const -1) ) - (block $do-once35 - (local.set $0 - (if (result i32) - (i32.and - (local.tee $2 - (local.get $7) - ) - (local.tee $9 - (i32.add - (local.tee $16 - (i32.load - (i32.const 652) + (i32.const 0) + ) + (block $do-once35 + (local.set $5 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $6) + ) + (local.tee $5 + (i32.add + (local.tee $2 + (i32.load + (i32.const 652) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $4) - (local.get $2) - ) - (i32.and - (i32.add - (local.get $2) - (local.get $9) - ) + (i32.add (i32.sub - (i32.const 0) - (local.get $16) + (local.get $11) + (local.get $0) + ) + (i32.and + (i32.add + (local.get $0) + (local.get $5) + ) + (i32.sub + (i32.const 0) + (local.get $2) + ) ) ) + (local.get $11) ) - (local.get $4) ) - ) - (local.set $2 - (i32.add - (local.tee $16 - (i32.load - (i32.const 608) - ) + (local.tee $2 + (i32.load + (i32.const 608) ) - (local.get $0) ) ) - (if - (i32.and - (i32.lt_u - (local.get $0) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $0) - (local.get $8) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (br_if $do-once35 - (select - (i32.or - (i32.le_u - (local.get $2) - (local.get $16) - ) - (i32.gt_u - (local.get $2) - (local.tee $9 - (i32.load - (i32.const 616) - ) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (br_if $do-once35 + (select + (i32.or + (i32.le_u + (local.get $5) + (local.get $2) + ) + (i32.gt_u + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 616) ) ) ) - (i32.const 0) - (local.get $9) ) + (i32.const 0) + (local.get $2) ) - (local.set $10 - (if (result i32) - (i32.eq - (local.tee $9 - (call $_sbrk - (local.get $0) - ) - ) - (local.get $7) - ) - (block - (local.set $21 - (local.get $7) - ) - (local.set $22 + ) + (local.set $14 + (if (result i32) + (i32.eq + (local.get $6) + (local.tee $2 + (call $_sbrk (local.get $0) ) - (br $label$break$L257 - (i32.const 193) - ) ) - (block (result i32) - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $0) - ) + ) + (block + (local.set $3 + (local.get $6) + ) + (local.set $10 + (local.get $0) + ) + (br $label$break$L257 + (i32.const 193) + ) + ) + (block (result i32) + (local.set $23 + (local.get $0) + ) + (local.set $9 (i32.const 183) ) + (local.get $2) ) ) ) ) ) ) - (if - (i32.eq - (local.get $10) - (i32.const 183) - ) - (block $label$break$L279 - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $18) - ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 183) + ) + (block $label$break$L279 + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $23) ) - (local.set $3 + ) + (local.set $1 + (if (result i32) (if (result i32) - (if (result i32) + (i32.and (i32.and - (i32.and - (i32.ne - (local.get $12) - (i32.const -1) - ) - (i32.lt_u - (local.get $18) - (i32.const 2147483647) - ) - ) - (i32.gt_u + (i32.ne (local.get $14) - (local.get $18) + (i32.const -1) + ) + (i32.lt_u + (local.get $23) + (i32.const 2147483647) ) ) - (i32.lt_u - (local.tee $2 - (i32.and - (i32.add - (local.tee $7 - (i32.load - (i32.const 656) - ) - ) - (i32.sub - (local.get $13) - (local.get $18) + (i32.gt_u + (local.get $22) + (local.get $23) + ) + ) + (i32.lt_u + (local.tee $5 + (i32.and + (i32.add + (local.tee $6 + (i32.load + (i32.const 656) ) ) (i32.sub - (i32.const 0) - (local.get $7) + (local.get $8) + (local.get $23) ) ) + (i32.sub + (i32.const 0) + (local.get $6) + ) ) - (i32.const 2147483647) ) - (i32.const 0) + (i32.const 2147483647) ) - (if (result i32) - (i32.eq - (call $_sbrk - (local.get $2) - ) - (i32.const -1) + (i32.const 0) + ) + (if (result i32) + (i32.eq + (call $_sbrk + (local.get $5) ) - (block - (drop - (call $_sbrk - (local.get $9) - ) + (i32.const -1) + ) + (block + (drop + (call $_sbrk + (local.get $0) ) - (br $label$break$L279) - ) - (i32.add - (local.get $2) - (local.get $18) ) + (br $label$break$L279) + ) + (i32.add + (local.get $5) + (local.get $23) ) - (local.get $18) ) + (local.get $23) ) - (if - (i32.ne - (local.get $12) - (i32.const -1) + ) + (if + (i32.ne + (local.get $14) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $14) ) - (block - (local.set $21 - (local.get $12) - ) - (local.set $22 - (local.get $3) - ) - (br $label$break$L257 - (i32.const 193) - ) + (local.set $10 + (local.get $1) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) ) - (i32.store - (i32.const 620) - (i32.or - (i32.load - (i32.const 620) - ) - (i32.const 4) + ) + (i32.store + (i32.const 620) + (i32.or + (i32.load + (i32.const 620) ) + (i32.const 4) ) - (i32.const 190) ) + (i32.const 190) ) ) - (i32.const 190) ) + (i32.const 190) ) + ) + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $3 - (call $_sbrk - (local.get $4) - ) + (i32.ne + (local.tee $1 + (call $_sbrk + (local.get $11) ) - (i32.const -1) ) - (i32.ne - (local.tee $4 - (call $_sbrk - (i32.const 0) - ) + (i32.const -1) + ) + (i32.ne + (local.tee $11 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - ) - (i32.lt_u - (local.get $3) - (local.get $4) - ) - ) - (i32.const 0) - ) - (i32.gt_u - (local.tee $12 - (i32.sub - (local.get $4) - (local.get $3) + (i32.const -1) ) ) - (i32.add - (local.get $8) - (i32.const 40) + (i32.lt_u + (local.get $1) + (local.get $11) ) ) (i32.const 0) ) - (block - (local.set $21 - (local.get $3) - ) - (local.set $22 - (local.get $12) + (i32.gt_u + (local.tee $14 + (i32.sub + (local.get $11) + (local.get $1) + ) ) - (local.set $10 - (i32.const 193) + (i32.add + (local.get $4) + (i32.const 40) ) ) + (i32.const 0) ) + (block + (local.set $10 + (local.get $14) + ) + (local.set $9 + (i32.const 193) + ) + (local.set $3 + (local.get $1) + ) + ) + ) + (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 193) ) - ) - (block - (i32.store - (i32.const 608) - (local.tee $12 - (i32.add - (local.get $22) - (i32.load - (i32.const 608) + (block + (i32.store + (i32.const 608) + (local.tee $0 + (i32.add + (local.get $10) + (i32.load + (i32.const 608) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $12) - (i32.load - (i32.const 612) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 612) + ) ) - ) - (i32.store - (i32.const 612) - (local.get $12) - ) - ) - (if - (local.tee $12 - (i32.load - (i32.const 200) + (i32.store + (i32.const 612) + (local.get $0) ) ) - (block $do-once40 - (local.set $3 - (i32.const 624) + (if + (local.tee $7 + (i32.load + (i32.const 200) + ) ) - (loop $do-in - (block $do-out - (if - (i32.eq - (i32.add - (local.tee $4 - (i32.load - (local.get $3) + (block $do-once40 + (local.set $1 + (i32.const 624) + ) + (loop $do-in + (block $do-out + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) + ) ) - ) - (local.tee $13 - (i32.load - (local.tee $18 - (i32.add - (local.get $3) - (i32.const 4) + (local.tee $2 + (i32.load + (local.tee $6 + (i32.add + (local.get $1) + (i32.const 4) + ) ) ) ) ) - ) - (local.get $21) - ) - (block - (local.set $46 - (local.get $4) - ) - (local.set $47 - (local.get $18) - ) - (local.set $48 - (local.get $13) - ) - (local.set $49 (local.get $3) ) - (local.set $10 - (i32.const 203) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $6) + ) + (local.set $43 + (local.get $2) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 203) + ) + (br $do-out) ) - (br $do-out) ) - ) - (br_if $do-in - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $do-in + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (if (result i32) + (if (if (result i32) - (i32.eq - (local.get $10) - (i32.const 203) - ) - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $49) + (if (result i32) + (i32.eq + (local.get $9) + (i32.const 203) + ) + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) ) - (i32.const 8) ) + (i32.const 0) ) - (i32.const 0) - ) - (i32.and - (i32.lt_u - (local.get $12) - (local.get $21) - ) - (i32.ge_u - (local.get $12) - (local.get $46) + (i32.and + (i32.lt_u + (local.get $7) + (local.get $3) + ) + (i32.ge_u + (local.get $7) + (local.get $41) + ) ) + (i32.const 0) ) - (i32.const 0) - ) - (block - (i32.store - (local.get $47) - (i32.add - (local.get $22) - (local.get $48) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $10) + (local.get $43) + ) ) - ) - (local.set $3 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $12) - (i32.const 8) + (local.set $0 + (i32.add + (local.get $7) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $7) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) ) - (local.get $12) ) - ) - (local.set $18 - (i32.add - (i32.load - (i32.const 188) - ) - (i32.sub - (local.get $22) - (local.get $13) + (local.set $1 + (i32.add + (i32.load + (i32.const 188) + ) + (i32.sub + (local.get $10) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store - (i32.const 188) - (local.get $18) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $18) - (i32.const 1) + (i32.store + (i32.const 200) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $3) - (local.get $18) + (i32.store + (i32.const 188) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (br $do-once40) ) - (br $do-once40) ) - ) - (local.set $5 - (if (result i32) + (if (i32.lt_u - (local.get $21) - (local.tee $18 + (local.get $3) + (local.tee $6 (i32.load (i32.const 192) ) ) ) - (block (result i32) + (block (i32.store (i32.const 192) - (local.get $21) + (local.get $3) + ) + (local.set $6 + (local.get $3) ) - (local.get $21) ) - (local.get $18) ) - ) - (local.set $18 - (i32.add - (local.get $21) - (local.get $22) + (local.set $0 + (i32.add + (local.get $3) + (local.get $10) + ) ) - ) - (local.set $3 - (i32.const 624) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $18) - (i32.load - (local.get $3) - ) - ) - (block - (local.set $50 - (local.get $3) - ) - (local.set $34 - (local.get $3) + (local.set $1 + (i32.const 624) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $10 - (i32.const 211) + (block + (local.set $45 + (local.get $1) + ) + (local.set $28 + (local.get $1) + ) + (local.set $9 + (i32.const 211) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) - ) - (local.set $27 - (i32.const 624) + (local.set $24 + (i32.const 624) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 211) - ) - (local.set $27 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $34) - ) - (i32.const 8) - ) - (i32.const 624) - (block - (i32.store - (local.get $50) - (local.get $21) + (if + (i32.eq + (local.get $9) + (i32.const 211) + ) + (local.set $24 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $28) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $34) - (i32.add - (local.get $22) - (i32.load offset=4 - (local.get $34) + (i32.const 624) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 + (local.get $28) + (i32.add + (local.get $10) + (i32.load offset=4 + (local.get $28) + ) ) ) - ) - (local.set $13 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $21) - (i32.const 8) + (local.set $5 + (i32.add + (local.get $4) + (local.tee $14 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) - (local.get $21) ) - ) - (local.set $4 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $18) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $2 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) + (local.get $14) ) + (local.get $4) ) - (local.get $18) - ) - ) - (local.set $3 - (i32.add - (local.get $8) - (local.get $13) ) - ) - (local.set $14 - (i32.sub - (i32.sub + (i32.store offset=4 + (local.get $14) + (i32.or (local.get $4) - (local.get $13) + (i32.const 3) ) - (local.get $8) - ) - ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $8) - (i32.const 3) - ) - ) - (if - (i32.ne - (local.get $4) - (local.get $12) ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 196) + (if + (i32.ne + (local.get $2) + (local.get $7) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) ) - (local.get $4) - ) - (block - (i32.store - (i32.const 184) - (local.tee $0 - (i32.add - (local.get $14) - (i32.load - (i32.const 184) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 184) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $0) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $0) - (local.get $3) + (i32.store + (i32.const 196) + (local.get $5) ) - (local.get $0) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $0 - (i32.load offset=4 - (local.get $4) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $1 - (i32.and + (i32.store + (i32.add + (local.get $0) + (local.get $5) + ) (local.get $0) - (i32.const -8) ) + (br $do-once44) ) - (local.set $6 - (i32.shr_u - (local.get $0) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $2) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$L331 - (if - (i32.ge_u - (local.get $0) - (i32.const 256) + (block (result i32) + (local.set $7 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $23 - (i32.load offset=24 - (local.get $4) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$L331 (if - (i32.eq - (local.get $4) - (local.tee $20 - (i32.load offset=12 - (local.get $4) + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $10 + (i32.load offset=24 + (local.get $2) ) ) - ) - (block $do-once47 - (local.set $0 - (if (result i32) - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.tee $9 - (i32.add - (local.get $4) - (i32.const 16) + (if + (i32.eq + (local.get $2) + (local.tee $0 + (i32.load offset=12 + (local.get $2) + ) + ) + ) + (block $do-once47 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $2) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $9 - (local.get $2) + (local.set $1 + (local.get $4) ) - (local.get $7) - ) - (if (result i32) - (local.tee $16 - (i32.load - (local.get $9) + (br_if $do-once47 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (local.get $16) - (br $do-once47) ) - ) - ) - (loop $while-in50 - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 20) + (loop $while-in50 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) ) ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) + ) + ) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) + ) ) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.lt_u + (local.get $1) + (local.get $6) ) - (local.set $9 - (local.get $2) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $16 + (local.get $0) + ) ) - (br $while-in50) ) ) - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $2) ) ) + (local.get $6) ) + (call $_abort) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.ne + (local.get $2) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $9 + (call $_abort) + ) + (if + (i32.eq (local.get $2) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $16 + (local.get $0) + ) ) - (br $while-in50) + (call $_abort) ) ) ) + (br_if $label$break$L331 + (i32.eqz + (local.get $10) + ) + ) (if - (i32.lt_u - (local.get $9) - (local.get $5) + (i32.ne + (i32.load offset=480 + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $2) + ) + ) + (i32.const 2) + ) + ) + ) + (local.get $2) ) - (call $_abort) (block - (i32.store - (local.get $9) - (i32.const 0) + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) ) - (local.set $24 - (local.get $0) + (if + (i32.eq + (local.get $2) + (i32.load offset=16 + (local.get $10) + ) + ) + (i32.store offset=16 + (local.get $10) + (local.get $16) + ) + (i32.store offset=20 + (local.get $10) + (local.get $16) + ) + ) + (br_if $label$break$L331 + (i32.eqz + (local.get $16) + ) ) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $2 - (i32.load offset=8 - (local.get $4) + (block $do-once51 + (i32.store offset=480 + (local.get $1) + (local.get $16) + ) + (br_if $do-once51 + (local.get $16) + ) + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) ) ) - (local.get $5) + (br $label$break$L331) ) - (call $_abort) - ) - (local.set $0 - (local.get $2) ) (if - (i32.ne - (local.get $4) - (i32.load offset=12 - (local.get $0) + (i32.lt_u + (local.get $16) + (local.tee $1 + (i32.load + (i32.const 192) + ) ) ) (call $_abort) ) - (local.set $6 - (local.get $20) + (i32.store offset=24 + (local.get $16) + (local.get $10) ) (if - (i32.eq - (local.get $4) - (i32.load offset=8 - (local.get $6) + (local.tee $0 + (i32.load offset=16 + (local.get $2) ) ) - (block - (i32.store offset=12 + (if + (i32.lt_u (local.get $0) - (local.get $20) - ) - (i32.store offset=8 - (local.get $6) - (local.get $2) + (local.get $1) ) - (local.set $24 - (local.get $20) + (call $_abort) + (block + (i32.store offset=16 + (local.get $16) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) - (call $_abort) ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $23) - ) - ) - (local.set $0 - (i32.shl - (local.tee $20 - (i32.load offset=28 - (local.get $4) + (br_if $label$break$L331 + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $2) + ) + ) ) ) - (i32.const 2) - ) - ) - (if - (i32.ne - (i32.load offset=480 - (local.get $0) - ) - (local.get $4) - ) - (block (if (i32.lt_u - (local.get $23) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) - ) - (local.set $0 - (local.get $23) - ) - (if - (i32.eq - (local.get $4) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $16) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $23) - (local.get $24) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $24) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) ) - (block $do-once51 - (i32.store offset=480 - (local.get $0) - (local.get $24) - ) - (br_if $do-once51 - (local.get $24) + (block + (local.set $1 + (i32.load offset=12 + (local.get $2) + ) ) - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $2) + ) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $20) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const -1) ) ) - ) - (br $label$break$L331) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $20 - (i32.load - (i32.const 192) - ) - ) - ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $24) - (local.get $23) - ) - (local.set $0 - (local.get $4) - ) - (if - (local.tee $9 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $9) - (local.get $20) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.tee $9 - (i32.load offset=20 - (local.get $0) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $9) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (block - (local.set $20 - (i32.load offset=12 - (local.get $4) - ) - ) - (if - (i32.ne - (local.tee $9 - (i32.load offset=8 - (local.get $4) - ) - ) - (local.tee $23 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) + (block $do-once55 + (if + (i32.lt_u + (local.get $4) + (local.get $6) + ) + (call $_abort) ) - (i32.const 216) + (br_if $do-once55 + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $4) + ) + ) + ) + (call $_abort) ) ) - ) - (block $do-once55 (if - (i32.lt_u - (local.get $9) - (local.get $5) - ) - (call $_abort) - ) - (br_if $do-once55 (i32.eq + (local.get $1) (local.get $4) - (i32.load offset=12 - (local.get $9) - ) ) - ) - (call $_abort) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $20) - ) - (block - (i32.store - (i32.const 176) - (i32.and - (i32.load + (block + (i32.store (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $6) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) ) - (i32.const -1) ) + (br $label$break$L331) ) ) - (br $label$break$L331) - ) - ) - (if - (i32.eq - (local.get $20) - (local.get $23) - ) - (local.set $39 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - (block $do-once57 - (if - (i32.lt_u - (local.get $20) - (local.get $5) - ) - (call $_abort) - ) (if (i32.eq - (local.get $4) - (i32.load - (local.tee $2 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) + (local.get $0) + (local.get $1) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - (block - (local.set $39 - (local.get $2) + (block $do-once57 + (if + (i32.lt_u + (local.get $1) + (local.get $6) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $2) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once57) + ) ) - (br $do-once57) + (call $_abort) ) ) - (call $_abort) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) + ) ) ) - (i32.store offset=12 - (local.get $9) - (local.get $20) - ) - (i32.store - (local.get $39) - (local.get $9) + ) + (local.set $2 + (i32.add + (local.get $2) + (local.get $7) ) ) + (i32.add + (local.get $7) + (local.get $8) + ) ) + (local.get $8) ) - (local.set $4 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $14 - (i32.add - (local.get $1) - (local.get $14) + ) + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.and - (i32.load offset=4 + (i32.store offset=4 + (local.get $5) + (i32.or (local.get $4) + (i32.const 1) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $14) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $3) - (local.get $14) - ) - (local.get $14) - ) - (local.set $6 - (i32.shr_u - (local.get $14) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $5) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $14) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $0 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $2 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $6) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) - (local.tee $23 - (i32.load - (i32.const 176) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $7 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (block + (local.set $33 + (local.get $1) + ) + (local.set $29 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $40 - (local.get $6) - ) - (local.set $35 - (local.get $7) + (call $_abort) + ) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $4) ) - (br $do-once59) ) - ) - (call $_abort) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $2) - (local.get $23) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $40 - (i32.add + (local.set $29 (local.get $0) - (i32.const 8) ) ) - (local.set $35 - (local.get $0) - ) ) + (i32.store + (local.get $33) + (local.get $5) + ) + (i32.store offset=12 + (local.get $29) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $29) + ) + (i32.store offset=12 + (local.get $5) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (br $do-once44) ) - ) - (local.set $2 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $2 - (i32.shr_u - (local.get $14) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $14) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (local.tee $23 - (i32.and - (i32.shr_u - (i32.add - (local.get $2) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $14) - (i32.add - (local.tee $16 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.tee $6 - (i32.shl - (local.get $1) - (local.get $7) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $7) - (local.get $23) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $6) - (local.get $1) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $6) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $16) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $3) - (local.get $1) - ) - (i32.store offset=20 - (local.get $3) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $3) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $16 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $5) + (local.get $0) + ) + (i32.store offset=20 + (local.get $5) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $5) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $6 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $16) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $6) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $3) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once44) ) - (i32.store offset=480 - (local.get $6) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $2) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $3) - ) - (br $do-once44) ) - ) - (local.set $16 - (i32.shl - (local.get $14) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $17 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $14) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $41 - (local.get $0) - ) - (br $while-out63 - (i32.const 281) - ) + (loop $while-in64 + (block $while-out63 + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $2 + ) + (block + (local.set $34 + (local.get $0) + ) + (local.set $9 + (i32.const 281) + ) + (br $while-out63) + ) + ) + (local.set $35 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $16) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $17) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $16 - (i32.shl - (local.get $16) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $17 + (i32.shl + (local.get $17) + (i32.const 1) ) - (br $while-in64) ) - (block (result i32) - (local.set $42 - (local.get $2) - ) - (local.set $51 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) + ) + (block (result i32) + (local.set $46 + (local.get $0) + ) + (local.set $9 (i32.const 278) ) + (local.get $3) ) ) ) ) - (i32.const 278) ) (if - (i32.lt_u - (local.get $42) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 278) ) - (call $_abort) - (block - (i32.store - (local.get $42) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $51) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $3) - (local.get $3) + (call $_abort) + (block + (i32.store + (local.get $35) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $46) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 281) - ) - (block - (local.set $0 - (local.get $41) + (if + (i32.eq + (local.get $9) + (i32.const 281) ) (if (i32.and (i32.ge_u - (local.tee $16 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 192) ) @@ -4796,28 +4642,28 @@ ) (i32.ge_u (local.get $0) - (local.get $1) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $5) ) (i32.store offset=8 (local.get $0) - (local.get $3) + (local.get $5) ) (i32.store offset=8 - (local.get $3) - (local.get $16) + (local.get $5) + (local.get $1) ) (i32.store offset=12 - (local.get $3) - (local.get $41) + (local.get $5) + (local.get $34) ) (i32.store offset=24 - (local.get $3) + (local.get $5) (i32.const 0) ) ) @@ -4826,694 +4672,685 @@ ) ) ) - ) - (block - (i32.store - (i32.const 188) - (local.tee $16 - (i32.add - (local.get $14) - (i32.load - (i32.const 188) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 188) + ) ) ) ) + (i32.store + (i32.const 200) + (local.get $5) + ) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) ) - (i32.store - (i32.const 200) - (local.get $3) + ) + (return + (i32.add + (local.get $14) + (i32.const 8) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $16) - (i32.const 1) + ) + ) + ) + ) + ) + (loop $while-in66 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $24) ) ) + (local.get $7) ) + (i32.gt_u + (local.tee $22 + (i32.add + (i32.load offset=4 + (local.get $24) + ) + (local.get $0) + ) + ) + (local.get $7) + ) + (i32.const 0) ) - (return - (i32.add - (local.get $13) - (i32.const 8) + ) + (block + (local.set $24 + (i32.load offset=8 + (local.get $24) ) ) + (br $while-in66) ) ) ) - ) - (local.set $3 - (i32.add - (local.tee $1 - (local.tee $13 - (select - (local.get $12) - (local.tee $3 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.add - (local.tee $13 - (i32.add - (local.tee $0 - (loop $while-in66 (result i32) - (if (result i32) - (if (result i32) - (i32.le_u - (local.tee $3 - (i32.load - (local.get $27) - ) - ) - (local.get $12) - ) - (i32.gt_u - (local.tee $14 - (i32.add - (i32.load offset=4 - (local.get $27) - ) - (local.get $3) - ) - ) - (local.get $12) - ) - (i32.const 0) - ) - (local.get $14) - (block - (local.set $27 - (i32.load offset=8 - (local.get $27) - ) - ) - (br $while-in66) - ) - ) - ) - ) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $14) - (i32.const 7) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $13) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $3) - (local.tee $14 - (i32.add - (local.get $12) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 200) - (local.tee $4 + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) + ) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.get $21) - (local.tee $18 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $4 - (i32.add - (local.get $21) - (i32.const 8) + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (i32.store offset=4 + (local.tee $0 + (select + (local.get $7) + (local.tee $0 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.tee $0 + (i32.add + (local.get $22) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) - (i32.const 7) + (local.get $0) ) - (i32.const 0) - (i32.and - (local.get $4) - (i32.const 7) + ) + (i32.lt_u + (local.get $0) + (local.tee $2 + (i32.add + (local.get $7) + (i32.const 16) + ) ) ) ) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 188) - (local.tee $16 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) - ) - (local.get $18) + (i32.store offset=8 + (local.get $0) + (i32.load + (i32.const 624) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.or - (local.get $16) - (i32.const 1) + (i32.store offset=12 + (local.get $0) + (i32.load + (i32.const 628) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $4) - (local.get $16) + (i32.store offset=16 + (local.get $0) + (i32.load + (i32.const 632) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=20 + (local.get $0) + (i32.load + (i32.const 636) + ) ) - ) - (local.set $2 - (local.get $13) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $1) - (i32.load + (i32.store (i32.const 624) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $1) - (i32.load + (i32.store (i32.const 628) + (local.get $10) ) - ) - (i32.store offset=16 - (local.get $1) - (i32.load - (i32.const 632) - ) - ) - (i32.store offset=20 - (local.get $1) - (i32.load + (i32.store (i32.const 636) + (i32.const 0) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 632) - (local.get $3) - ) - (local.set $3 - (i32.add - (local.get $2) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $3 - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.const 632) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $3) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $0) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $12) - (local.get $13) - ) - (block - (i32.store offset=4 - (local.get $2) - (i32.and - (i32.load offset=4 - (local.get $2) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.tee $3 - (i32.sub - (local.get $13) - (local.get $12) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $22) ) ) - (i32.store - (local.get $13) - (local.get $3) - ) - (local.set $4 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $0) + (local.get $7) ) - (if - (i32.lt_u - (local.get $3) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $0) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -2) + ) ) - (block - (local.set $18 - (i32.add - (i32.shl - (local.get $4) - (i32.const 3) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.tee $6 + (i32.sub + (local.get $0) + (local.get $7) ) - (i32.const 216) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $1 + ) + (i32.store + (local.get $0) + (local.get $6) + ) + (local.set $1 + (i32.shr_u + (local.get $6) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $6) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $0 - (i32.load - (i32.const 176) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $18) - (i32.const 8) + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (call $_abort) + (block + (local.set $36 + (local.get $1) + ) + (local.set $30 + (local.get $3) + ) ) ) - (call $_abort) (block - (local.set $43 - (local.get $4) + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $3) + ) ) (local.set $36 - (local.get $2) + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - ) - (block - (i32.store - (i32.const 176) - (i32.or + (local.set $30 (local.get $0) - (local.get $1) ) ) - (local.set $43 - (i32.add - (local.get $18) - (i32.const 8) - ) - ) - (local.set $36 - (local.get $18) - ) ) + (i32.store + (local.get $36) + (local.get $7) + ) + (i32.store offset=12 + (local.get $30) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $30) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once40) ) - (i32.store - (local.get $43) - (local.get $12) - ) - (i32.store offset=12 - (local.get $36) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $36) - ) - (i32.store offset=12 - (local.get $12) - (local.get $18) - ) - (br $do-once40) ) - ) - (local.set $4 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $3) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $6) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $18 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $18) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $18) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $6) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $3) - (i32.add - (local.tee $4 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (i32.add - (local.tee $2 - (i32.shl - (local.get $0) - (local.get $18) + (i32.or + (i32.and + (i32.shr_u + (local.get $6) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $8 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $1) - (local.get $18) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $2) - (local.get $0) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $8) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $4) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $12) - (local.get $1) - ) - (i32.store offset=20 - (local.get $12) - (i32.const 0) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store + (local.get $2) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $2 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $8 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $2) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $8) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $3) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once40) ) - (i32.store offset=480 - (local.get $6) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $4) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $12) - ) - (br $do-once40) ) - ) - (local.set $2 - (i32.shl - (local.get $3) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $5 + (i32.shl + (local.get $6) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $3) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $44 - (local.get $0) - ) - (br $while-out69 - (i32.const 307) - ) + (loop $while-in70 + (block $while-out69 + (if + (i32.eq + (local.get $6) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $4 + ) + (block + (local.set $37 + (local.get $0) + ) + (local.set $9 + (i32.const 307) + ) + (br $while-out69) + ) + ) + (local.set $38 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $2) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $5) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $2 - (i32.shl - (local.get $2) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $5 + (i32.shl + (local.get $5) + (i32.const 1) ) - (br $while-in70) ) - (block (result i32) - (local.set $45 - (local.get $4) - ) - (local.set $52 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in70) + ) + (block (result i32) + (local.set $47 + (local.get $0) + ) + (local.set $9 (i32.const 304) ) + (local.get $3) ) ) ) ) - (i32.const 304) ) (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 304) ) - (call $_abort) - (block - (i32.store - (local.get $45) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $52) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $12) - (local.get $12) + (call $_abort) + (block + (i32.store + (local.get $38) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $47) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 307) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 307) ) (if (i32.and (i32.ge_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) (local.tee $3 @@ -5529,23 +5366,23 @@ ) (block (i32.store offset=12 - (local.get $2) - (local.get $12) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $12) + (local.get $7) ) (i32.store offset=8 - (local.get $12) - (local.get $2) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $12) - (local.get $44) + (local.get $7) + (local.get $37) ) (i32.store offset=24 - (local.get $12) + (local.get $7) (i32.const 0) ) ) @@ -5556,208 +5393,206 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $2 - (i32.load - (i32.const 192) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 192) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $21) - (local.get $2) + (i32.store + (i32.const 192) + (local.get $3) ) ) (i32.store - (i32.const 192) - (local.get $21) + (i32.const 624) + (local.get $3) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 212) - (i32.load - (i32.const 648) + (i32.store + (i32.const 628) + (local.get $10) ) - ) - (i32.store - (i32.const 208) - (i32.const -1) - ) - (local.set $2 - (i32.const 0) - ) - (loop $do-in72 - (local.set $0 - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (i32.const 3) - ) - ) - (i32.const 216) + (i32.store + (i32.const 636) + (i32.const 0) + ) + (i32.store + (i32.const 212) + (i32.load + (i32.const 648) ) ) - (i32.store offset=228 - (local.get $1) - (local.get $0) + (i32.store + (i32.const 208) + (i32.const -1) ) - (i32.store offset=224 - (local.get $1) - (local.get $0) + (local.set $5 + (i32.const 0) ) - (br_if $do-in72 - (i32.ne - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 1) + (loop $do-in72 + (local.set $1 + (i32.add + (local.tee $0 + (i32.shl + (local.get $5) + (i32.const 3) + ) ) + (i32.const 216) + ) + ) + (i32.store offset=228 + (local.get $0) + (local.get $1) + ) + (i32.store offset=224 + (local.get $0) + (local.get $1) + ) + (br_if $do-in72 + (i32.ne + (local.tee $5 + (i32.add + (local.get $5) + (i32.const 1) + ) + ) + (i32.const 32) ) - (i32.const 32) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $2 - (i32.add - (local.get $21) - (local.tee $0 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $2 - (i32.add - (local.get $21) - (i32.const 8) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $2) - (i32.const 7) ) ) ) ) ) - ) - (i32.store - (i32.const 188) - (local.tee $3 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) ) - (local.get $0) ) ) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $3) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $2) - (local.get $3) - ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $22 - (i32.load - (i32.const 188) - ) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $21 - (i32.sub - (local.get $22) - (local.get $8) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $12 + (i32.store offset=4 (i32.add - (local.get $8) - (local.tee $22 - (i32.load - (i32.const 200) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $21) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $22) - (i32.or - (local.get $8) - (i32.const 3) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) ) ) - (return - (i32.add - (local.get $22) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $___errno_location) + (i32.const 12) + ) + (return + (i32.const 0) + ) ) (i32.store - (call $___errno_location) - (i32.const 12) + (i32.const 188) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) + ) + (i32.store + (i32.const 200) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 200) + ) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 0) ) (func $_free (; 16 ;) (; has Stack IR ;) (param $0 i32) (local $1 i32) @@ -5786,7 +5621,7 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) @@ -5802,9 +5637,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $10 (i32.and - (local.tee $2 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5819,12 +5654,12 @@ ) (call $_abort) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $2) + (local.get $0) (i32.const -8) ) ) @@ -5832,40 +5667,34 @@ ) (if (i32.and - (local.get $2) + (local.get $0) (i32.const 1) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $3) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once (local.set $9 (i32.load - (local.get $1) + (local.get $3) ) ) (if (i32.eqz - (local.get $0) + (local.get $10) ) (return) ) - (local.set $7 - (i32.add - (local.get $7) - (local.get $9) - ) - ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) + (local.get $3) (local.get $9) ) ) @@ -5873,23 +5702,26 @@ ) (call $_abort) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 196) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $6 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5897,44 +5729,44 @@ (i32.const 3) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 184) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $6) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $6 + (local.set $10 (i32.shr_u (local.get $9) (i32.const 3) @@ -5946,22 +5778,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $2 + (local.tee $1 (i32.add (i32.shl - (local.get $6) + (local.get $10) (i32.const 3) ) (i32.const 216) @@ -5971,16 +5803,16 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $4) (local.get $13) ) (call $_abort) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $_abort) @@ -5989,8 +5821,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6002,99 +5834,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $10) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.ne - (local.get $0) + (local.get $1) (local.get $2) ) (block (if (i32.lt_u - (local.get $0) + (local.get $2) (local.get $13) ) (call $_abort) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $2) + (local.set $5 + (local.get $1) ) (call $_abort) ) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $9 (i32.add - (local.tee $2 + (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6103,84 +5935,76 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load - (local.get $2) + (local.get $5) ) ) ) ) ) - (local.set $6 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 20) - ) + (loop $while-in + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $10) ) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 16) - ) + ) + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $10) ) - (local.get $0) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) ) ) (if (i32.lt_u - (local.get $2) + (local.get $5) (local.get $13) ) (call $_abort) (block (i32.store - (local.get $2) + (local.get $5) (i32.const 0) ) - (local.set $5 - (local.get $6) + (local.set $7 + (local.get $4) ) ) ) @@ -6188,48 +6012,42 @@ (block (if (i32.lt_u - (local.tee $6 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (local.get $13) ) (call $_abort) ) - (local.set $2 - (local.get $6) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $2) + (local.get $5) ) ) (call $_abort) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $0) + (local.get $5) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $6) + (local.get $4) + (local.get $5) ) - (local.set $5 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $_abort) @@ -6237,33 +6055,32 @@ ) ) (if - (local.get $9) + (local.get $12) (block - (local.set $2 - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $2) + (local.tee $5 + (i32.shl + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $1) + (local.get $0) ) (block (i32.store offset=480 - (local.get $2) (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block (i32.store @@ -6275,17 +6092,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6294,42 +6111,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $5) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $5) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6338,8 +6152,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 192) ) @@ -6348,45 +6162,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $5) - (local.get $9) - ) - (local.set $6 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) - (local.get $0) + (local.get $4) + (local.get $5) ) (call $_abort) (block (i32.store offset=16 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=20 - (local.get $6) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) + (local.get $4) (i32.load (i32.const 192) ) @@ -6394,37 +6205,37 @@ (call $_abort) (block (i32.store offset=20 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6432,20 +6243,17 @@ ) (if (i32.ge_u - (local.get $3) - (local.get $8) + (local.get $2) + (local.get $6) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6453,637 +6261,619 @@ ) (call $_abort) ) - (local.set $4 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 200) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 188) + ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + (i32.store + (i32.const 200) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $3) - (local.get $4) + ) + (if + (i32.ne + (i32.load + (i32.const 196) ) - (local.get $4) + (local.get $2) ) - (local.get $4) + (return) ) - (block (result i32) - (if - (i32.eq + (i32.store + (i32.const 196) + (i32.const 0) + ) + (i32.store + (i32.const 184) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $1) (i32.load - (i32.const 200) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 188) - ) - ) - ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (if - (i32.ne - (i32.load - (i32.const 196) - ) - (local.get $3) - ) - (return) - ) - (i32.store - (i32.const 196) - (i32.const 0) - ) - (i32.store (i32.const 184) - (i32.const 0) ) - (return) + ) + ) + ) + (i32.store + (i32.const 196) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) (if (i32.eq - (i32.load - (i32.const 196) + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) + ) ) - (local.get $8) ) - (block - (i32.store - (i32.const 184) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 184) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 + (i32.add + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) + ) + (i32.const 4) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store - (i32.add + (local.set $1 (local.get $3) - (local.get $5) ) - (local.get $5) - ) - (return) - ) - ) - (local.set $5 - (i32.add - (local.get $4) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) - ) - (local.set $13 - (i32.shr_u - (local.get $1) - (i32.const 3) - ) - ) - (block $do-once4 - (if - (i32.ge_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $6 - (i32.load offset=24 - (local.get $8) - ) - ) - (if - (i32.eq - (local.get $8) - (local.tee $2 - (i32.load offset=12 - (local.get $8) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) ) ) - (block $do-once6 - (local.set $4 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $2 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $2 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) - (local.tee $0 - (i32.load - (local.get $2) - ) - ) + ) + ) + (loop $while-in9 + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) - (br $do-once6) - ) - ) - ) - (loop $while-in9 - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - ) - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store - (local.get $2) - (i32.const 0) - ) - (local.set $11 - (local.get $4) + (i32.const 20) ) ) ) ) (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) + (local.set $0 + (local.get $4) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 + (br $while-in9) + ) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) + (i32.const 16) ) ) - (call $_abort) + ) + ) + (block + (local.set $0 + (local.get $4) ) (local.set $1 - (local.get $2) + (local.get $3) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $4) - (local.get $2) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $2) - ) - ) - (call $_abort) + (br $while-in9) + ) + ) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) + ) + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) ) ) + (i32.load + (i32.const 192) + ) ) - (if + (call $_abort) + ) + (if + (i32.ne (local.get $6) - (block - (local.set $0 + (i32.load offset=12 + (local.get $1) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $_abort) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load offset=480 + (local.tee $1 (i32.shl - (local.tee $2 + (local.tee $0 (i32.load offset=28 - (local.get $8) + (local.get $6) ) ) (i32.const 2) ) ) - (if - (i32.eq - (i32.load offset=480 - (local.get $0) - ) - (local.get $8) - ) - (block - (i32.store offset=480 - (local.get $0) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $2) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 192) - ) + ) + (local.get $6) + ) + (block + (i32.store offset=480 + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) ) - (call $_abort) - ) - (local.set $0 - (local.get $6) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 + (i32.xor + (i32.shl + (i32.const 1) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $6) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) + (i32.const -1) ) ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $11) - (local.tee $2 - (i32.load - (i32.const 192) - ) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 192) ) - (call $_abort) ) - (i32.store offset=24 - (local.get $11) + (call $_abort) + ) + (if + (i32.eq (local.get $6) + (i32.load offset=16 + (local.get $7) + ) ) - (local.set $0 + (i32.store offset=16 + (local.get $7) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $2) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) ) ) ) - (block - (local.set $2 - (i32.load offset=12 - (local.get $8) - ) - ) - (if - (i32.ne - (local.tee $1 - (i32.load offset=8 - (local.get $8) - ) - ) - (local.tee $6 - (i32.add - (i32.shl - (local.get $13) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 192) ) ) - (block - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $1) - ) - ) - (call $_abort) - ) + ) + (call $_abort) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) ) ) (if - (i32.eq + (i32.lt_u + (local.get $0) (local.get $1) - (local.get $2) ) + (call $_abort) (block - (i32.store - (i32.const 176) - (i32.and - (i32.load - (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $13) - ) - (i32.const -1) - ) - ) + (i32.store offset=16 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) - (br $do-once4) ) ) - (if - (i32.ne - (local.get $2) + ) + (if + (local.tee $0 + (i32.load offset=20 (local.get $6) ) - (block - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $6 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) - ) - ) - (local.set $15 - (local.get $6) - ) - (call $_abort) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 192) ) ) - (local.set $15 - (i32.add - (local.get $2) - (i32.const 8) + (call $_abort) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) - (i32.store offset=12 - (local.get $1) - (local.get $2) - ) - (i32.store - (local.get $15) - (local.get $1) - ) ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) ) ) - (i32.store - (i32.add - (local.get $3) - (local.get $5) + (if + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) + ) + (i32.const 216) + ) + ) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $3) + ) + ) + (call $_abort) + ) ) - (local.get $5) ) - (if (result i32) + (if (i32.eq - (i32.load - (i32.const 196) - ) + (local.get $1) (local.get $3) ) (block (i32.store - (i32.const 184) - (local.get $5) + (i32.const 176) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) + ) + (i32.const -1) + ) + ) ) - (return) + (br $do-once4) ) + ) + (if + (i32.ne + (local.get $0) + (local.get $1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (local.set $14 + (local.get $0) + ) + (call $_abort) + ) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + (i32.store offset=12 + (local.get $3) + (local.get $1) + ) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) + ) + (block + (i32.store + (i32.const 184) (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $4) + (local.get $3) (i32.const 3) ) (i32.const 216) @@ -7091,25 +6881,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 176) ) ) - (local.tee $5 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $4) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7121,11 +6911,11 @@ ) (call $_abort) (block - (local.set $14 - (local.get $4) + (local.set $15 + (local.get $1) ) - (local.set $12 - (local.get $15) + (local.set $11 + (local.get $3) ) ) ) @@ -7133,71 +6923,71 @@ (i32.store (i32.const 176) (i32.or - (local.get $5) - (local.get $7) + (local.get $1) + (local.get $3) ) ) - (local.set $14 + (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $12 - (local.get $1) + (local.set $11 + (local.get $0) ) ) ) (i32.store - (local.get $14) - (local.get $3) + (local.get $15) + (local.get $2) ) (i32.store offset=12 - (local.get $12) - (local.get $3) + (local.get $11) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $12) + (local.get $2) + (local.get $11) ) (i32.store offset=12 - (local.get $3) - (local.get $1) + (local.get $2) + (local.get $0) ) (return) ) ) - (local.set $7 + (local.set $4 (i32.add - (local.tee $1 + (local.tee $3 (i32.shl - (local.tee $4 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $14 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $12 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7217,21 +7007,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $7 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $14 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $5 + (local.tee $4 (i32.shl - (local.get $14) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7242,15 +7032,15 @@ ) ) (i32.or - (local.get $1) - (local.get $12) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl + (local.get $4) (local.get $5) - (local.get $14) ) (i32.const 15) ) @@ -7262,7 +7052,7 @@ (i32.const 1) ) (i32.shl - (local.get $7) + (local.get $0) (i32.const 1) ) ) @@ -7278,54 +7068,54 @@ ) ) (i32.store offset=28 - (local.get $3) - (local.get $4) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $3) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $3) + (local.get $2) (i32.const 0) ) (if (i32.and (local.tee $5 - (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $14 (i32.load (i32.const 180) ) ) + (local.tee $7 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $12 + (local.set $11 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $4) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $4) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 - (local.get $1) + (local.get $3) ) ) (if @@ -7335,17 +7125,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block (local.set $16 - (local.get $1) + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7353,17 +7143,17 @@ ) ) (if (result i32) - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $15 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $12) + (local.get $11) (i32.const 31) ) (i32.const 2) @@ -7373,23 +7163,23 @@ ) ) (block - (local.set $12 + (local.set $11 (i32.shl - (local.get $12) + (local.get $11) (i32.const 1) ) ) - (local.set $1 - (local.get $4) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) (local.set $17 - (local.get $15) + (local.get $4) ) (local.set $18 - (local.get $1) + (local.get $0) ) (i32.const 127) ) @@ -7410,19 +7200,19 @@ (block (i32.store (local.get $17) - (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) + (local.get $2) (local.get $18) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) @@ -7431,53 +7221,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $16) - ) - (if - (i32.and - (i32.ge_u - (local.tee $12 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $12) - (local.get $3) - ) - (i32.store offset=8 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $12) - ) - (i32.store offset=12 - (local.get $3) - (local.get $16) - ) - (i32.store offset=24 - (local.get $3) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) ) - (call $_abort) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $_abort) ) ) ) @@ -7487,30 +7274,30 @@ (i32.const 180) (i32.or (local.get $5) - (local.get $14) + (local.get $7) ) ) (i32.store offset=480 - (local.get $1) (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) - (local.get $7) + (local.get $2) + (local.get $4) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) (i32.store (i32.const 208) - (local.tee $3 + (local.tee $0 (i32.add (i32.load (i32.const 208) @@ -7521,14 +7308,14 @@ ) (local.set $0 (if (result i32) - (local.get $3) + (local.get $0) (return) (i32.const 632) ) ) (loop $while-in17 (if - (local.tee $3 + (local.tee $0 (i32.load (local.get $0) ) @@ -7536,7 +7323,7 @@ (block (local.set $0 (i32.add - (local.get $3) + (local.get $0) (i32.const 8) ) ) @@ -7561,9 +7348,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -7574,129 +7359,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 8) - ) - (block (result i32) - (call $_pthread_cleanup_push - (i32.const 4) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $_pthread_cleanup_pop - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 8) + ) + (block + (call $_pthread_cleanup_push + (i32.const 4) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $_pthread_cleanup_pop + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7706,123 +7485,125 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $14 + (local.set $12 (local.get $1) ) - (local.set $15 - (local.get $3) + (local.set $13 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.le_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (if - (i32.eq - (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) + (local.set $5 + (if (result i32) + (i32.le_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) ) ) ) - (local.set $3 - (i32.const 2) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) - ) - ) - (local.set $9 - (local.get $4) - ) - ) - (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) - ) - ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) ) ) - (local.set $3 - (i32.add + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const -1) ) ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) - (local.set $13 + (local.set $11 (if (result i32) (i32.eq (local.get $1) @@ -7832,9 +7613,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7844,11 +7625,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7881,26 +7662,26 @@ ) (if (result i32) (i32.eq - (local.get $15) + (local.get $13) (i32.const 2) ) (i32.const 0) (i32.sub (local.get $2) (i32.load offset=4 - (local.get $14) + (local.get $12) ) ) ) ) - (local.get $13) + (local.get $11) ) ) ) (global.set $STACKTOP - (local.get $10) + (local.get $9) ) - (local.get $13) + (local.get $11) ) (func $___fwritex (; 18 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7908,14 +7689,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 672) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7923,7 +7700,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7932,13 +7709,13 @@ (call $___towrite (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7946,15 +7723,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$L5 (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -7982,9 +7759,6 @@ (br $label$break$L5) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8011,7 +7785,7 @@ (if (i32.ne (i32.load8_s offset=672 - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8022,7 +7796,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8053,35 +7827,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 672) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $_memcpy - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8097,10 +7868,9 @@ ) (func $_fflush (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) (if (local.get $0) - (local.set $1 + (local.set $0 (block $do-once (result i32) (if (i32.le_s @@ -8143,56 +7913,45 @@ (i32.const 32) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) + (loop $while-in + (drop + (i32.load offset=76 + (local.get $1) + ) ) - (loop $while-in - (drop - (i32.load offset=76 - (local.get $2) + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - ) - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) ) - (local.set $1 - (i32.or - (call $___fflush_unlocked - (local.get $2) - ) + ) + (local.set $0 + (i32.or + (call $___fflush_unlocked (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $___unlock (i32.const 36) ) ) ) - (local.get $1) + (local.get $0) ) (func $_strlen (; 20 ;) (; has Stack IR ;) (result i32) (local $0 i32) @@ -8204,48 +7963,48 @@ (i32.const 672) ) (block - (local.set $1 + (local.set $4 (i32.const 672) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8256,28 +8015,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8285,7 +8033,7 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 672) ) @@ -8298,7 +8046,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) (local.set $3 (global.get $STACKTOP) ) @@ -8314,18 +8061,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8335,13 +8079,13 @@ (call $___towrite (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8355,15 +8099,12 @@ (local.get $6) (i32.const 4) ) - (local.set $1 + (local.set $2 (block $do-once (result i32) - (local.set $1 - (local.get $0) - ) (if (if (result i32) (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=20 (local.get $0) ) @@ -8371,7 +8112,7 @@ (local.get $5) ) (i32.ne - (local.tee $8 + (local.tee $7 (i32.const 10) ) (i32.load8_s offset=75 @@ -8382,18 +8123,18 @@ ) (block (i32.store offset=20 - (local.get $1) + (local.get $0) (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (i32.store8 - (local.get $2) + (local.get $1) (i32.const 10) ) (br $do-once - (local.get $8) + (local.get $7) ) ) ) @@ -8426,7 +8167,7 @@ (global.set $STACKTOP (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $___fflush_unlocked (; 22 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -9115,7 +8856,7 @@ (i32.const -1) ) ) - (local.set $3 + (local.set $0 (call $___stdio_write (local.get $0) (local.get $1) @@ -9125,7 +8866,7 @@ (global.set $STACKTOP (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $___stdio_close (; 31 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/emcc_O2_hello_world.fromasm.clamp b/test/emcc_O2_hello_world.fromasm.clamp index 2ea71d54e..0c0c148a1 100644 --- a/test/emcc_O2_hello_world.fromasm.clamp +++ b/test/emcc_O2_hello_world.fromasm.clamp @@ -99,11 +99,6 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) (if (i32.lt_u (local.get $0) @@ -112,16 +107,16 @@ (block (if (i32.and - (local.tee $2 + (local.tee $5 (i32.shr_u - (local.tee $15 + (local.tee $18 (i32.load (i32.const 176) ) ) (local.tee $6 (i32.shr_u - (local.tee $8 + (local.tee $4 (select (i32.const 16) (i32.and @@ -145,74 +140,69 @@ (i32.const 3) ) (block - (local.set $8 - (local.tee $1 - (i32.add - (i32.shl - (local.tee $6 - (i32.add - (local.get $6) - (i32.xor - (i32.and - (local.get $2) - (i32.const 1) + (local.set $0 + (i32.load + (local.tee $6 + (i32.add + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $6) + (i32.xor + (i32.and + (local.get $5) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const 1) ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne + (local.get $0) (local.get $1) - (local.tee $7 - (i32.load - (local.tee $17 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) - ) - ) - ) ) (block (if (i32.lt_u - (local.get $7) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $2 - (local.get $7) - ) (if (i32.eq - (local.get $0) + (local.get $4) (i32.load offset=12 - (local.get $2) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $2) + (local.get $0) (local.get $1) ) (i32.store offset=8 - (local.get $8) - (local.get $7) + (local.get $1) + (local.get $0) ) ) (call $_abort) @@ -224,34 +214,33 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $4) (i32.or - (local.tee $7 + (local.tee $0 (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $0) - (local.get $7) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $4) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -260,14 +249,14 @@ ) ) (return - (local.get $17) + (local.get $6) ) ) ) (if (i32.gt_u - (local.get $8) - (local.tee $5 + (local.get $4) + (local.tee $0 (i32.load (i32.const 184) ) @@ -275,12 +264,12 @@ ) (block (if - (local.get $2) + (local.get $5) (block (local.set $1 (i32.and (i32.shr_u - (local.tee $7 + (local.tee $3 (i32.add (i32.and (i32.sub @@ -290,17 +279,17 @@ (i32.or (i32.sub (i32.const 0) - (local.tee $7 + (local.tee $1 (i32.shl (i32.const 2) (local.get $6) ) ) ) - (local.get $7) + (local.get $1) ) (i32.shl - (local.get $2) + (local.get $5) (local.get $6) ) ) @@ -316,12 +305,12 @@ (i32.const 16) ) ) - (local.set $7 + (local.set $3 (i32.and (i32.shr_u - (local.tee $10 + (local.tee $6 (i32.shr_u - (local.get $7) + (local.get $3) (local.get $1) ) ) @@ -330,13 +319,13 @@ (i32.const 8) ) ) - (local.set $10 + (local.set $6 (i32.and (i32.shr_u - (local.tee $0 + (local.tee $2 (i32.shr_u - (local.get $10) - (local.get $7) + (local.get $6) + (local.get $3) ) ) (i32.const 2) @@ -344,13 +333,13 @@ (i32.const 4) ) ) - (local.set $0 + (local.set $2 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $5 (i32.shr_u - (local.get $0) - (local.get $10) + (local.get $2) + (local.get $6) ) ) (i32.const 1) @@ -358,67 +347,65 @@ (i32.const 2) ) ) - (local.set $6 - (local.tee $11 - (i32.add - (i32.shl - (local.tee $7 - (i32.add - (i32.or - (local.tee $11 - (i32.and - (i32.shr_u - (local.tee $19 + (local.set $1 + (i32.load + (local.tee $10 + (i32.add + (local.tee $6 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $2 + (i32.add + (i32.or + (local.tee $10 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $5) + (local.get $2) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $2) + (i32.or + (local.get $6) + (i32.or + (local.get $1) + (local.get $3) + ) + ) + ) + ) (i32.shr_u - (local.get $11) - (local.get $0) + (local.get $5) + (local.get $10) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $0) - (i32.or - (local.get $10) - (i32.or - (local.get $1) - (local.get $7) ) + (i32.const 3) ) + (i32.const 216) ) ) - (i32.shr_u - (local.get $19) - (local.get $11) - ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne - (local.tee $1 - (i32.load - (local.tee $10 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $6) - ) - ) - (i32.const 8) - ) - ) - ) - ) - (local.get $11) + (local.get $1) + (local.get $3) ) (block (if @@ -430,26 +417,23 @@ ) (call $_abort) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $0) + (local.get $6) (i32.load offset=12 (local.get $1) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $11) + (local.get $1) + (local.get $3) ) (i32.store offset=8 - (local.get $6) + (local.get $3) (local.get $1) ) - (local.set $17 + (local.set $13 (i32.load (i32.const 184) ) @@ -465,40 +449,40 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $7) + (local.get $2) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) - (local.set $17 - (local.get $5) + (local.set $13 + (local.get $0) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.tee $15 + (local.tee $5 (i32.add - (local.get $0) - (local.get $8) + (local.get $4) + (local.get $6) ) ) (i32.or - (local.tee $5 + (local.tee $6 (i32.sub (i32.shl - (local.get $7) + (local.get $2) (i32.const 3) ) - (local.get $8) + (local.get $4) ) ) (i32.const 1) @@ -507,24 +491,24 @@ (i32.store (i32.add (local.get $5) - (local.get $15) + (local.get $6) ) - (local.get $5) + (local.get $6) ) (if - (local.get $17) + (local.get $13) (block - (local.set $1 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.tee $19 + (local.tee $1 (i32.shr_u - (local.get $17) + (local.get $13) (i32.const 3) ) ) @@ -535,25 +519,25 @@ ) (if (i32.and - (local.tee $6 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $2 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $19) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $17 + (local.tee $4 (i32.load - (local.tee $19 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -565,11 +549,11 @@ ) (call $_abort) (block - (local.set $37 - (local.get $19) + (local.set $25 + (local.get $1) ) - (local.set $31 - (local.get $17) + (local.set $8 + (local.get $4) ) ) ) @@ -577,46 +561,46 @@ (i32.store (i32.const 176) (i32.or - (local.get $2) - (local.get $6) + (local.get $1) + (local.get $4) ) ) - (local.set $37 + (local.set $25 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $31 - (local.get $11) + (local.set $8 + (local.get $0) ) ) ) (i32.store - (local.get $37) - (local.get $1) + (local.get $25) + (local.get $3) ) (i32.store offset=12 - (local.get $31) - (local.get $1) + (local.get $8) + (local.get $3) ) (i32.store offset=8 - (local.get $1) - (local.get $31) + (local.get $3) + (local.get $8) ) (i32.store offset=12 - (local.get $1) - (local.get $11) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $5) + (local.get $6) ) (i32.store (i32.const 196) - (local.get $15) + (local.get $5) ) (return (local.get $10) @@ -624,23 +608,23 @@ ) ) (if - (local.tee $15 + (local.tee $0 (i32.load (i32.const 180) ) ) (block - (local.set $15 + (local.set $0 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $1 (i32.add (i32.and (i32.sub (i32.const 0) - (local.get $15) + (local.get $0) ) - (local.get $15) + (local.get $0) ) (i32.const -1) ) @@ -650,13 +634,13 @@ (i32.const 16) ) ) - (local.set $5 + (local.set $1 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $3 (i32.shr_u - (local.get $5) - (local.get $15) + (local.get $1) + (local.get $0) ) ) (i32.const 5) @@ -664,13 +648,13 @@ (i32.const 8) ) ) - (local.set $11 + (local.set $3 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $6 (i32.shr_u - (local.get $11) - (local.get $5) + (local.get $3) + (local.get $1) ) ) (i32.const 2) @@ -678,13 +662,13 @@ (i32.const 4) ) ) - (local.set $1 + (local.set $6 (i32.and (i32.shr_u - (local.tee $2 + (local.tee $8 (i32.shr_u - (local.get $1) - (local.get $11) + (local.get $6) + (local.get $3) ) ) (i32.const 1) @@ -692,22 +676,22 @@ (i32.const 2) ) ) - (local.set $2 + (local.set $5 (i32.sub (i32.and (i32.load offset=4 - (local.tee $17 + (local.tee $1 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $2 + (local.tee $5 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $8 (i32.shr_u - (local.get $2) - (local.get $1) + (local.get $8) + (local.get $6) ) ) (i32.const 1) @@ -716,19 +700,19 @@ ) ) (i32.or - (local.get $1) + (local.get $6) (i32.or - (local.get $11) + (local.get $3) (i32.or - (local.get $5) - (local.get $15) + (local.get $0) + (local.get $1) ) ) ) ) (i32.shr_u - (local.get $6) - (local.get $2) + (local.get $8) + (local.get $5) ) ) (i32.const 2) @@ -738,70 +722,67 @@ ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.set $1 - (local.tee $6 - (local.get $17) - ) + (local.set $0 + (local.get $1) ) (loop $while-in (block $while-out - (local.set $11 + (if + (local.tee $3 + (i32.load offset=16 + (local.get $1) + ) + ) + (local.set $1 + (local.get $3) + ) + (if + (i32.eqz + (local.tee $1 + (i32.load offset=20 + (local.get $1) + ) + ) + ) + (block + (local.set $8 + (local.get $0) + ) + (br $while-out) + ) + ) + ) + (local.set $3 (i32.lt_u - (local.tee $17 + (local.tee $6 (i32.sub (i32.and (i32.load offset=4 - (local.tee $6 - (if (result i32) - (local.tee $17 - (i32.load offset=16 - (local.get $6) - ) - ) - (local.get $17) - (if (result i32) - (local.tee $11 - (i32.load offset=20 - (local.get $6) - ) - ) - (local.get $11) - (block - (local.set $9 - (local.get $2) - ) - (local.set $5 - (local.get $1) - ) - (br $while-out) - ) - ) - ) - ) + (local.get $1) ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.get $2) + (local.get $5) ) ) - (local.set $2 + (local.set $5 (select - (local.get $17) - (local.get $2) - (local.get $11) + (local.get $6) + (local.get $5) + (local.get $3) ) ) - (local.set $1 + (local.set $0 (select - (local.get $6) (local.get $1) - (local.get $11) + (local.get $0) + (local.get $3) ) ) (br $while-in) @@ -809,8 +790,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $1 + (local.get $8) + (local.tee $18 (i32.load (i32.const 192) ) @@ -820,104 +801,98 @@ ) (if (i32.ge_u - (local.get $5) - (local.tee $6 + (local.get $8) + (local.tee $14 (i32.add - (local.get $5) + (local.get $4) (local.get $8) ) ) ) (call $_abort) ) - (local.set $2 + (local.set $10 (i32.load offset=24 - (local.get $5) + (local.get $8) ) ) (if (i32.eq - (local.tee $10 + (local.get $8) + (local.tee $0 (i32.load offset=12 - (local.get $5) + (local.get $8) ) ) - (local.get $5) ) (block $do-once4 - (local.set $4 - (if (result i32) - (local.tee $7 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $0 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $7) - ) - (local.get $0) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $11 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 16) ) ) ) ) - (local.get $11) - (br $do-once4) ) ) ) (loop $while-in7 (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) ) (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) @@ -925,17 +900,17 @@ ) (if (i32.lt_u - (local.get $4) (local.get $1) + (local.get $18) ) (call $_abort) (block (i32.store - (local.get $4) + (local.get $1) (i32.const 0) ) - (local.set $19 - (local.get $17) + (local.set $2 + (local.get $0) ) ) ) @@ -943,48 +918,42 @@ (block (if (i32.lt_u - (local.tee $0 + (local.tee $1 (i32.load offset=8 - (local.get $5) + (local.get $8) ) ) - (local.get $1) + (local.get $18) ) (call $_abort) ) - (local.set $1 - (local.get $0) - ) (if (i32.ne - (local.get $5) + (local.get $8) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $10) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=8 - (local.get $7) + (local.get $0) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $10) + (local.get $0) ) (i32.store offset=8 - (local.get $7) (local.get $0) + (local.get $1) ) - (local.set $19 - (local.get $10) + (local.set $2 + (local.get $0) ) ) (call $_abort) @@ -992,33 +961,32 @@ ) ) (if - (local.get $2) + (local.get $10) (block $do-once8 - (local.set $0 - (i32.shl - (local.tee $10 - (i32.load offset=28 - (local.get $5) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $5) + (local.get $8) ) (block (i32.store offset=480 - (local.get $0) - (local.get $19) + (local.get $1) + (local.get $2) ) (if (i32.eqz - (local.get $19) + (local.get $2) ) (block (i32.store @@ -1030,7 +998,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $10) + (local.get $0) ) (i32.const -1) ) @@ -1043,43 +1011,40 @@ (block (if (i32.lt_u - (local.get $2) + (local.get $10) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $2) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=16 - (local.get $0) + (local.get $10) ) ) (i32.store offset=16 - (local.get $0) - (local.get $19) + (local.get $10) + (local.get $2) ) (i32.store offset=20 + (local.get $10) (local.get $2) - (local.get $19) ) ) (br_if $do-once8 (i32.eqz - (local.get $19) + (local.get $2) ) ) ) ) (if (i32.lt_u - (local.get $19) - (local.tee $10 + (local.get $2) + (local.tee $1 (i32.load (i32.const 192) ) @@ -1088,42 +1053,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $19) (local.get $2) + (local.get $10) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u + (local.get $0) (local.get $1) - (local.get $10) ) (call $_abort) (block (i32.store offset=16 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=20 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u - (local.get $1) + (local.get $0) (i32.load (i32.const 192) ) @@ -1131,12 +1096,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) @@ -1145,30 +1110,29 @@ ) (if (i32.lt_u - (local.get $9) + (local.get $5) (i32.const 16) ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.tee $2 + (local.tee $0 (i32.add - (local.get $8) - (local.get $9) + (local.get $4) + (local.get $5) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $2) - (local.get $5) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $8) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -1179,44 +1143,44 @@ ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $14) (i32.or - (local.get $9) + (local.get $5) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $9) + (local.get $5) + (local.get $14) ) - (local.get $9) + (local.get $5) ) (if - (local.tee $1 + (local.tee $0 (i32.load (i32.const 184) ) ) (block - (local.set $2 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.tee $10 + (local.tee $1 (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 3) ) ) @@ -1227,25 +1191,25 @@ ) (if (i32.and - (local.tee $0 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $11 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $10) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $4 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -1257,11 +1221,11 @@ ) (call $_abort) (block - (local.set $38 - (local.get $10) + (local.set $19 + (local.get $1) ) - (local.set $32 - (local.get $7) + (local.set $7 + (local.get $4) ) ) ) @@ -1269,52 +1233,52 @@ (i32.store (i32.const 176) (i32.or - (local.get $0) - (local.get $11) + (local.get $1) + (local.get $4) ) ) - (local.set $38 + (local.set $19 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $32 - (local.get $1) + (local.set $7 + (local.get $0) ) ) ) (i32.store - (local.get $38) - (local.get $2) + (local.get $19) + (local.get $3) ) (i32.store offset=12 - (local.get $32) - (local.get $2) + (local.get $7) + (local.get $3) ) (i32.store offset=8 - (local.get $2) - (local.get $32) + (local.get $3) + (local.get $7) ) (i32.store offset=12 - (local.get $2) - (local.get $1) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $9) + (local.get $5) ) (i32.store (i32.const 196) - (local.get $6) + (local.get $14) ) ) ) (return (i32.add - (local.get $5) + (local.get $8) (i32.const 8) ) ) @@ -1323,16 +1287,16 @@ ) ) ) - (local.set $8 + (local.set $4 (if (result i32) (i32.le_u (local.get $0) (i32.const -65) ) (block $do-once (result i32) - (local.set $2 + (local.set $5 (i32.and - (local.tee $1 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1342,162 +1306,157 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $39 (i32.load (i32.const 180) ) ) (block (result i32) - (local.set $0 - (i32.sub - (i32.const 0) - (local.get $2) - ) - ) - (if - (local.tee $15 - (i32.load offset=480 - (i32.shl - (local.tee $8 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $1) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $2) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $10 - (i32.shl - (local.get $7) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) + (local.set $19 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $0) + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) + (i32.const 16) ) - (i32.const 520192) + (i32.const 8) ) - (i32.const 16) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $2) - (i32.add - (local.tee $15 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $10 - (i32.and - (i32.shr_u - (i32.add - (local.tee $17 - (i32.shl - (local.get $10) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $8) + (local.get $0) ) ) - (i32.or - (local.get $1) - (local.get $7) - ) + (i32.const 245760) ) + (i32.const 16) ) - (i32.shr_u - (i32.shl - (local.get $17) - (local.get $10) - ) - (i32.const 15) - ) + (i32.const 2) ) ) - (i32.const 7) + (i32.or + (local.get $0) + (local.get $2) + ) ) ) - (i32.const 1) - ) - (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $8) + (local.get $7) + ) + (i32.const 15) + ) ) ) + (i32.const 7) ) ) - (i32.const 0) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) ) + ) + ) + (i32.const 0) + ) + ) + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $5) + ) + ) + (if + (local.tee $7 + (i32.load offset=480 + (i32.shl + (local.get $19) (i32.const 2) ) ) ) (block $label$break$L123 - (local.set $10 - (local.get $0) - ) - (local.set $17 - (i32.const 0) - ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $2) + (local.get $5) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $8) + (local.get $19) (i32.const 1) ) ) (i32.eq - (local.get $8) + (local.get $19) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $15) + (local.set $8 + (i32.const 0) ) - (local.set $6 + (local.set $18 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $0 + (local.tee $13 (i32.sub - (local.tee $19 + (local.tee $9 (i32.and (i32.load offset=4 (local.get $7) @@ -1505,55 +1464,54 @@ (i32.const -8) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $10) + (local.get $2) ) - (local.set $5 + (local.set $2 (if (result i32) (i32.eq - (local.get $2) - (local.get $19) + (local.get $5) + (local.get $9) ) (block - (local.set $28 - (local.get $0) + (local.set $4 + (local.get $13) ) - (local.set $25 + (local.set $20 (local.get $7) ) - (local.set $29 + (local.set $6 (local.get $7) ) - (local.set $10 + (local.set $9 (i32.const 90) ) (br $label$break$L123) ) (block (result i32) - (local.set $10 - (local.get $0) + (local.set $8 + (local.get $7) ) - (local.get $7) + (local.get $13) ) ) ) ) - (local.set $19 + (local.set $13 (select - (local.get $17) - (local.tee $0 + (local.get $25) + (local.tee $13 (i32.load offset=20 (local.get $7) ) ) (i32.or (i32.eqz - (local.get $0) + (local.get $13) ) (i32.eq - (local.get $0) (local.tee $7 (i32.load (i32.add @@ -1563,7 +1521,7 @@ ) (i32.shl (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 31) ) (i32.const 2) @@ -1571,40 +1529,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $0 + (local.tee $9 (i32.eqz (local.get $7) ) ) (block (result i32) - (local.set $33 - (local.get $10) + (local.set $21 + (local.get $13) ) - (local.set $30 - (local.get $5) + (local.set $26 + (local.get $8) ) - (local.set $10 + (local.set $9 (i32.const 86) ) - (local.get $19) + (local.get $2) ) (block - (local.set $17 - (local.get $19) + (local.set $25 + (local.get $13) ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $1) + (local.get $0) (i32.xor - (i32.and - (local.get $0) - (i32.const 1) - ) + (local.get $9) (i32.const 1) ) ) @@ -1616,47 +1572,47 @@ ) ) (block - (local.set $33 - (local.get $0) + (local.set $18 + (local.get $2) ) - (local.set $10 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 86) ) (block (if (i32.eqz (i32.or - (local.get $6) - (local.get $30) + (local.get $21) + (local.get $26) ) ) (block (drop (br_if $do-once - (local.get $2) + (local.get $5) (i32.eqz (local.tee $0 (i32.and (i32.or (i32.sub (i32.const 0) - (local.tee $15 + (local.tee $0 (i32.shl (i32.const 2) - (local.get $8) + (local.get $19) ) ) ) - (local.get $15) + (local.get $0) ) - (local.get $11) + (local.get $39) ) ) ) @@ -1665,7 +1621,7 @@ (local.set $0 (i32.and (i32.shr_u - (local.tee $15 + (local.tee $2 (i32.add (i32.and (i32.sub @@ -1682,12 +1638,12 @@ (i32.const 16) ) ) - (local.set $15 + (local.set $2 (i32.and (i32.shr_u (local.tee $8 (i32.shr_u - (local.get $15) + (local.get $2) (local.get $0) ) ) @@ -1699,10 +1655,10 @@ (local.set $8 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $7 (i32.shr_u (local.get $8) - (local.get $15) + (local.get $2) ) ) (i32.const 2) @@ -1710,12 +1666,12 @@ (i32.const 4) ) ) - (local.set $6 + (local.set $7 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $13 (i32.shr_u - (local.get $6) + (local.get $7) (local.get $8) ) ) @@ -1724,18 +1680,18 @@ (i32.const 2) ) ) - (local.set $6 + (local.set $21 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $5 + (local.tee $21 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $13 (i32.shr_u - (local.get $5) - (local.get $6) + (local.get $13) + (local.get $7) ) ) (i32.const 1) @@ -1744,19 +1700,19 @@ ) ) (i32.or - (local.get $6) + (local.get $7) (i32.or (local.get $8) (i32.or (local.get $0) - (local.get $15) + (local.get $2) ) ) ) ) (i32.shr_u - (local.get $1) - (local.get $5) + (local.get $13) + (local.get $21) ) ) (i32.const 2) @@ -1766,27 +1722,27 @@ ) ) (if - (local.get $6) + (local.get $21) (block - (local.set $28 - (local.get $33) + (local.set $4 + (local.get $18) ) - (local.set $25 - (local.get $6) + (local.set $20 + (local.get $21) ) - (local.set $29 - (local.get $30) + (local.set $6 + (local.get $26) ) - (local.set $10 + (local.set $9 (i32.const 90) ) ) (block - (local.set $4 - (local.get $33) + (local.set $11 + (local.get $18) ) - (local.set $13 - (local.get $30) + (local.set $12 + (local.get $26) ) ) ) @@ -1794,98 +1750,81 @@ ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 90) ) - (local.set $4 + (local.set $11 (loop $while-in16 (result i32) - (local.set $10 + (local.set $9 (i32.const 0) ) - (local.set $1 + (local.set $0 (i32.lt_u - (local.tee $5 + (local.tee $2 (i32.sub (i32.and (i32.load offset=4 - (local.get $25) + (local.get $20) ) (i32.const -8) ) - (local.get $2) + (local.get $5) ) ) - (local.get $28) + (local.get $4) ) ) - (local.set $6 + (local.set $4 (select - (local.get $5) - (local.get $28) - (local.get $1) + (local.get $2) + (local.get $4) + (local.get $0) ) ) - (local.set $5 + (local.set $6 (select - (local.get $25) - (local.get $29) - (local.get $1) + (local.get $20) + (local.get $6) + (local.get $0) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $25) + (local.get $20) ) ) (block - (local.set $28 - (local.get $6) - ) - (local.set $25 - (local.get $1) - ) - (local.set $29 - (local.get $5) + (local.set $20 + (local.get $0) ) (br $while-in16) ) ) - (if (result i32) - (local.tee $25 + (br_if $while-in16 + (local.tee $20 (i32.load offset=20 - (local.get $25) + (local.get $20) ) ) - (block - (local.set $28 - (local.get $6) - ) - (local.set $29 - (local.get $5) - ) - (br $while-in16) - ) - (block (result i32) - (local.set $13 - (local.get $5) - ) - (local.get $6) - ) ) + (local.set $12 + (local.get $6) + ) + (local.get $4) ) ) ) (if (result i32) (if (result i32) - (local.get $13) + (local.get $12) (i32.lt_u - (local.get $4) + (local.get $11) (i32.sub (i32.load (i32.const 184) ) - (local.get $2) + (local.get $5) ) ) (i32.const 0) @@ -1893,8 +1832,8 @@ (block (if (i32.lt_u - (local.get $13) - (local.tee $11 + (local.get $12) + (local.tee $8 (i32.load (i32.const 192) ) @@ -1904,11 +1843,11 @@ ) (if (i32.ge_u - (local.get $13) - (local.tee $5 + (local.get $12) + (local.tee $2 (i32.add - (local.get $2) - (local.get $13) + (local.get $5) + (local.get $12) ) ) ) @@ -1916,92 +1855,86 @@ ) (local.set $6 (i32.load offset=24 - (local.get $13) + (local.get $12) ) ) (if (i32.eq - (local.tee $1 + (local.get $12) + (local.tee $0 (i32.load offset=12 - (local.get $13) + (local.get $12) ) ) - (local.get $13) ) (block $do-once17 - (local.set $1 - (if (result i32) + (if + (i32.eqz (local.tee $0 (i32.load - (local.tee $8 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $0) - ) - (local.get $8) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $15 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 16) ) ) ) ) - (local.get $15) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) @@ -2010,7 +1943,7 @@ (if (i32.lt_u (local.get $1) - (local.get $11) + (local.get $8) ) (call $_abort) (block @@ -2018,8 +1951,8 @@ (local.get $1) (i32.const 0) ) - (local.set $9 - (local.get $17) + (local.set $15 + (local.get $0) ) ) ) @@ -2027,49 +1960,43 @@ (block (if (i32.lt_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $13) + (local.get $12) ) ) - (local.get $11) + (local.get $8) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.ne - (local.get $13) + (local.get $12) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $1) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $0) (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $7) - (local.get $8) - ) - (local.set $9 + (local.get $0) (local.get $1) ) + (local.set $15 + (local.get $0) + ) ) (call $_abort) ) @@ -2078,31 +2005,30 @@ (if (local.get $6) (block $do-once21 - (local.set $0 - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $13) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $12) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $13) + (local.get $12) ) (block (i32.store offset=480 - (local.get $0) - (local.get $9) + (local.get $1) + (local.get $15) ) (if (i32.eqz - (local.get $9) + (local.get $15) ) (block (i32.store @@ -2114,7 +2040,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $1) + (local.get $0) ) (i32.const -1) ) @@ -2134,35 +2060,32 @@ ) (call $_abort) ) - (local.set $0 - (local.get $6) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=16 - (local.get $0) + (local.get $6) ) ) (i32.store offset=16 - (local.get $0) - (local.get $9) + (local.get $6) + (local.get $15) ) (i32.store offset=20 (local.get $6) - (local.get $9) + (local.get $15) ) ) (br_if $do-once21 (i32.eqz - (local.get $9) + (local.get $15) ) ) ) ) (if (i32.lt_u - (local.get $9) + (local.get $15) (local.tee $1 (i32.load (i32.const 192) @@ -2172,42 +2095,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $9) + (local.get $15) (local.get $6) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=16 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (local.get $1) ) (call $_abort) (block (i32.store offset=16 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=20 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (i32.load (i32.const 192) ) @@ -2215,12 +2138,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) @@ -2229,47 +2152,47 @@ ) (if (i32.ge_u - (local.get $4) + (local.get $11) (i32.const 16) ) (block $do-once25 (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.get $2) + (local.get $5) (i32.const 3) ) ) (i32.store offset=4 - (local.get $5) + (local.get $2) (i32.or - (local.get $4) + (local.get $11) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $5) + (local.get $2) + (local.get $11) ) - (local.get $4) + (local.get $11) ) - (local.set $6 + (local.set $1 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 3) ) ) (if (i32.lt_u - (local.get $4) + (local.get $11) (i32.const 256) ) (block - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $1) (i32.const 3) ) (i32.const 216) @@ -2277,25 +2200,25 @@ ) (if (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $6) + (local.tee $4 + (i32.load + (i32.const 176) ) ) (local.tee $1 - (i32.load - (i32.const 176) + (i32.shl + (i32.const 1) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -2307,11 +2230,11 @@ ) (call $_abort) (block - (local.set $16 - (local.get $6) + (local.set $17 + (local.get $1) ) - (local.set $26 - (local.get $15) + (local.set $27 + (local.get $4) ) ) ) @@ -2320,70 +2243,70 @@ (i32.const 176) (i32.or (local.get $1) - (local.get $8) + (local.get $4) ) ) - (local.set $16 + (local.set $17 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $26 - (local.get $11) + (local.set $27 + (local.get $0) ) ) ) (i32.store - (local.get $16) - (local.get $5) + (local.get $17) + (local.get $2) ) (i32.store offset=12 - (local.get $26) - (local.get $5) + (local.get $27) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $26) + (local.get $2) + (local.get $27) ) (i32.store offset=12 - (local.get $5) - (local.get $11) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $6 + (local.set $1 (i32.add (local.tee $0 (i32.shl - (local.tee $7 + (local.tee $6 (if (result i32) - (local.tee $11 + (local.tee $0 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $4) + (local.get $11) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $11 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $1 + (local.tee $4 (i32.shl - (local.get $11) - (local.tee $8 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $11) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2403,21 +2326,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $4) + (local.get $11) (i32.add - (local.tee $6 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $1 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.get $11) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2428,15 +2351,15 @@ ) ) (i32.or - (local.get $8) - (local.get $11) + (local.get $0) + (local.get $1) ) ) ) (i32.shr_u (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2448,7 +2371,7 @@ (i32.const 1) ) (i32.shl - (local.get $6) + (local.get $0) (i32.const 1) ) ) @@ -2464,158 +2387,160 @@ ) ) (i32.store offset=28 - (local.get $5) - (local.get $7) + (local.get $2) + (local.get $6) ) (i32.store offset=20 - (local.get $5) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $5) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $15 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 180) ) ) + (local.tee $3 + (i32.shl + (i32.const 1) + (local.get $6) + ) + ) ) ) (block (i32.store (i32.const 180) (i32.or - (local.get $1) - (local.get $15) + (local.get $3) + (local.get $4) ) ) (i32.store offset=480 (local.get $0) - (local.get $5) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $6) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $15 + (local.set $3 (i32.shl - (local.get $4) + (local.get $11) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $7) + (local.get $6) (i32.const 1) ) ) (i32.eq - (local.get $7) + (local.get $6) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 (local.get $0) ) ) - (if - (i32.eq - (local.tee $10 - (loop $while-in28 (result i32) - (block $while-out27 (result i32) - (if - (i32.eq - (local.get $4) - (i32.and - (i32.load offset=4 - (local.get $1) - ) - (i32.const -8) - ) - ) - (block - (local.set $14 - (local.get $1) - ) - (br $while-out27 - (i32.const 148) - ) - ) + (loop $while-in28 + (block $while-out27 + (if + (i32.eq + (local.get $11) + (i32.and + (i32.load offset=4 + (local.get $0) ) - (if (result i32) - (local.tee $8 - (i32.load - (local.tee $6 - (i32.add - (i32.add - (local.get $1) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $15) - (i32.const 31) - ) - (i32.const 2) - ) - ) + (i32.const -8) + ) + ) + (block + (local.set $22 + (local.get $0) + ) + (local.set $9 + (i32.const 148) + ) + (br $while-out27) + ) + ) + (local.set $31 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $4 + (i32.add + (i32.add + (local.get $0) + (i32.const 16) ) - ) - ) - (block - (local.set $15 (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (local.get $3) + (i32.const 31) + ) + (i32.const 2) ) ) - (local.set $1 - (local.get $8) - ) - (br $while-in28) ) - (block (result i32) - (local.set $23 - (local.get $6) - ) - (local.set $20 - (local.get $1) - ) - (i32.const 145) + ) + ) + (block + (local.set $3 + (i32.shl + (local.get $3) + (i32.const 1) ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in28) + ) + (block (result i32) + (local.set $40 + (local.get $0) + ) + (local.set $9 + (i32.const 145) + ) + (local.get $4) ) ) ) + ) + ) + (if + (i32.eq + (local.get $9) (i32.const 145) ) (if (i32.lt_u - (local.get $23) + (local.get $31) (i32.load (i32.const 192) ) @@ -2623,100 +2548,96 @@ (call $_abort) (block (i32.store - (local.get $23) - (local.get $5) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $20) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $14) - ) - (if - (i32.and - (i32.ge_u - (local.tee $15 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $8 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $22) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $8) + (local.tee $4 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $15) - (local.get $5) - ) - (i32.store offset=8 - (local.get $0) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $15) - ) - (i32.store offset=12 - (local.get $5) - (local.get $14) - ) - (i32.store offset=24 - (local.get $5) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) ) - (call $_abort) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $22) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $_abort) ) ) ) ) (block (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.tee $15 + (local.tee $0 (i32.add - (local.get $2) - (local.get $4) + (local.get $5) + (local.get $11) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $12) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2728,15 +2649,15 @@ ) (return (i32.add - (local.get $13) + (local.get $12) (i32.const 8) ) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $2) + (local.get $5) ) ) (i32.const -1) @@ -2745,25 +2666,25 @@ ) (if (i32.ge_u - (local.tee $13 + (local.tee $6 (i32.load (i32.const 184) ) ) - (local.get $8) + (local.get $4) ) (block - (local.set $14 + (local.set $0 (i32.load (i32.const 196) ) ) (if (i32.gt_u - (local.tee $4 + (local.tee $1 (i32.sub - (local.get $13) - (local.get $8) + (local.get $6) + (local.get $4) ) ) (i32.const 15) @@ -2771,35 +2692,35 @@ (block (i32.store (i32.const 196) - (local.tee $20 + (local.tee $3 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 184) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $20) + (local.get $3) (i32.or - (local.get $4) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $20) + (local.get $1) + (local.get $3) ) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) @@ -2814,23 +2735,22 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $13) + (local.get $6) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $14) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $6) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) @@ -2839,1956 +2759,1882 @@ ) (return (i32.add - (local.get $14) + (local.get $0) (i32.const 8) ) ) ) ) - (if - (i32.gt_u - (local.tee $14 - (i32.load - (i32.const 188) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) - (local.get $8) ) - (block - (i32.store - (i32.const 188) - (local.tee $4 - (i32.sub - (local.get $14) - (local.get $8) - ) + (if + (i32.eqz + (i32.load + (i32.const 648) ) ) - (i32.store - (i32.const 200) - (local.tee $13 + (if + (i32.and + (local.tee $0 + (call $_sysconf + (i32.const 30) + ) + ) (i32.add - (local.get $8) - (local.tee $14 - (i32.load - (i32.const 200) + (local.get $0) + (i32.const -1) + ) + ) + (call $_abort) + (block + (i32.store + (i32.const 656) + (local.get $0) + ) + (i32.store + (i32.const 652) + (local.get $0) + ) + (i32.store + (i32.const 660) + (i32.const -1) + ) + (i32.store + (i32.const 664) + (i32.const -1) + ) + (i32.store + (i32.const 668) + (i32.const 0) + ) + (i32.store + (i32.const 620) + (i32.const 0) + ) + (i32.store + (i32.const 648) + (i32.xor + (i32.and + (call $_time + (i32.const 0) + ) + (i32.const -16) ) + (i32.const 1431655768) ) ) ) ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $4) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.get $8) - (i32.const 3) - ) - ) - (return - (i32.add - (local.get $14) - (i32.const 8) - ) - ) ) - ) - (if - (i32.eqz - (i32.load - (i32.const 648) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) (if - (i32.and - (local.tee $14 - (call $_sysconf - (i32.const 30) - ) - ) - (i32.add - (local.get $14) - (i32.const -1) - ) - ) - (call $_abort) - (block - (i32.store - (i32.const 656) - (local.get $14) - ) - (i32.store - (i32.const 652) - (local.get $14) - ) - (i32.store - (i32.const 660) - (i32.const -1) - ) - (i32.store - (i32.const 664) - (i32.const -1) - ) - (i32.store - (i32.const 668) - (i32.const 0) - ) - (i32.store - (i32.const 620) - (i32.const 0) - ) - (i32.store - (i32.const 648) - (i32.xor - (i32.and - (call $_time + (i32.le_u + (local.tee $11 + (i32.and + (local.tee $2 + (i32.add + (local.tee $0 + (i32.load + (i32.const 656) + ) + ) + (local.tee $8 + (i32.add + (local.get $4) + (i32.const 47) + ) + ) + ) + ) + (local.tee $0 + (i32.sub (i32.const 0) + (local.get $0) ) - (i32.const -16) ) - (i32.const 1431655768) ) ) + (local.get $4) ) - ) - ) - (local.set $14 - (i32.add - (local.get $8) - (i32.const 48) - ) - ) - (local.set $20 - (i32.add - (local.tee $4 - (i32.load - (i32.const 656) - ) - ) - (local.tee $13 - (i32.add - (local.get $8) - (i32.const 47) - ) + (return + (i32.const 0) ) ) - ) - (if - (i32.le_u - (local.tee $4 - (i32.and - (local.tee $23 - (i32.sub - (i32.const 0) - (local.get $4) - ) + (if + (if (result i32) + (local.tee $6 + (i32.load + (i32.const 616) ) - (local.get $20) ) - ) - (local.get $8) - ) - (return - (i32.const 0) - ) - ) - (if - (if (result i32) - (local.tee $7 - (i32.load - (i32.const 616) - ) - ) - (i32.or - (i32.le_u - (local.tee $16 - (i32.add - (local.get $4) - (local.tee $26 - (i32.load - (i32.const 608) + (i32.or + (i32.le_u + (local.tee $18 + (i32.add + (local.get $11) + (local.tee $7 + (i32.load + (i32.const 608) + ) ) ) ) + (local.get $7) + ) + (i32.gt_u + (local.get $18) + (local.get $6) ) - (local.get $26) - ) - (i32.gt_u - (local.get $16) - (local.get $7) ) + (i32.const 0) + ) + (return + (i32.const 0) ) - (i32.const 0) - ) - (return - (i32.const 0) ) - ) - (if - (block (result i32) - (if + (if + (if (result i32) (if (result i32) - (if (result i32) - (select - (i32.lt_u - (local.get $4) - (i32.const 2147483647) - ) - (i32.const 0) - (i32.eq - (local.tee $10 - (if (result i32) - (i32.and - (i32.load - (i32.const 620) - ) - (i32.const 4) + (select + (i32.lt_u + (local.get $11) + (i32.const 2147483647) + ) + (i32.const 0) + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 620) ) - (i32.const 190) - (block $label$break$L257 (result i32) - (if - (local.tee $7 - (i32.load - (i32.const 200) - ) + (i32.const 4) + ) + (i32.const 190) + (block $label$break$L257 (result i32) + (if + (local.tee $6 + (i32.load + (i32.const 200) ) - (block $label$break$L259 - (local.set $16 - (i32.const 624) - ) - (loop $while-in34 - (block $while-out33 - (if - (if (result i32) - (i32.le_u - (local.tee $26 - (i32.load - (local.get $16) - ) + ) + (block $label$break$L259 + (local.set $17 + (i32.const 624) + ) + (loop $while-in34 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $7 + (i32.load + (local.get $17) ) - (local.get $7) ) - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $16) - (i32.const 4) - ) + (local.get $6) + ) + (i32.gt_u + (i32.add + (i32.load + (local.tee $15 + (i32.add + (local.get $17) + (i32.const 4) ) ) - (local.get $26) ) (local.get $7) ) - (i32.const 0) - ) - (block - (local.set $6 - (local.get $16) - ) - (local.set $1 - (local.get $9) - ) - (br $while-out33) + (local.get $6) ) + (i32.const 0) ) + ) + (block (br_if $while-in34 - (local.tee $16 + (local.tee $17 (i32.load offset=8 - (local.get $16) + (local.get $17) ) ) ) - (local.set $10 + (local.set $9 (i32.const 173) ) (br $label$break$L259) ) ) - (if - (i32.lt_u - (local.tee $16 - (i32.and - (local.get $23) - (i32.sub - (local.get $20) - (i32.load - (i32.const 188) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $0) + (i32.sub + (local.get $2) + (i32.load + (i32.const 188) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $_sbrk - (local.get $16) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $_sbrk + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $6) - ) - (i32.load - (local.get $1) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $17) ) - (block - (local.set $21 - (local.get $9) - ) - (local.set $22 - (local.get $16) - ) - (br $label$break$L257 - (i32.const 193) - ) + (i32.load + (local.get $15) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $16) + (local.set $3 + (local.get $0) ) (local.set $10 - (i32.const 183) + (local.get $2) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) + (block + (local.set $14 + (local.get $0) + ) + (local.set $23 + (local.get $2) + ) + (local.set $9 + (i32.const 183) + ) + ) ) ) ) - (local.set $10 + ) + (local.set $9 + (i32.const 173) + ) + ) + (if + (if (result i32) + (i32.eq + (local.get $9) (i32.const 173) ) - ) - (if - (if (result i32) - (i32.eq - (local.get $10) - (i32.const 173) - ) - (i32.ne - (local.tee $7 - (call $_sbrk - (i32.const 0) - ) + (i32.ne + (local.tee $6 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - (i32.const 0) + (i32.const -1) ) - (block $do-once35 - (local.set $0 - (if (result i32) - (i32.and - (local.tee $2 - (local.get $7) - ) - (local.tee $9 - (i32.add - (local.tee $16 - (i32.load - (i32.const 652) + (i32.const 0) + ) + (block $do-once35 + (local.set $5 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $6) + ) + (local.tee $5 + (i32.add + (local.tee $2 + (i32.load + (i32.const 652) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $4) - (local.get $2) - ) - (i32.and - (i32.add - (local.get $2) - (local.get $9) - ) + (i32.add (i32.sub - (i32.const 0) - (local.get $16) + (local.get $11) + (local.get $0) + ) + (i32.and + (i32.add + (local.get $0) + (local.get $5) + ) + (i32.sub + (i32.const 0) + (local.get $2) + ) ) ) + (local.get $11) ) - (local.get $4) ) - ) - (local.set $2 - (i32.add - (local.tee $16 - (i32.load - (i32.const 608) - ) + (local.tee $2 + (i32.load + (i32.const 608) ) - (local.get $0) ) ) - (if - (i32.and - (i32.lt_u - (local.get $0) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $0) - (local.get $8) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (br_if $do-once35 - (select - (i32.or - (i32.le_u - (local.get $2) - (local.get $16) - ) - (i32.gt_u - (local.get $2) - (local.tee $9 - (i32.load - (i32.const 616) - ) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (br_if $do-once35 + (select + (i32.or + (i32.le_u + (local.get $5) + (local.get $2) + ) + (i32.gt_u + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 616) ) ) ) - (i32.const 0) - (local.get $9) ) + (i32.const 0) + (local.get $2) ) - (local.set $10 - (if (result i32) - (i32.eq - (local.tee $9 - (call $_sbrk - (local.get $0) - ) - ) - (local.get $7) - ) - (block - (local.set $21 - (local.get $7) - ) - (local.set $22 + ) + (local.set $14 + (if (result i32) + (i32.eq + (local.get $6) + (local.tee $2 + (call $_sbrk (local.get $0) ) - (br $label$break$L257 - (i32.const 193) - ) ) - (block (result i32) - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $0) - ) + ) + (block + (local.set $3 + (local.get $6) + ) + (local.set $10 + (local.get $0) + ) + (br $label$break$L257 + (i32.const 193) + ) + ) + (block (result i32) + (local.set $23 + (local.get $0) + ) + (local.set $9 (i32.const 183) ) + (local.get $2) ) ) ) ) ) ) - (if - (i32.eq - (local.get $10) - (i32.const 183) - ) - (block $label$break$L279 - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $18) - ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 183) + ) + (block $label$break$L279 + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $23) ) - (local.set $3 + ) + (local.set $1 + (if (result i32) (if (result i32) - (if (result i32) + (i32.and (i32.and - (i32.and - (i32.ne - (local.get $12) - (i32.const -1) - ) - (i32.lt_u - (local.get $18) - (i32.const 2147483647) - ) - ) - (i32.gt_u + (i32.ne (local.get $14) - (local.get $18) + (i32.const -1) + ) + (i32.lt_u + (local.get $23) + (i32.const 2147483647) ) ) - (i32.lt_u - (local.tee $2 - (i32.and - (i32.add - (local.tee $7 - (i32.load - (i32.const 656) - ) - ) - (i32.sub - (local.get $13) - (local.get $18) + (i32.gt_u + (local.get $22) + (local.get $23) + ) + ) + (i32.lt_u + (local.tee $5 + (i32.and + (i32.add + (local.tee $6 + (i32.load + (i32.const 656) ) ) (i32.sub - (i32.const 0) - (local.get $7) + (local.get $8) + (local.get $23) ) ) + (i32.sub + (i32.const 0) + (local.get $6) + ) ) - (i32.const 2147483647) ) - (i32.const 0) + (i32.const 2147483647) ) - (if (result i32) - (i32.eq - (call $_sbrk - (local.get $2) - ) - (i32.const -1) + (i32.const 0) + ) + (if (result i32) + (i32.eq + (call $_sbrk + (local.get $5) ) - (block - (drop - (call $_sbrk - (local.get $9) - ) + (i32.const -1) + ) + (block + (drop + (call $_sbrk + (local.get $0) ) - (br $label$break$L279) - ) - (i32.add - (local.get $2) - (local.get $18) ) + (br $label$break$L279) + ) + (i32.add + (local.get $5) + (local.get $23) ) - (local.get $18) ) + (local.get $23) ) - (if - (i32.ne - (local.get $12) - (i32.const -1) + ) + (if + (i32.ne + (local.get $14) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $14) ) - (block - (local.set $21 - (local.get $12) - ) - (local.set $22 - (local.get $3) - ) - (br $label$break$L257 - (i32.const 193) - ) + (local.set $10 + (local.get $1) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) ) - (i32.store - (i32.const 620) - (i32.or - (i32.load - (i32.const 620) - ) - (i32.const 4) + ) + (i32.store + (i32.const 620) + (i32.or + (i32.load + (i32.const 620) ) + (i32.const 4) ) - (i32.const 190) ) + (i32.const 190) ) ) - (i32.const 190) ) + (i32.const 190) ) + ) + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $3 - (call $_sbrk - (local.get $4) - ) + (i32.ne + (local.tee $1 + (call $_sbrk + (local.get $11) ) - (i32.const -1) ) - (i32.ne - (local.tee $4 - (call $_sbrk - (i32.const 0) - ) + (i32.const -1) + ) + (i32.ne + (local.tee $11 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - ) - (i32.lt_u - (local.get $3) - (local.get $4) - ) - ) - (i32.const 0) - ) - (i32.gt_u - (local.tee $12 - (i32.sub - (local.get $4) - (local.get $3) + (i32.const -1) ) ) - (i32.add - (local.get $8) - (i32.const 40) + (i32.lt_u + (local.get $1) + (local.get $11) ) ) (i32.const 0) ) - (block - (local.set $21 - (local.get $3) - ) - (local.set $22 - (local.get $12) + (i32.gt_u + (local.tee $14 + (i32.sub + (local.get $11) + (local.get $1) + ) ) - (local.set $10 - (i32.const 193) + (i32.add + (local.get $4) + (i32.const 40) ) ) + (i32.const 0) ) + (block + (local.set $10 + (local.get $14) + ) + (local.set $9 + (i32.const 193) + ) + (local.set $3 + (local.get $1) + ) + ) + ) + (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 193) ) - ) - (block - (i32.store - (i32.const 608) - (local.tee $12 - (i32.add - (local.get $22) - (i32.load - (i32.const 608) + (block + (i32.store + (i32.const 608) + (local.tee $0 + (i32.add + (local.get $10) + (i32.load + (i32.const 608) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $12) - (i32.load - (i32.const 612) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 612) + ) ) - ) - (i32.store - (i32.const 612) - (local.get $12) - ) - ) - (if - (local.tee $12 - (i32.load - (i32.const 200) + (i32.store + (i32.const 612) + (local.get $0) ) ) - (block $do-once40 - (local.set $3 - (i32.const 624) + (if + (local.tee $7 + (i32.load + (i32.const 200) + ) ) - (loop $do-in - (block $do-out - (if - (i32.eq - (i32.add - (local.tee $4 - (i32.load - (local.get $3) + (block $do-once40 + (local.set $1 + (i32.const 624) + ) + (loop $do-in + (block $do-out + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) + ) ) - ) - (local.tee $13 - (i32.load - (local.tee $18 - (i32.add - (local.get $3) - (i32.const 4) + (local.tee $2 + (i32.load + (local.tee $6 + (i32.add + (local.get $1) + (i32.const 4) + ) ) ) ) ) - ) - (local.get $21) - ) - (block - (local.set $46 - (local.get $4) - ) - (local.set $47 - (local.get $18) - ) - (local.set $48 - (local.get $13) - ) - (local.set $49 (local.get $3) ) - (local.set $10 - (i32.const 203) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $6) + ) + (local.set $43 + (local.get $2) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 203) + ) + (br $do-out) ) - (br $do-out) ) - ) - (br_if $do-in - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $do-in + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (if (result i32) + (if (if (result i32) - (i32.eq - (local.get $10) - (i32.const 203) - ) - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $49) + (if (result i32) + (i32.eq + (local.get $9) + (i32.const 203) + ) + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) ) - (i32.const 8) ) + (i32.const 0) ) - (i32.const 0) - ) - (i32.and - (i32.lt_u - (local.get $12) - (local.get $21) - ) - (i32.ge_u - (local.get $12) - (local.get $46) + (i32.and + (i32.lt_u + (local.get $7) + (local.get $3) + ) + (i32.ge_u + (local.get $7) + (local.get $41) + ) ) + (i32.const 0) ) - (i32.const 0) - ) - (block - (i32.store - (local.get $47) - (i32.add - (local.get $22) - (local.get $48) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $10) + (local.get $43) + ) ) - ) - (local.set $3 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $12) - (i32.const 8) + (local.set $0 + (i32.add + (local.get $7) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $7) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) ) - (local.get $12) ) - ) - (local.set $18 - (i32.add - (i32.load - (i32.const 188) - ) - (i32.sub - (local.get $22) - (local.get $13) + (local.set $1 + (i32.add + (i32.load + (i32.const 188) + ) + (i32.sub + (local.get $10) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store - (i32.const 188) - (local.get $18) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $18) - (i32.const 1) + (i32.store + (i32.const 200) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $3) - (local.get $18) + (i32.store + (i32.const 188) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (br $do-once40) ) - (br $do-once40) ) - ) - (local.set $5 - (if (result i32) + (if (i32.lt_u - (local.get $21) - (local.tee $18 + (local.get $3) + (local.tee $6 (i32.load (i32.const 192) ) ) ) - (block (result i32) + (block (i32.store (i32.const 192) - (local.get $21) + (local.get $3) + ) + (local.set $6 + (local.get $3) ) - (local.get $21) ) - (local.get $18) ) - ) - (local.set $18 - (i32.add - (local.get $21) - (local.get $22) + (local.set $0 + (i32.add + (local.get $3) + (local.get $10) + ) ) - ) - (local.set $3 - (i32.const 624) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $18) - (i32.load - (local.get $3) - ) - ) - (block - (local.set $50 - (local.get $3) - ) - (local.set $34 - (local.get $3) + (local.set $1 + (i32.const 624) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $10 - (i32.const 211) + (block + (local.set $45 + (local.get $1) + ) + (local.set $28 + (local.get $1) + ) + (local.set $9 + (i32.const 211) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) - ) - (local.set $27 - (i32.const 624) + (local.set $24 + (i32.const 624) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 211) - ) - (local.set $27 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $34) - ) - (i32.const 8) - ) - (i32.const 624) - (block - (i32.store - (local.get $50) - (local.get $21) + (if + (i32.eq + (local.get $9) + (i32.const 211) + ) + (local.set $24 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $28) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $34) - (i32.add - (local.get $22) - (i32.load offset=4 - (local.get $34) + (i32.const 624) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 + (local.get $28) + (i32.add + (local.get $10) + (i32.load offset=4 + (local.get $28) + ) ) ) - ) - (local.set $13 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $21) - (i32.const 8) + (local.set $5 + (i32.add + (local.get $4) + (local.tee $14 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) - (local.get $21) ) - ) - (local.set $4 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $18) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $2 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) + (local.get $14) ) + (local.get $4) ) - (local.get $18) - ) - ) - (local.set $3 - (i32.add - (local.get $8) - (local.get $13) ) - ) - (local.set $14 - (i32.sub - (i32.sub + (i32.store offset=4 + (local.get $14) + (i32.or (local.get $4) - (local.get $13) + (i32.const 3) ) - (local.get $8) - ) - ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $8) - (i32.const 3) - ) - ) - (if - (i32.ne - (local.get $4) - (local.get $12) ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 196) + (if + (i32.ne + (local.get $2) + (local.get $7) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) ) - (local.get $4) - ) - (block - (i32.store - (i32.const 184) - (local.tee $0 - (i32.add - (local.get $14) - (i32.load - (i32.const 184) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 184) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $0) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $0) - (local.get $3) + (i32.store + (i32.const 196) + (local.get $5) ) - (local.get $0) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $0 - (i32.load offset=4 - (local.get $4) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $1 - (i32.and + (i32.store + (i32.add + (local.get $0) + (local.get $5) + ) (local.get $0) - (i32.const -8) ) + (br $do-once44) ) - (local.set $6 - (i32.shr_u - (local.get $0) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $2) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$L331 - (if - (i32.ge_u - (local.get $0) - (i32.const 256) + (block (result i32) + (local.set $7 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $23 - (i32.load offset=24 - (local.get $4) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$L331 (if - (i32.eq - (local.get $4) - (local.tee $20 - (i32.load offset=12 - (local.get $4) + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $10 + (i32.load offset=24 + (local.get $2) ) ) - ) - (block $do-once47 - (local.set $0 - (if (result i32) - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.tee $9 - (i32.add - (local.get $4) - (i32.const 16) + (if + (i32.eq + (local.get $2) + (local.tee $0 + (i32.load offset=12 + (local.get $2) + ) + ) + ) + (block $do-once47 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $2) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $9 - (local.get $2) + (local.set $1 + (local.get $4) ) - (local.get $7) - ) - (if (result i32) - (local.tee $16 - (i32.load - (local.get $9) + (br_if $do-once47 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (local.get $16) - (br $do-once47) ) - ) - ) - (loop $while-in50 - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 20) + (loop $while-in50 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) ) ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) + ) + ) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) + ) ) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.lt_u + (local.get $1) + (local.get $6) ) - (local.set $9 - (local.get $2) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $16 + (local.get $0) + ) ) - (br $while-in50) ) ) - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $2) ) ) + (local.get $6) ) + (call $_abort) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.ne + (local.get $2) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $9 + (call $_abort) + ) + (if + (i32.eq (local.get $2) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $16 + (local.get $0) + ) ) - (br $while-in50) + (call $_abort) ) ) ) + (br_if $label$break$L331 + (i32.eqz + (local.get $10) + ) + ) (if - (i32.lt_u - (local.get $9) - (local.get $5) + (i32.ne + (i32.load offset=480 + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $2) + ) + ) + (i32.const 2) + ) + ) + ) + (local.get $2) ) - (call $_abort) (block - (i32.store - (local.get $9) - (i32.const 0) + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) ) - (local.set $24 - (local.get $0) + (if + (i32.eq + (local.get $2) + (i32.load offset=16 + (local.get $10) + ) + ) + (i32.store offset=16 + (local.get $10) + (local.get $16) + ) + (i32.store offset=20 + (local.get $10) + (local.get $16) + ) + ) + (br_if $label$break$L331 + (i32.eqz + (local.get $16) + ) ) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $2 - (i32.load offset=8 - (local.get $4) + (block $do-once51 + (i32.store offset=480 + (local.get $1) + (local.get $16) + ) + (br_if $do-once51 + (local.get $16) + ) + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) ) ) - (local.get $5) + (br $label$break$L331) ) - (call $_abort) - ) - (local.set $0 - (local.get $2) ) (if - (i32.ne - (local.get $4) - (i32.load offset=12 - (local.get $0) + (i32.lt_u + (local.get $16) + (local.tee $1 + (i32.load + (i32.const 192) + ) ) ) (call $_abort) ) - (local.set $6 - (local.get $20) + (i32.store offset=24 + (local.get $16) + (local.get $10) ) (if - (i32.eq - (local.get $4) - (i32.load offset=8 - (local.get $6) + (local.tee $0 + (i32.load offset=16 + (local.get $2) ) ) - (block - (i32.store offset=12 + (if + (i32.lt_u (local.get $0) - (local.get $20) - ) - (i32.store offset=8 - (local.get $6) - (local.get $2) + (local.get $1) ) - (local.set $24 - (local.get $20) + (call $_abort) + (block + (i32.store offset=16 + (local.get $16) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) - (call $_abort) ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $23) - ) - ) - (local.set $0 - (i32.shl - (local.tee $20 - (i32.load offset=28 - (local.get $4) + (br_if $label$break$L331 + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $2) + ) + ) ) ) - (i32.const 2) - ) - ) - (if - (i32.ne - (i32.load offset=480 - (local.get $0) - ) - (local.get $4) - ) - (block (if (i32.lt_u - (local.get $23) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) - ) - (local.set $0 - (local.get $23) - ) - (if - (i32.eq - (local.get $4) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $16) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $23) - (local.get $24) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $24) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) ) - (block $do-once51 - (i32.store offset=480 - (local.get $0) - (local.get $24) - ) - (br_if $do-once51 - (local.get $24) + (block + (local.set $1 + (i32.load offset=12 + (local.get $2) + ) ) - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $2) + ) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $20) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const -1) ) ) - ) - (br $label$break$L331) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $20 - (i32.load - (i32.const 192) - ) - ) - ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $24) - (local.get $23) - ) - (local.set $0 - (local.get $4) - ) - (if - (local.tee $9 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $9) - (local.get $20) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.tee $9 - (i32.load offset=20 - (local.get $0) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $9) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (block - (local.set $20 - (i32.load offset=12 - (local.get $4) - ) - ) - (if - (i32.ne - (local.tee $9 - (i32.load offset=8 - (local.get $4) - ) - ) - (local.tee $23 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) + (block $do-once55 + (if + (i32.lt_u + (local.get $4) + (local.get $6) + ) + (call $_abort) ) - (i32.const 216) + (br_if $do-once55 + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $4) + ) + ) + ) + (call $_abort) ) ) - ) - (block $do-once55 (if - (i32.lt_u - (local.get $9) - (local.get $5) - ) - (call $_abort) - ) - (br_if $do-once55 (i32.eq + (local.get $1) (local.get $4) - (i32.load offset=12 - (local.get $9) - ) ) - ) - (call $_abort) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $20) - ) - (block - (i32.store - (i32.const 176) - (i32.and - (i32.load + (block + (i32.store (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $6) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) ) - (i32.const -1) ) + (br $label$break$L331) ) ) - (br $label$break$L331) - ) - ) - (if - (i32.eq - (local.get $20) - (local.get $23) - ) - (local.set $39 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - (block $do-once57 - (if - (i32.lt_u - (local.get $20) - (local.get $5) - ) - (call $_abort) - ) (if (i32.eq - (local.get $4) - (i32.load - (local.tee $2 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) + (local.get $0) + (local.get $1) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - (block - (local.set $39 - (local.get $2) + (block $do-once57 + (if + (i32.lt_u + (local.get $1) + (local.get $6) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $2) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once57) + ) ) - (br $do-once57) + (call $_abort) ) ) - (call $_abort) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) + ) ) ) - (i32.store offset=12 - (local.get $9) - (local.get $20) - ) - (i32.store - (local.get $39) - (local.get $9) + ) + (local.set $2 + (i32.add + (local.get $2) + (local.get $7) ) ) + (i32.add + (local.get $7) + (local.get $8) + ) ) + (local.get $8) ) - (local.set $4 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $14 - (i32.add - (local.get $1) - (local.get $14) + ) + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.and - (i32.load offset=4 + (i32.store offset=4 + (local.get $5) + (i32.or (local.get $4) + (i32.const 1) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $14) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $3) - (local.get $14) - ) - (local.get $14) - ) - (local.set $6 - (i32.shr_u - (local.get $14) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $5) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $14) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $0 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $2 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $6) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) - (local.tee $23 - (i32.load - (i32.const 176) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $7 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (block + (local.set $33 + (local.get $1) + ) + (local.set $29 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $40 - (local.get $6) - ) - (local.set $35 - (local.get $7) + (call $_abort) + ) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $4) ) - (br $do-once59) ) - ) - (call $_abort) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $2) - (local.get $23) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $40 - (i32.add + (local.set $29 (local.get $0) - (i32.const 8) ) ) - (local.set $35 - (local.get $0) - ) ) + (i32.store + (local.get $33) + (local.get $5) + ) + (i32.store offset=12 + (local.get $29) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $29) + ) + (i32.store offset=12 + (local.get $5) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (br $do-once44) ) - ) - (local.set $2 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $2 - (i32.shr_u - (local.get $14) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $14) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (local.tee $23 - (i32.and - (i32.shr_u - (i32.add - (local.get $2) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $14) - (i32.add - (local.tee $16 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.tee $6 - (i32.shl - (local.get $1) - (local.get $7) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $7) - (local.get $23) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $6) - (local.get $1) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $6) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $16) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $3) - (local.get $1) - ) - (i32.store offset=20 - (local.get $3) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $3) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $16 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $5) + (local.get $0) + ) + (i32.store offset=20 + (local.get $5) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $5) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $6 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $16) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $6) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $3) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once44) ) - (i32.store offset=480 - (local.get $6) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $2) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $3) - ) - (br $do-once44) ) - ) - (local.set $16 - (i32.shl - (local.get $14) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $17 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $14) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $41 - (local.get $0) - ) - (br $while-out63 - (i32.const 281) - ) + (loop $while-in64 + (block $while-out63 + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $2 + ) + (block + (local.set $34 + (local.get $0) + ) + (local.set $9 + (i32.const 281) + ) + (br $while-out63) + ) + ) + (local.set $35 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $16) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $17) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $16 - (i32.shl - (local.get $16) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $17 + (i32.shl + (local.get $17) + (i32.const 1) ) - (br $while-in64) ) - (block (result i32) - (local.set $42 - (local.get $2) - ) - (local.set $51 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) + ) + (block (result i32) + (local.set $46 + (local.get $0) + ) + (local.set $9 (i32.const 278) ) + (local.get $3) ) ) ) ) - (i32.const 278) ) (if - (i32.lt_u - (local.get $42) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 278) ) - (call $_abort) - (block - (i32.store - (local.get $42) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $51) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $3) - (local.get $3) + (call $_abort) + (block + (i32.store + (local.get $35) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $46) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 281) - ) - (block - (local.set $0 - (local.get $41) + (if + (i32.eq + (local.get $9) + (i32.const 281) ) (if (i32.and (i32.ge_u - (local.tee $16 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 192) ) @@ -4796,28 +4642,28 @@ ) (i32.ge_u (local.get $0) - (local.get $1) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $5) ) (i32.store offset=8 (local.get $0) - (local.get $3) + (local.get $5) ) (i32.store offset=8 - (local.get $3) - (local.get $16) + (local.get $5) + (local.get $1) ) (i32.store offset=12 - (local.get $3) - (local.get $41) + (local.get $5) + (local.get $34) ) (i32.store offset=24 - (local.get $3) + (local.get $5) (i32.const 0) ) ) @@ -4826,694 +4672,685 @@ ) ) ) - ) - (block - (i32.store - (i32.const 188) - (local.tee $16 - (i32.add - (local.get $14) - (i32.load - (i32.const 188) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 188) + ) ) ) ) + (i32.store + (i32.const 200) + (local.get $5) + ) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) ) - (i32.store - (i32.const 200) - (local.get $3) + ) + (return + (i32.add + (local.get $14) + (i32.const 8) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $16) - (i32.const 1) + ) + ) + ) + ) + ) + (loop $while-in66 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $24) ) ) + (local.get $7) ) + (i32.gt_u + (local.tee $22 + (i32.add + (i32.load offset=4 + (local.get $24) + ) + (local.get $0) + ) + ) + (local.get $7) + ) + (i32.const 0) ) - (return - (i32.add - (local.get $13) - (i32.const 8) + ) + (block + (local.set $24 + (i32.load offset=8 + (local.get $24) ) ) + (br $while-in66) ) ) ) - ) - (local.set $3 - (i32.add - (local.tee $1 - (local.tee $13 - (select - (local.get $12) - (local.tee $3 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.add - (local.tee $13 - (i32.add - (local.tee $0 - (loop $while-in66 (result i32) - (if (result i32) - (if (result i32) - (i32.le_u - (local.tee $3 - (i32.load - (local.get $27) - ) - ) - (local.get $12) - ) - (i32.gt_u - (local.tee $14 - (i32.add - (i32.load offset=4 - (local.get $27) - ) - (local.get $3) - ) - ) - (local.get $12) - ) - (i32.const 0) - ) - (local.get $14) - (block - (local.set $27 - (i32.load offset=8 - (local.get $27) - ) - ) - (br $while-in66) - ) - ) - ) - ) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $14) - (i32.const 7) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $13) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $3) - (local.tee $14 - (i32.add - (local.get $12) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 200) - (local.tee $4 + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) + ) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.get $21) - (local.tee $18 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $4 - (i32.add - (local.get $21) - (i32.const 8) + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (i32.store offset=4 + (local.tee $0 + (select + (local.get $7) + (local.tee $0 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.tee $0 + (i32.add + (local.get $22) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) - (i32.const 7) + (local.get $0) ) - (i32.const 0) - (i32.and - (local.get $4) - (i32.const 7) + ) + (i32.lt_u + (local.get $0) + (local.tee $2 + (i32.add + (local.get $7) + (i32.const 16) + ) ) ) ) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 188) - (local.tee $16 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) - ) - (local.get $18) + (i32.store offset=8 + (local.get $0) + (i32.load + (i32.const 624) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.or - (local.get $16) - (i32.const 1) + (i32.store offset=12 + (local.get $0) + (i32.load + (i32.const 628) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $4) - (local.get $16) + (i32.store offset=16 + (local.get $0) + (i32.load + (i32.const 632) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=20 + (local.get $0) + (i32.load + (i32.const 636) + ) ) - ) - (local.set $2 - (local.get $13) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $1) - (i32.load + (i32.store (i32.const 624) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $1) - (i32.load + (i32.store (i32.const 628) + (local.get $10) ) - ) - (i32.store offset=16 - (local.get $1) - (i32.load - (i32.const 632) - ) - ) - (i32.store offset=20 - (local.get $1) - (i32.load + (i32.store (i32.const 636) + (i32.const 0) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 632) - (local.get $3) - ) - (local.set $3 - (i32.add - (local.get $2) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $3 - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.const 632) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $3) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $0) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $12) - (local.get $13) - ) - (block - (i32.store offset=4 - (local.get $2) - (i32.and - (i32.load offset=4 - (local.get $2) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.tee $3 - (i32.sub - (local.get $13) - (local.get $12) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $22) ) ) - (i32.store - (local.get $13) - (local.get $3) - ) - (local.set $4 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $0) + (local.get $7) ) - (if - (i32.lt_u - (local.get $3) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $0) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -2) + ) ) - (block - (local.set $18 - (i32.add - (i32.shl - (local.get $4) - (i32.const 3) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.tee $6 + (i32.sub + (local.get $0) + (local.get $7) ) - (i32.const 216) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $1 + ) + (i32.store + (local.get $0) + (local.get $6) + ) + (local.set $1 + (i32.shr_u + (local.get $6) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $6) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $0 - (i32.load - (i32.const 176) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $18) - (i32.const 8) + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (call $_abort) + (block + (local.set $36 + (local.get $1) + ) + (local.set $30 + (local.get $3) + ) ) ) - (call $_abort) (block - (local.set $43 - (local.get $4) + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $3) + ) ) (local.set $36 - (local.get $2) + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - ) - (block - (i32.store - (i32.const 176) - (i32.or + (local.set $30 (local.get $0) - (local.get $1) ) ) - (local.set $43 - (i32.add - (local.get $18) - (i32.const 8) - ) - ) - (local.set $36 - (local.get $18) - ) ) + (i32.store + (local.get $36) + (local.get $7) + ) + (i32.store offset=12 + (local.get $30) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $30) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once40) ) - (i32.store - (local.get $43) - (local.get $12) - ) - (i32.store offset=12 - (local.get $36) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $36) - ) - (i32.store offset=12 - (local.get $12) - (local.get $18) - ) - (br $do-once40) ) - ) - (local.set $4 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $3) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $6) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $18 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $18) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $18) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $6) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $3) - (i32.add - (local.tee $4 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (i32.add - (local.tee $2 - (i32.shl - (local.get $0) - (local.get $18) + (i32.or + (i32.and + (i32.shr_u + (local.get $6) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $8 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $1) - (local.get $18) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $2) - (local.get $0) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $8) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $4) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $12) - (local.get $1) - ) - (i32.store offset=20 - (local.get $12) - (i32.const 0) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store + (local.get $2) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $2 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $8 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $2) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $8) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $3) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once40) ) - (i32.store offset=480 - (local.get $6) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $4) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $12) - ) - (br $do-once40) ) - ) - (local.set $2 - (i32.shl - (local.get $3) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $5 + (i32.shl + (local.get $6) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $3) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $44 - (local.get $0) - ) - (br $while-out69 - (i32.const 307) - ) + (loop $while-in70 + (block $while-out69 + (if + (i32.eq + (local.get $6) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $4 + ) + (block + (local.set $37 + (local.get $0) + ) + (local.set $9 + (i32.const 307) + ) + (br $while-out69) + ) + ) + (local.set $38 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $2) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $5) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $2 - (i32.shl - (local.get $2) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $5 + (i32.shl + (local.get $5) + (i32.const 1) ) - (br $while-in70) ) - (block (result i32) - (local.set $45 - (local.get $4) - ) - (local.set $52 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in70) + ) + (block (result i32) + (local.set $47 + (local.get $0) + ) + (local.set $9 (i32.const 304) ) + (local.get $3) ) ) ) ) - (i32.const 304) ) (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 304) ) - (call $_abort) - (block - (i32.store - (local.get $45) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $52) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $12) - (local.get $12) + (call $_abort) + (block + (i32.store + (local.get $38) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $47) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 307) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 307) ) (if (i32.and (i32.ge_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) (local.tee $3 @@ -5529,23 +5366,23 @@ ) (block (i32.store offset=12 - (local.get $2) - (local.get $12) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $12) + (local.get $7) ) (i32.store offset=8 - (local.get $12) - (local.get $2) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $12) - (local.get $44) + (local.get $7) + (local.get $37) ) (i32.store offset=24 - (local.get $12) + (local.get $7) (i32.const 0) ) ) @@ -5556,208 +5393,206 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $2 - (i32.load - (i32.const 192) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 192) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $21) - (local.get $2) + (i32.store + (i32.const 192) + (local.get $3) ) ) (i32.store - (i32.const 192) - (local.get $21) + (i32.const 624) + (local.get $3) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 212) - (i32.load - (i32.const 648) + (i32.store + (i32.const 628) + (local.get $10) ) - ) - (i32.store - (i32.const 208) - (i32.const -1) - ) - (local.set $2 - (i32.const 0) - ) - (loop $do-in72 - (local.set $0 - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (i32.const 3) - ) - ) - (i32.const 216) + (i32.store + (i32.const 636) + (i32.const 0) + ) + (i32.store + (i32.const 212) + (i32.load + (i32.const 648) ) ) - (i32.store offset=228 - (local.get $1) - (local.get $0) + (i32.store + (i32.const 208) + (i32.const -1) ) - (i32.store offset=224 - (local.get $1) - (local.get $0) + (local.set $5 + (i32.const 0) ) - (br_if $do-in72 - (i32.ne - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 1) + (loop $do-in72 + (local.set $1 + (i32.add + (local.tee $0 + (i32.shl + (local.get $5) + (i32.const 3) + ) ) + (i32.const 216) + ) + ) + (i32.store offset=228 + (local.get $0) + (local.get $1) + ) + (i32.store offset=224 + (local.get $0) + (local.get $1) + ) + (br_if $do-in72 + (i32.ne + (local.tee $5 + (i32.add + (local.get $5) + (i32.const 1) + ) + ) + (i32.const 32) ) - (i32.const 32) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $2 - (i32.add - (local.get $21) - (local.tee $0 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $2 - (i32.add - (local.get $21) - (i32.const 8) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $2) - (i32.const 7) ) ) ) ) ) - ) - (i32.store - (i32.const 188) - (local.tee $3 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) ) - (local.get $0) ) ) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $3) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $2) - (local.get $3) - ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $22 - (i32.load - (i32.const 188) - ) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $21 - (i32.sub - (local.get $22) - (local.get $8) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $12 + (i32.store offset=4 (i32.add - (local.get $8) - (local.tee $22 - (i32.load - (i32.const 200) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $21) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $22) - (i32.or - (local.get $8) - (i32.const 3) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) ) ) - (return - (i32.add - (local.get $22) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $___errno_location) + (i32.const 12) + ) + (return + (i32.const 0) + ) ) (i32.store - (call $___errno_location) - (i32.const 12) + (i32.const 188) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) + ) + (i32.store + (i32.const 200) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 200) + ) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 0) ) (func $_free (; 16 ;) (; has Stack IR ;) (param $0 i32) (local $1 i32) @@ -5786,7 +5621,7 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) @@ -5802,9 +5637,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $10 (i32.and - (local.tee $2 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5819,12 +5654,12 @@ ) (call $_abort) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $2) + (local.get $0) (i32.const -8) ) ) @@ -5832,40 +5667,34 @@ ) (if (i32.and - (local.get $2) + (local.get $0) (i32.const 1) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $3) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once (local.set $9 (i32.load - (local.get $1) + (local.get $3) ) ) (if (i32.eqz - (local.get $0) + (local.get $10) ) (return) ) - (local.set $7 - (i32.add - (local.get $7) - (local.get $9) - ) - ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) + (local.get $3) (local.get $9) ) ) @@ -5873,23 +5702,26 @@ ) (call $_abort) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 196) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $6 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5897,44 +5729,44 @@ (i32.const 3) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 184) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $6) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $6 + (local.set $10 (i32.shr_u (local.get $9) (i32.const 3) @@ -5946,22 +5778,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $2 + (local.tee $1 (i32.add (i32.shl - (local.get $6) + (local.get $10) (i32.const 3) ) (i32.const 216) @@ -5971,16 +5803,16 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $4) (local.get $13) ) (call $_abort) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $_abort) @@ -5989,8 +5821,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6002,99 +5834,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $10) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.ne - (local.get $0) + (local.get $1) (local.get $2) ) (block (if (i32.lt_u - (local.get $0) + (local.get $2) (local.get $13) ) (call $_abort) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $2) + (local.set $5 + (local.get $1) ) (call $_abort) ) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $9 (i32.add - (local.tee $2 + (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6103,84 +5935,76 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load - (local.get $2) + (local.get $5) ) ) ) ) ) - (local.set $6 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 20) - ) + (loop $while-in + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $10) ) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 16) - ) + ) + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $10) ) - (local.get $0) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) ) ) (if (i32.lt_u - (local.get $2) + (local.get $5) (local.get $13) ) (call $_abort) (block (i32.store - (local.get $2) + (local.get $5) (i32.const 0) ) - (local.set $5 - (local.get $6) + (local.set $7 + (local.get $4) ) ) ) @@ -6188,48 +6012,42 @@ (block (if (i32.lt_u - (local.tee $6 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (local.get $13) ) (call $_abort) ) - (local.set $2 - (local.get $6) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $2) + (local.get $5) ) ) (call $_abort) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $0) + (local.get $5) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $6) + (local.get $4) + (local.get $5) ) - (local.set $5 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $_abort) @@ -6237,33 +6055,32 @@ ) ) (if - (local.get $9) + (local.get $12) (block - (local.set $2 - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $2) + (local.tee $5 + (i32.shl + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $1) + (local.get $0) ) (block (i32.store offset=480 - (local.get $2) (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block (i32.store @@ -6275,17 +6092,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6294,42 +6111,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $5) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $5) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6338,8 +6152,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 192) ) @@ -6348,45 +6162,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $5) - (local.get $9) - ) - (local.set $6 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) - (local.get $0) + (local.get $4) + (local.get $5) ) (call $_abort) (block (i32.store offset=16 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=20 - (local.get $6) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) + (local.get $4) (i32.load (i32.const 192) ) @@ -6394,37 +6205,37 @@ (call $_abort) (block (i32.store offset=20 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6432,20 +6243,17 @@ ) (if (i32.ge_u - (local.get $3) - (local.get $8) + (local.get $2) + (local.get $6) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6453,637 +6261,619 @@ ) (call $_abort) ) - (local.set $4 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 200) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 188) + ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + (i32.store + (i32.const 200) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $3) - (local.get $4) + ) + (if + (i32.ne + (i32.load + (i32.const 196) ) - (local.get $4) + (local.get $2) ) - (local.get $4) + (return) ) - (block (result i32) - (if - (i32.eq + (i32.store + (i32.const 196) + (i32.const 0) + ) + (i32.store + (i32.const 184) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $1) (i32.load - (i32.const 200) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 188) - ) - ) - ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (if - (i32.ne - (i32.load - (i32.const 196) - ) - (local.get $3) - ) - (return) - ) - (i32.store - (i32.const 196) - (i32.const 0) - ) - (i32.store (i32.const 184) - (i32.const 0) ) - (return) + ) + ) + ) + (i32.store + (i32.const 196) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) (if (i32.eq - (i32.load - (i32.const 196) + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) + ) ) - (local.get $8) ) - (block - (i32.store - (i32.const 184) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 184) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 + (i32.add + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) + ) + (i32.const 4) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store - (i32.add + (local.set $1 (local.get $3) - (local.get $5) ) - (local.get $5) - ) - (return) - ) - ) - (local.set $5 - (i32.add - (local.get $4) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) - ) - (local.set $13 - (i32.shr_u - (local.get $1) - (i32.const 3) - ) - ) - (block $do-once4 - (if - (i32.ge_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $6 - (i32.load offset=24 - (local.get $8) - ) - ) - (if - (i32.eq - (local.get $8) - (local.tee $2 - (i32.load offset=12 - (local.get $8) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) ) ) - (block $do-once6 - (local.set $4 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $2 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $2 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) - (local.tee $0 - (i32.load - (local.get $2) - ) - ) + ) + ) + (loop $while-in9 + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) - (br $do-once6) - ) - ) - ) - (loop $while-in9 - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - ) - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store - (local.get $2) - (i32.const 0) - ) - (local.set $11 - (local.get $4) + (i32.const 20) ) ) ) ) (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) + (local.set $0 + (local.get $4) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 + (br $while-in9) + ) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) + (i32.const 16) ) ) - (call $_abort) + ) + ) + (block + (local.set $0 + (local.get $4) ) (local.set $1 - (local.get $2) + (local.get $3) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $4) - (local.get $2) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $2) - ) - ) - (call $_abort) + (br $while-in9) + ) + ) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) + ) + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) ) ) + (i32.load + (i32.const 192) + ) ) - (if + (call $_abort) + ) + (if + (i32.ne (local.get $6) - (block - (local.set $0 + (i32.load offset=12 + (local.get $1) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $_abort) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load offset=480 + (local.tee $1 (i32.shl - (local.tee $2 + (local.tee $0 (i32.load offset=28 - (local.get $8) + (local.get $6) ) ) (i32.const 2) ) ) - (if - (i32.eq - (i32.load offset=480 - (local.get $0) - ) - (local.get $8) - ) - (block - (i32.store offset=480 - (local.get $0) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $2) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 192) - ) + ) + (local.get $6) + ) + (block + (i32.store offset=480 + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) ) - (call $_abort) - ) - (local.set $0 - (local.get $6) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 + (i32.xor + (i32.shl + (i32.const 1) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $6) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) + (i32.const -1) ) ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $11) - (local.tee $2 - (i32.load - (i32.const 192) - ) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 192) ) - (call $_abort) ) - (i32.store offset=24 - (local.get $11) + (call $_abort) + ) + (if + (i32.eq (local.get $6) + (i32.load offset=16 + (local.get $7) + ) ) - (local.set $0 + (i32.store offset=16 + (local.get $7) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $2) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) ) ) ) - (block - (local.set $2 - (i32.load offset=12 - (local.get $8) - ) - ) - (if - (i32.ne - (local.tee $1 - (i32.load offset=8 - (local.get $8) - ) - ) - (local.tee $6 - (i32.add - (i32.shl - (local.get $13) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 192) ) ) - (block - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $1) - ) - ) - (call $_abort) - ) + ) + (call $_abort) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) ) ) (if - (i32.eq + (i32.lt_u + (local.get $0) (local.get $1) - (local.get $2) ) + (call $_abort) (block - (i32.store - (i32.const 176) - (i32.and - (i32.load - (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $13) - ) - (i32.const -1) - ) - ) + (i32.store offset=16 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) - (br $do-once4) ) ) - (if - (i32.ne - (local.get $2) + ) + (if + (local.tee $0 + (i32.load offset=20 (local.get $6) ) - (block - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $6 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) - ) - ) - (local.set $15 - (local.get $6) - ) - (call $_abort) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 192) ) ) - (local.set $15 - (i32.add - (local.get $2) - (i32.const 8) + (call $_abort) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) - (i32.store offset=12 - (local.get $1) - (local.get $2) - ) - (i32.store - (local.get $15) - (local.get $1) - ) ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) ) ) - (i32.store - (i32.add - (local.get $3) - (local.get $5) + (if + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) + ) + (i32.const 216) + ) + ) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $3) + ) + ) + (call $_abort) + ) ) - (local.get $5) ) - (if (result i32) + (if (i32.eq - (i32.load - (i32.const 196) - ) + (local.get $1) (local.get $3) ) (block (i32.store - (i32.const 184) - (local.get $5) + (i32.const 176) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) + ) + (i32.const -1) + ) + ) ) - (return) + (br $do-once4) ) + ) + (if + (i32.ne + (local.get $0) + (local.get $1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (local.set $14 + (local.get $0) + ) + (call $_abort) + ) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + (i32.store offset=12 + (local.get $3) + (local.get $1) + ) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) + ) + (block + (i32.store + (i32.const 184) (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $4) + (local.get $3) (i32.const 3) ) (i32.const 216) @@ -7091,25 +6881,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 176) ) ) - (local.tee $5 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $4) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7121,11 +6911,11 @@ ) (call $_abort) (block - (local.set $14 - (local.get $4) + (local.set $15 + (local.get $1) ) - (local.set $12 - (local.get $15) + (local.set $11 + (local.get $3) ) ) ) @@ -7133,71 +6923,71 @@ (i32.store (i32.const 176) (i32.or - (local.get $5) - (local.get $7) + (local.get $1) + (local.get $3) ) ) - (local.set $14 + (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $12 - (local.get $1) + (local.set $11 + (local.get $0) ) ) ) (i32.store - (local.get $14) - (local.get $3) + (local.get $15) + (local.get $2) ) (i32.store offset=12 - (local.get $12) - (local.get $3) + (local.get $11) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $12) + (local.get $2) + (local.get $11) ) (i32.store offset=12 - (local.get $3) - (local.get $1) + (local.get $2) + (local.get $0) ) (return) ) ) - (local.set $7 + (local.set $4 (i32.add - (local.tee $1 + (local.tee $3 (i32.shl - (local.tee $4 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $14 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $12 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7217,21 +7007,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $7 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $14 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $5 + (local.tee $4 (i32.shl - (local.get $14) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7242,15 +7032,15 @@ ) ) (i32.or - (local.get $1) - (local.get $12) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl + (local.get $4) (local.get $5) - (local.get $14) ) (i32.const 15) ) @@ -7262,7 +7052,7 @@ (i32.const 1) ) (i32.shl - (local.get $7) + (local.get $0) (i32.const 1) ) ) @@ -7278,54 +7068,54 @@ ) ) (i32.store offset=28 - (local.get $3) - (local.get $4) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $3) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $3) + (local.get $2) (i32.const 0) ) (if (i32.and (local.tee $5 - (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $14 (i32.load (i32.const 180) ) ) + (local.tee $7 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $12 + (local.set $11 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $4) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $4) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 - (local.get $1) + (local.get $3) ) ) (if @@ -7335,17 +7125,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block (local.set $16 - (local.get $1) + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7353,17 +7143,17 @@ ) ) (if (result i32) - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $15 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $12) + (local.get $11) (i32.const 31) ) (i32.const 2) @@ -7373,23 +7163,23 @@ ) ) (block - (local.set $12 + (local.set $11 (i32.shl - (local.get $12) + (local.get $11) (i32.const 1) ) ) - (local.set $1 - (local.get $4) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) (local.set $17 - (local.get $15) + (local.get $4) ) (local.set $18 - (local.get $1) + (local.get $0) ) (i32.const 127) ) @@ -7410,19 +7200,19 @@ (block (i32.store (local.get $17) - (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) + (local.get $2) (local.get $18) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) @@ -7431,53 +7221,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $16) - ) - (if - (i32.and - (i32.ge_u - (local.tee $12 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $12) - (local.get $3) - ) - (i32.store offset=8 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $12) - ) - (i32.store offset=12 - (local.get $3) - (local.get $16) - ) - (i32.store offset=24 - (local.get $3) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) ) - (call $_abort) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $_abort) ) ) ) @@ -7487,30 +7274,30 @@ (i32.const 180) (i32.or (local.get $5) - (local.get $14) + (local.get $7) ) ) (i32.store offset=480 - (local.get $1) (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) - (local.get $7) + (local.get $2) + (local.get $4) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) (i32.store (i32.const 208) - (local.tee $3 + (local.tee $0 (i32.add (i32.load (i32.const 208) @@ -7521,14 +7308,14 @@ ) (local.set $0 (if (result i32) - (local.get $3) + (local.get $0) (return) (i32.const 632) ) ) (loop $while-in17 (if - (local.tee $3 + (local.tee $0 (i32.load (local.get $0) ) @@ -7536,7 +7323,7 @@ (block (local.set $0 (i32.add - (local.get $3) + (local.get $0) (i32.const 8) ) ) @@ -7561,9 +7348,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -7574,129 +7359,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 8) - ) - (block (result i32) - (call $_pthread_cleanup_push - (i32.const 4) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $_pthread_cleanup_pop - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 8) + ) + (block + (call $_pthread_cleanup_push + (i32.const 4) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $_pthread_cleanup_pop + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7706,123 +7485,125 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $14 + (local.set $12 (local.get $1) ) - (local.set $15 - (local.get $3) + (local.set $13 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.le_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (if - (i32.eq - (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) + (local.set $5 + (if (result i32) + (i32.le_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) ) ) ) - (local.set $3 - (i32.const 2) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) - ) - ) - (local.set $9 - (local.get $4) - ) - ) - (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) - ) - ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) ) ) - (local.set $3 - (i32.add + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const -1) ) ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) - (local.set $13 + (local.set $11 (if (result i32) (i32.eq (local.get $1) @@ -7832,9 +7613,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7844,11 +7625,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7881,26 +7662,26 @@ ) (if (result i32) (i32.eq - (local.get $15) + (local.get $13) (i32.const 2) ) (i32.const 0) (i32.sub (local.get $2) (i32.load offset=4 - (local.get $14) + (local.get $12) ) ) ) ) - (local.get $13) + (local.get $11) ) ) ) (global.set $STACKTOP - (local.get $10) + (local.get $9) ) - (local.get $13) + (local.get $11) ) (func $___fwritex (; 18 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7908,14 +7689,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 672) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7923,7 +7700,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7932,13 +7709,13 @@ (call $___towrite (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7946,15 +7723,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$L5 (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -7982,9 +7759,6 @@ (br $label$break$L5) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8011,7 +7785,7 @@ (if (i32.ne (i32.load8_s offset=672 - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8022,7 +7796,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8053,35 +7827,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 672) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $_memcpy - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8097,10 +7868,9 @@ ) (func $_fflush (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) (if (local.get $0) - (local.set $1 + (local.set $0 (block $do-once (result i32) (if (i32.le_s @@ -8143,56 +7913,45 @@ (i32.const 32) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) + (loop $while-in + (drop + (i32.load offset=76 + (local.get $1) + ) ) - (loop $while-in - (drop - (i32.load offset=76 - (local.get $2) + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - ) - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) ) - (local.set $1 - (i32.or - (call $___fflush_unlocked - (local.get $2) - ) + ) + (local.set $0 + (i32.or + (call $___fflush_unlocked (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $___unlock (i32.const 36) ) ) ) - (local.get $1) + (local.get $0) ) (func $_strlen (; 20 ;) (; has Stack IR ;) (result i32) (local $0 i32) @@ -8204,48 +7963,48 @@ (i32.const 672) ) (block - (local.set $1 + (local.set $4 (i32.const 672) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8256,28 +8015,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8285,7 +8033,7 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 672) ) @@ -8298,7 +8046,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) (local.set $3 (global.get $STACKTOP) ) @@ -8314,18 +8061,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8335,13 +8079,13 @@ (call $___towrite (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8355,15 +8099,12 @@ (local.get $6) (i32.const 4) ) - (local.set $1 + (local.set $2 (block $do-once (result i32) - (local.set $1 - (local.get $0) - ) (if (if (result i32) (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=20 (local.get $0) ) @@ -8371,7 +8112,7 @@ (local.get $5) ) (i32.ne - (local.tee $8 + (local.tee $7 (i32.const 10) ) (i32.load8_s offset=75 @@ -8382,18 +8123,18 @@ ) (block (i32.store offset=20 - (local.get $1) + (local.get $0) (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (i32.store8 - (local.get $2) + (local.get $1) (i32.const 10) ) (br $do-once - (local.get $8) + (local.get $7) ) ) ) @@ -8426,7 +8167,7 @@ (global.set $STACKTOP (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $___fflush_unlocked (; 22 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -9115,7 +8856,7 @@ (i32.const -1) ) ) - (local.set $3 + (local.set $0 (call $___stdio_write (local.get $0) (local.get $1) @@ -9125,7 +8866,7 @@ (global.set $STACKTOP (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $___stdio_close (; 31 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/emcc_O2_hello_world.fromasm.imprecise b/test/emcc_O2_hello_world.fromasm.imprecise index 2d1eb6660..9439cf363 100644 --- a/test/emcc_O2_hello_world.fromasm.imprecise +++ b/test/emcc_O2_hello_world.fromasm.imprecise @@ -98,11 +98,6 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) (if (i32.lt_u (local.get $0) @@ -111,16 +106,16 @@ (block (if (i32.and - (local.tee $2 + (local.tee $5 (i32.shr_u - (local.tee $15 + (local.tee $18 (i32.load (i32.const 176) ) ) (local.tee $6 (i32.shr_u - (local.tee $8 + (local.tee $4 (select (i32.const 16) (i32.and @@ -144,74 +139,69 @@ (i32.const 3) ) (block - (local.set $8 - (local.tee $1 - (i32.add - (i32.shl - (local.tee $6 - (i32.add - (local.get $6) - (i32.xor - (i32.and - (local.get $2) - (i32.const 1) + (local.set $0 + (i32.load + (local.tee $6 + (i32.add + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $6) + (i32.xor + (i32.and + (local.get $5) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const 1) ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne + (local.get $0) (local.get $1) - (local.tee $7 - (i32.load - (local.tee $17 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) - ) - ) - ) ) (block (if (i32.lt_u - (local.get $7) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $2 - (local.get $7) - ) (if (i32.eq - (local.get $0) + (local.get $4) (i32.load offset=12 - (local.get $2) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $2) + (local.get $0) (local.get $1) ) (i32.store offset=8 - (local.get $8) - (local.get $7) + (local.get $1) + (local.get $0) ) ) (call $_abort) @@ -223,34 +213,33 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $4) (i32.or - (local.tee $7 + (local.tee $0 (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $0) - (local.get $7) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $4) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -259,14 +248,14 @@ ) ) (return - (local.get $17) + (local.get $6) ) ) ) (if (i32.gt_u - (local.get $8) - (local.tee $5 + (local.get $4) + (local.tee $0 (i32.load (i32.const 184) ) @@ -274,12 +263,12 @@ ) (block (if - (local.get $2) + (local.get $5) (block (local.set $1 (i32.and (i32.shr_u - (local.tee $7 + (local.tee $3 (i32.add (i32.and (i32.sub @@ -289,17 +278,17 @@ (i32.or (i32.sub (i32.const 0) - (local.tee $7 + (local.tee $1 (i32.shl (i32.const 2) (local.get $6) ) ) ) - (local.get $7) + (local.get $1) ) (i32.shl - (local.get $2) + (local.get $5) (local.get $6) ) ) @@ -315,12 +304,12 @@ (i32.const 16) ) ) - (local.set $7 + (local.set $3 (i32.and (i32.shr_u - (local.tee $10 + (local.tee $6 (i32.shr_u - (local.get $7) + (local.get $3) (local.get $1) ) ) @@ -329,13 +318,13 @@ (i32.const 8) ) ) - (local.set $10 + (local.set $6 (i32.and (i32.shr_u - (local.tee $0 + (local.tee $2 (i32.shr_u - (local.get $10) - (local.get $7) + (local.get $6) + (local.get $3) ) ) (i32.const 2) @@ -343,13 +332,13 @@ (i32.const 4) ) ) - (local.set $0 + (local.set $2 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $5 (i32.shr_u - (local.get $0) - (local.get $10) + (local.get $2) + (local.get $6) ) ) (i32.const 1) @@ -357,67 +346,65 @@ (i32.const 2) ) ) - (local.set $6 - (local.tee $11 - (i32.add - (i32.shl - (local.tee $7 - (i32.add - (i32.or - (local.tee $11 - (i32.and - (i32.shr_u - (local.tee $19 + (local.set $1 + (i32.load + (local.tee $10 + (i32.add + (local.tee $6 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $2 + (i32.add + (i32.or + (local.tee $10 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $5) + (local.get $2) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $2) + (i32.or + (local.get $6) + (i32.or + (local.get $1) + (local.get $3) + ) + ) + ) + ) (i32.shr_u - (local.get $11) - (local.get $0) + (local.get $5) + (local.get $10) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $0) - (i32.or - (local.get $10) - (i32.or - (local.get $1) - (local.get $7) ) + (i32.const 3) ) + (i32.const 216) ) ) - (i32.shr_u - (local.get $19) - (local.get $11) - ) ) ) - (i32.const 3) + (i32.const 8) ) - (i32.const 216) ) ) ) (if (i32.ne - (local.tee $1 - (i32.load - (local.tee $10 - (i32.add - (local.tee $0 - (i32.load offset=8 - (local.get $6) - ) - ) - (i32.const 8) - ) - ) - ) - ) - (local.get $11) + (local.get $1) + (local.get $3) ) (block (if @@ -429,26 +416,23 @@ ) (call $_abort) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $0) + (local.get $6) (i32.load offset=12 (local.get $1) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $11) + (local.get $1) + (local.get $3) ) (i32.store offset=8 - (local.get $6) + (local.get $3) (local.get $1) ) - (local.set $17 + (local.set $13 (i32.load (i32.const 184) ) @@ -464,40 +448,40 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $7) + (local.get $2) ) (i32.const -1) ) - (local.get $15) + (local.get $18) ) ) - (local.set $17 - (local.get $5) + (local.set $13 + (local.get $0) ) ) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.tee $15 + (local.tee $5 (i32.add - (local.get $0) - (local.get $8) + (local.get $4) + (local.get $6) ) ) (i32.or - (local.tee $5 + (local.tee $6 (i32.sub (i32.shl - (local.get $7) + (local.get $2) (i32.const 3) ) - (local.get $8) + (local.get $4) ) ) (i32.const 1) @@ -506,24 +490,24 @@ (i32.store (i32.add (local.get $5) - (local.get $15) + (local.get $6) ) - (local.get $5) + (local.get $6) ) (if - (local.get $17) + (local.get $13) (block - (local.set $1 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.tee $19 + (local.tee $1 (i32.shr_u - (local.get $17) + (local.get $13) (i32.const 3) ) ) @@ -534,25 +518,25 @@ ) (if (i32.and - (local.tee $6 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $2 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $19) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $17 + (local.tee $4 (i32.load - (local.tee $19 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -564,11 +548,11 @@ ) (call $_abort) (block - (local.set $37 - (local.get $19) + (local.set $25 + (local.get $1) ) - (local.set $31 - (local.get $17) + (local.set $8 + (local.get $4) ) ) ) @@ -576,46 +560,46 @@ (i32.store (i32.const 176) (i32.or - (local.get $2) - (local.get $6) + (local.get $1) + (local.get $4) ) ) - (local.set $37 + (local.set $25 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $31 - (local.get $11) + (local.set $8 + (local.get $0) ) ) ) (i32.store - (local.get $37) - (local.get $1) + (local.get $25) + (local.get $3) ) (i32.store offset=12 - (local.get $31) - (local.get $1) + (local.get $8) + (local.get $3) ) (i32.store offset=8 - (local.get $1) - (local.get $31) + (local.get $3) + (local.get $8) ) (i32.store offset=12 - (local.get $1) - (local.get $11) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $5) + (local.get $6) ) (i32.store (i32.const 196) - (local.get $15) + (local.get $5) ) (return (local.get $10) @@ -623,23 +607,23 @@ ) ) (if - (local.tee $15 + (local.tee $0 (i32.load (i32.const 180) ) ) (block - (local.set $15 + (local.set $0 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $1 (i32.add (i32.and (i32.sub (i32.const 0) - (local.get $15) + (local.get $0) ) - (local.get $15) + (local.get $0) ) (i32.const -1) ) @@ -649,13 +633,13 @@ (i32.const 16) ) ) - (local.set $5 + (local.set $1 (i32.and (i32.shr_u - (local.tee $11 + (local.tee $3 (i32.shr_u - (local.get $5) - (local.get $15) + (local.get $1) + (local.get $0) ) ) (i32.const 5) @@ -663,13 +647,13 @@ (i32.const 8) ) ) - (local.set $11 + (local.set $3 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $6 (i32.shr_u - (local.get $11) - (local.get $5) + (local.get $3) + (local.get $1) ) ) (i32.const 2) @@ -677,13 +661,13 @@ (i32.const 4) ) ) - (local.set $1 + (local.set $6 (i32.and (i32.shr_u - (local.tee $2 + (local.tee $8 (i32.shr_u - (local.get $1) - (local.get $11) + (local.get $6) + (local.get $3) ) ) (i32.const 1) @@ -691,22 +675,22 @@ (i32.const 2) ) ) - (local.set $2 + (local.set $5 (i32.sub (i32.and (i32.load offset=4 - (local.tee $17 + (local.tee $1 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $2 + (local.tee $5 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $8 (i32.shr_u - (local.get $2) - (local.get $1) + (local.get $8) + (local.get $6) ) ) (i32.const 1) @@ -715,19 +699,19 @@ ) ) (i32.or - (local.get $1) + (local.get $6) (i32.or - (local.get $11) + (local.get $3) (i32.or - (local.get $5) - (local.get $15) + (local.get $0) + (local.get $1) ) ) ) ) (i32.shr_u - (local.get $6) - (local.get $2) + (local.get $8) + (local.get $5) ) ) (i32.const 2) @@ -737,70 +721,67 @@ ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.set $1 - (local.tee $6 - (local.get $17) - ) + (local.set $0 + (local.get $1) ) (loop $while-in (block $while-out - (local.set $11 + (if + (local.tee $3 + (i32.load offset=16 + (local.get $1) + ) + ) + (local.set $1 + (local.get $3) + ) + (if + (i32.eqz + (local.tee $1 + (i32.load offset=20 + (local.get $1) + ) + ) + ) + (block + (local.set $8 + (local.get $0) + ) + (br $while-out) + ) + ) + ) + (local.set $3 (i32.lt_u - (local.tee $17 + (local.tee $6 (i32.sub (i32.and (i32.load offset=4 - (local.tee $6 - (if (result i32) - (local.tee $17 - (i32.load offset=16 - (local.get $6) - ) - ) - (local.get $17) - (if (result i32) - (local.tee $11 - (i32.load offset=20 - (local.get $6) - ) - ) - (local.get $11) - (block - (local.set $9 - (local.get $2) - ) - (local.set $5 - (local.get $1) - ) - (br $while-out) - ) - ) - ) - ) + (local.get $1) ) (i32.const -8) ) - (local.get $8) + (local.get $4) ) ) - (local.get $2) + (local.get $5) ) ) - (local.set $2 + (local.set $5 (select - (local.get $17) - (local.get $2) - (local.get $11) + (local.get $6) + (local.get $5) + (local.get $3) ) ) - (local.set $1 + (local.set $0 (select - (local.get $6) (local.get $1) - (local.get $11) + (local.get $0) + (local.get $3) ) ) (br $while-in) @@ -808,8 +789,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $1 + (local.get $8) + (local.tee $18 (i32.load (i32.const 192) ) @@ -819,104 +800,98 @@ ) (if (i32.ge_u - (local.get $5) - (local.tee $6 + (local.get $8) + (local.tee $14 (i32.add - (local.get $5) + (local.get $4) (local.get $8) ) ) ) (call $_abort) ) - (local.set $2 + (local.set $10 (i32.load offset=24 - (local.get $5) + (local.get $8) ) ) (if (i32.eq - (local.tee $10 + (local.get $8) + (local.tee $0 (i32.load offset=12 - (local.get $5) + (local.get $8) ) ) - (local.get $5) ) (block $do-once4 - (local.set $4 - (if (result i32) - (local.tee $7 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $0 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $7) - ) - (local.get $0) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $11 + (local.tee $1 (i32.add - (local.get $5) + (local.get $8) (i32.const 16) ) ) ) ) - (local.get $11) - (br $do-once4) ) ) ) (loop $while-in7 (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) ) (if - (local.tee $7 + (local.tee $6 (i32.load - (local.tee $0 + (local.tee $3 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $7) + (local.set $0 + (local.get $6) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) (br $while-in7) ) @@ -924,17 +899,17 @@ ) (if (i32.lt_u - (local.get $4) (local.get $1) + (local.get $18) ) (call $_abort) (block (i32.store - (local.get $4) + (local.get $1) (i32.const 0) ) - (local.set $19 - (local.get $17) + (local.set $2 + (local.get $0) ) ) ) @@ -942,48 +917,42 @@ (block (if (i32.lt_u - (local.tee $0 + (local.tee $1 (i32.load offset=8 - (local.get $5) + (local.get $8) ) ) - (local.get $1) + (local.get $18) ) (call $_abort) ) - (local.set $1 - (local.get $0) - ) (if (i32.ne - (local.get $5) + (local.get $8) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $10) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=8 - (local.get $7) + (local.get $0) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $10) + (local.get $0) ) (i32.store offset=8 - (local.get $7) (local.get $0) + (local.get $1) ) - (local.set $19 - (local.get $10) + (local.set $2 + (local.get $0) ) ) (call $_abort) @@ -991,33 +960,32 @@ ) ) (if - (local.get $2) + (local.get $10) (block $do-once8 - (local.set $0 - (i32.shl - (local.tee $10 - (i32.load offset=28 - (local.get $5) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $5) + (local.get $8) ) (block (i32.store offset=480 - (local.get $0) - (local.get $19) + (local.get $1) + (local.get $2) ) (if (i32.eqz - (local.get $19) + (local.get $2) ) (block (i32.store @@ -1029,7 +997,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $10) + (local.get $0) ) (i32.const -1) ) @@ -1042,43 +1010,40 @@ (block (if (i32.lt_u - (local.get $2) + (local.get $10) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $2) - ) (if (i32.eq - (local.get $5) + (local.get $8) (i32.load offset=16 - (local.get $0) + (local.get $10) ) ) (i32.store offset=16 - (local.get $0) - (local.get $19) + (local.get $10) + (local.get $2) ) (i32.store offset=20 + (local.get $10) (local.get $2) - (local.get $19) ) ) (br_if $do-once8 (i32.eqz - (local.get $19) + (local.get $2) ) ) ) ) (if (i32.lt_u - (local.get $19) - (local.tee $10 + (local.get $2) + (local.tee $1 (i32.load (i32.const 192) ) @@ -1087,42 +1052,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $19) (local.get $2) + (local.get $10) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u + (local.get $0) (local.get $1) - (local.get $10) ) (call $_abort) (block (i32.store offset=16 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=20 - (local.get $5) + (local.get $8) ) ) (if (i32.lt_u - (local.get $1) + (local.get $0) (i32.load (i32.const 192) ) @@ -1130,12 +1095,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $19) - (local.get $1) + (local.get $2) + (local.get $0) ) (i32.store offset=24 - (local.get $1) - (local.get $19) + (local.get $0) + (local.get $2) ) ) ) @@ -1144,30 +1109,29 @@ ) (if (i32.lt_u - (local.get $9) + (local.get $5) (i32.const 16) ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.tee $2 + (local.tee $0 (i32.add - (local.get $8) - (local.get $9) + (local.get $4) + (local.get $5) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $2) - (local.get $5) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $8) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -1178,44 +1142,44 @@ ) (block (i32.store offset=4 - (local.get $5) + (local.get $8) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $14) (i32.or - (local.get $9) + (local.get $5) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $9) + (local.get $5) + (local.get $14) ) - (local.get $9) + (local.get $5) ) (if - (local.tee $1 + (local.tee $0 (i32.load (i32.const 184) ) ) (block - (local.set $2 + (local.set $3 (i32.load (i32.const 196) ) ) - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.tee $10 + (local.tee $1 (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 3) ) ) @@ -1226,25 +1190,25 @@ ) (if (i32.and - (local.tee $0 + (local.tee $4 (i32.load (i32.const 176) ) ) - (local.tee $11 + (local.tee $1 (i32.shl (i32.const 1) - (local.get $10) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $4 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -1256,11 +1220,11 @@ ) (call $_abort) (block - (local.set $38 - (local.get $10) + (local.set $19 + (local.get $1) ) - (local.set $32 - (local.get $7) + (local.set $7 + (local.get $4) ) ) ) @@ -1268,52 +1232,52 @@ (i32.store (i32.const 176) (i32.or - (local.get $0) - (local.get $11) + (local.get $1) + (local.get $4) ) ) - (local.set $38 + (local.set $19 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $32 - (local.get $1) + (local.set $7 + (local.get $0) ) ) ) (i32.store - (local.get $38) - (local.get $2) + (local.get $19) + (local.get $3) ) (i32.store offset=12 - (local.get $32) - (local.get $2) + (local.get $7) + (local.get $3) ) (i32.store offset=8 - (local.get $2) - (local.get $32) + (local.get $3) + (local.get $7) ) (i32.store offset=12 - (local.get $2) - (local.get $1) + (local.get $3) + (local.get $0) ) ) ) (i32.store (i32.const 184) - (local.get $9) + (local.get $5) ) (i32.store (i32.const 196) - (local.get $6) + (local.get $14) ) ) ) (return (i32.add - (local.get $5) + (local.get $8) (i32.const 8) ) ) @@ -1322,16 +1286,16 @@ ) ) ) - (local.set $8 + (local.set $4 (if (result i32) (i32.le_u (local.get $0) (i32.const -65) ) (block $do-once (result i32) - (local.set $2 + (local.set $5 (i32.and - (local.tee $1 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1341,162 +1305,157 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $39 (i32.load (i32.const 180) ) ) (block (result i32) - (local.set $0 - (i32.sub - (i32.const 0) - (local.get $2) - ) - ) - (if - (local.tee $15 - (i32.load offset=480 - (i32.shl - (local.tee $8 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $1) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $2) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $10 - (i32.shl - (local.get $7) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) + (local.set $19 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $0) + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) + (i32.const 16) ) - (i32.const 520192) + (i32.const 8) ) - (i32.const 16) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $2) - (i32.add - (local.tee $15 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $10 - (i32.and - (i32.shr_u - (i32.add - (local.tee $17 - (i32.shl - (local.get $10) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (i32.add + (local.tee $8 + (i32.shl + (local.get $8) + (local.get $0) ) ) - (i32.or - (local.get $1) - (local.get $7) - ) + (i32.const 245760) ) + (i32.const 16) ) - (i32.shr_u - (i32.shl - (local.get $17) - (local.get $10) - ) - (i32.const 15) - ) + (i32.const 2) ) ) - (i32.const 7) + (i32.or + (local.get $0) + (local.get $2) + ) ) ) - (i32.const 1) - ) - (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $8) + (local.get $7) + ) + (i32.const 15) + ) ) ) + (i32.const 7) ) ) - (i32.const 0) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) ) + ) + ) + (i32.const 0) + ) + ) + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $5) + ) + ) + (if + (local.tee $7 + (i32.load offset=480 + (i32.shl + (local.get $19) (i32.const 2) ) ) ) (block $label$break$L123 - (local.set $10 - (local.get $0) - ) - (local.set $17 - (i32.const 0) - ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $2) + (local.get $5) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $8) + (local.get $19) (i32.const 1) ) ) (i32.eq - (local.get $8) + (local.get $19) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $15) + (local.set $8 + (i32.const 0) ) - (local.set $6 + (local.set $18 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $0 + (local.tee $13 (i32.sub - (local.tee $19 + (local.tee $9 (i32.and (i32.load offset=4 (local.get $7) @@ -1504,55 +1463,54 @@ (i32.const -8) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $10) + (local.get $2) ) - (local.set $5 + (local.set $2 (if (result i32) (i32.eq - (local.get $2) - (local.get $19) + (local.get $5) + (local.get $9) ) (block - (local.set $28 - (local.get $0) + (local.set $4 + (local.get $13) ) - (local.set $25 + (local.set $20 (local.get $7) ) - (local.set $29 + (local.set $6 (local.get $7) ) - (local.set $10 + (local.set $9 (i32.const 90) ) (br $label$break$L123) ) (block (result i32) - (local.set $10 - (local.get $0) + (local.set $8 + (local.get $7) ) - (local.get $7) + (local.get $13) ) ) ) ) - (local.set $19 + (local.set $13 (select - (local.get $17) - (local.tee $0 + (local.get $25) + (local.tee $13 (i32.load offset=20 (local.get $7) ) ) (i32.or (i32.eqz - (local.get $0) + (local.get $13) ) (i32.eq - (local.get $0) (local.tee $7 (i32.load (i32.add @@ -1562,7 +1520,7 @@ ) (i32.shl (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 31) ) (i32.const 2) @@ -1570,40 +1528,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $0 + (local.tee $9 (i32.eqz (local.get $7) ) ) (block (result i32) - (local.set $33 - (local.get $10) + (local.set $21 + (local.get $13) ) - (local.set $30 - (local.get $5) + (local.set $26 + (local.get $8) ) - (local.set $10 + (local.set $9 (i32.const 86) ) - (local.get $19) + (local.get $2) ) (block - (local.set $17 - (local.get $19) + (local.set $25 + (local.get $13) ) - (local.set $1 + (local.set $0 (i32.shl - (local.get $1) + (local.get $0) (i32.xor - (i32.and - (local.get $0) - (i32.const 1) - ) + (local.get $9) (i32.const 1) ) ) @@ -1615,47 +1571,47 @@ ) ) (block - (local.set $33 - (local.get $0) + (local.set $18 + (local.get $2) ) - (local.set $10 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 86) ) (block (if (i32.eqz (i32.or - (local.get $6) - (local.get $30) + (local.get $21) + (local.get $26) ) ) (block (drop (br_if $do-once - (local.get $2) + (local.get $5) (i32.eqz (local.tee $0 (i32.and (i32.or (i32.sub (i32.const 0) - (local.tee $15 + (local.tee $0 (i32.shl (i32.const 2) - (local.get $8) + (local.get $19) ) ) ) - (local.get $15) + (local.get $0) ) - (local.get $11) + (local.get $39) ) ) ) @@ -1664,7 +1620,7 @@ (local.set $0 (i32.and (i32.shr_u - (local.tee $15 + (local.tee $2 (i32.add (i32.and (i32.sub @@ -1681,12 +1637,12 @@ (i32.const 16) ) ) - (local.set $15 + (local.set $2 (i32.and (i32.shr_u (local.tee $8 (i32.shr_u - (local.get $15) + (local.get $2) (local.get $0) ) ) @@ -1698,10 +1654,10 @@ (local.set $8 (i32.and (i32.shr_u - (local.tee $6 + (local.tee $7 (i32.shr_u (local.get $8) - (local.get $15) + (local.get $2) ) ) (i32.const 2) @@ -1709,12 +1665,12 @@ (i32.const 4) ) ) - (local.set $6 + (local.set $7 (i32.and (i32.shr_u - (local.tee $5 + (local.tee $13 (i32.shr_u - (local.get $6) + (local.get $7) (local.get $8) ) ) @@ -1723,18 +1679,18 @@ (i32.const 2) ) ) - (local.set $6 + (local.set $21 (i32.load offset=480 (i32.shl (i32.add (i32.or - (local.tee $5 + (local.tee $21 (i32.and (i32.shr_u - (local.tee $1 + (local.tee $13 (i32.shr_u - (local.get $5) - (local.get $6) + (local.get $13) + (local.get $7) ) ) (i32.const 1) @@ -1743,19 +1699,19 @@ ) ) (i32.or - (local.get $6) + (local.get $7) (i32.or (local.get $8) (i32.or (local.get $0) - (local.get $15) + (local.get $2) ) ) ) ) (i32.shr_u - (local.get $1) - (local.get $5) + (local.get $13) + (local.get $21) ) ) (i32.const 2) @@ -1765,27 +1721,27 @@ ) ) (if - (local.get $6) + (local.get $21) (block - (local.set $28 - (local.get $33) + (local.set $4 + (local.get $18) ) - (local.set $25 - (local.get $6) + (local.set $20 + (local.get $21) ) - (local.set $29 - (local.get $30) + (local.set $6 + (local.get $26) ) - (local.set $10 + (local.set $9 (i32.const 90) ) ) (block - (local.set $4 - (local.get $33) + (local.set $11 + (local.get $18) ) - (local.set $13 - (local.get $30) + (local.set $12 + (local.get $26) ) ) ) @@ -1796,106 +1752,89 @@ (block (result i32) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 90) ) - (local.set $4 + (local.set $11 (loop $while-in16 (result i32) - (local.set $10 + (local.set $9 (i32.const 0) ) - (local.set $1 + (local.set $0 (i32.lt_u - (local.tee $5 + (local.tee $2 (i32.sub (i32.and (i32.load offset=4 - (local.get $25) + (local.get $20) ) (i32.const -8) ) - (local.get $2) + (local.get $5) ) ) - (local.get $28) + (local.get $4) ) ) - (local.set $6 + (local.set $4 (select - (local.get $5) - (local.get $28) - (local.get $1) + (local.get $2) + (local.get $4) + (local.get $0) ) ) - (local.set $5 + (local.set $6 (select - (local.get $25) - (local.get $29) - (local.get $1) + (local.get $20) + (local.get $6) + (local.get $0) ) ) (if - (local.tee $1 + (local.tee $0 (i32.load offset=16 - (local.get $25) + (local.get $20) ) ) (block - (local.set $28 - (local.get $6) - ) - (local.set $25 - (local.get $1) - ) - (local.set $29 - (local.get $5) + (local.set $20 + (local.get $0) ) (br $while-in16) ) ) - (if (result i32) - (local.tee $25 + (br_if $while-in16 + (local.tee $20 (i32.load offset=20 - (local.get $25) - ) - ) - (block - (local.set $28 - (local.get $6) - ) - (local.set $29 - (local.get $5) - ) - (br $while-in16) - ) - (block (result i32) - (local.set $13 - (local.get $5) + (local.get $20) ) - (local.get $6) ) ) + (local.set $12 + (local.get $6) + ) + (local.get $4) ) ) ) (i32.lt_u - (local.get $4) + (local.get $11) (i32.sub (i32.load (i32.const 184) ) - (local.get $2) + (local.get $5) ) ) ) (i32.const 0) - (local.get $13) + (local.get $12) ) (block (if (i32.lt_u - (local.get $13) - (local.tee $11 + (local.get $12) + (local.tee $8 (i32.load (i32.const 192) ) @@ -1905,11 +1844,11 @@ ) (if (i32.ge_u - (local.get $13) - (local.tee $5 + (local.get $12) + (local.tee $2 (i32.add - (local.get $2) - (local.get $13) + (local.get $5) + (local.get $12) ) ) ) @@ -1917,92 +1856,86 @@ ) (local.set $6 (i32.load offset=24 - (local.get $13) + (local.get $12) ) ) (if (i32.eq - (local.tee $1 + (local.get $12) + (local.tee $0 (i32.load offset=12 - (local.get $13) + (local.get $12) ) ) - (local.get $13) ) (block $do-once17 - (local.set $1 - (if (result i32) + (if + (i32.eqz (local.tee $0 (i32.load - (local.tee $8 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $17 - (local.get $0) - ) - (local.get $8) - ) - (if (result i32) - (local.tee $17 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $15 + (local.tee $1 (i32.add - (local.get $13) + (local.get $12) (i32.const 16) ) ) ) ) - (local.get $15) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $0 + (local.tee $3 (i32.load - (local.tee $8 + (local.tee $4 (i32.add - (local.get $17) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $17 - (local.get $0) + (local.set $0 + (local.get $3) ) (local.set $1 - (local.get $8) + (local.get $4) ) (br $while-in20) ) @@ -2011,7 +1944,7 @@ (if (i32.lt_u (local.get $1) - (local.get $11) + (local.get $8) ) (call $_abort) (block @@ -2019,8 +1952,8 @@ (local.get $1) (i32.const 0) ) - (local.set $9 - (local.get $17) + (local.set $15 + (local.get $0) ) ) ) @@ -2028,49 +1961,43 @@ (block (if (i32.lt_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $13) + (local.get $12) ) ) - (local.get $11) + (local.get $8) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.ne - (local.get $13) + (local.get $12) (i32.load offset=12 - (local.get $0) + (local.get $1) ) ) (call $_abort) ) - (local.set $7 - (local.get $1) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $0) (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $7) - (local.get $8) - ) - (local.set $9 + (local.get $0) (local.get $1) ) + (local.set $15 + (local.get $0) + ) ) (call $_abort) ) @@ -2079,31 +2006,30 @@ (if (local.get $6) (block $do-once21 - (local.set $0 - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $13) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $0) + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $12) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $13) + (local.get $12) ) (block (i32.store offset=480 - (local.get $0) - (local.get $9) + (local.get $1) + (local.get $15) ) (if (i32.eqz - (local.get $9) + (local.get $15) ) (block (i32.store @@ -2115,7 +2041,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $1) + (local.get $0) ) (i32.const -1) ) @@ -2135,35 +2061,32 @@ ) (call $_abort) ) - (local.set $0 - (local.get $6) - ) (if (i32.eq - (local.get $13) + (local.get $12) (i32.load offset=16 - (local.get $0) + (local.get $6) ) ) (i32.store offset=16 - (local.get $0) - (local.get $9) + (local.get $6) + (local.get $15) ) (i32.store offset=20 (local.get $6) - (local.get $9) + (local.get $15) ) ) (br_if $do-once21 (i32.eqz - (local.get $9) + (local.get $15) ) ) ) ) (if (i32.lt_u - (local.get $9) + (local.get $15) (local.tee $1 (i32.load (i32.const 192) @@ -2173,42 +2096,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $9) + (local.get $15) (local.get $6) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=16 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (local.get $1) ) (call $_abort) (block (i32.store offset=16 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) ) (if - (local.tee $11 + (local.tee $0 (i32.load offset=20 - (local.get $13) + (local.get $12) ) ) (if (i32.lt_u - (local.get $11) + (local.get $0) (i32.load (i32.const 192) ) @@ -2216,12 +2139,12 @@ (call $_abort) (block (i32.store offset=20 - (local.get $9) - (local.get $11) + (local.get $15) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $9) + (local.get $0) + (local.get $15) ) ) ) @@ -2230,47 +2153,47 @@ ) (if (i32.ge_u - (local.get $4) + (local.get $11) (i32.const 16) ) (block $do-once25 (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.get $2) + (local.get $5) (i32.const 3) ) ) (i32.store offset=4 - (local.get $5) + (local.get $2) (i32.or - (local.get $4) + (local.get $11) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $5) + (local.get $2) + (local.get $11) ) - (local.get $4) + (local.get $11) ) - (local.set $6 + (local.set $1 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 3) ) ) (if (i32.lt_u - (local.get $4) + (local.get $11) (i32.const 256) ) (block - (local.set $11 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $1) (i32.const 3) ) (i32.const 216) @@ -2278,25 +2201,25 @@ ) (if (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $6) + (local.tee $4 + (i32.load + (i32.const 176) ) ) (local.tee $1 - (i32.load - (i32.const 176) + (i32.shl + (i32.const 1) + (local.get $1) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $1 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) @@ -2308,11 +2231,11 @@ ) (call $_abort) (block - (local.set $16 - (local.get $6) + (local.set $17 + (local.get $1) ) - (local.set $26 - (local.get $15) + (local.set $27 + (local.get $4) ) ) ) @@ -2321,70 +2244,70 @@ (i32.const 176) (i32.or (local.get $1) - (local.get $8) + (local.get $4) ) ) - (local.set $16 + (local.set $17 (i32.add - (local.get $11) + (local.get $0) (i32.const 8) ) ) - (local.set $26 - (local.get $11) + (local.set $27 + (local.get $0) ) ) ) (i32.store - (local.get $16) - (local.get $5) + (local.get $17) + (local.get $2) ) (i32.store offset=12 - (local.get $26) - (local.get $5) + (local.get $27) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $26) + (local.get $2) + (local.get $27) ) (i32.store offset=12 - (local.get $5) - (local.get $11) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $6 + (local.set $1 (i32.add (local.tee $0 (i32.shl - (local.tee $7 + (local.tee $6 (if (result i32) - (local.tee $11 + (local.tee $0 (i32.shr_u - (local.get $4) + (local.get $11) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $4) + (local.get $11) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $11 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $1 + (local.tee $4 (i32.shl - (local.get $11) - (local.tee $8 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $11) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2404,21 +2327,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $4) + (local.get $11) (i32.add - (local.tee $6 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $1 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.get $11) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2429,15 +2352,15 @@ ) ) (i32.or - (local.get $8) - (local.get $11) + (local.get $0) + (local.get $1) ) ) ) (i32.shr_u (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2449,7 +2372,7 @@ (i32.const 1) ) (i32.shl - (local.get $6) + (local.get $0) (i32.const 1) ) ) @@ -2465,158 +2388,160 @@ ) ) (i32.store offset=28 - (local.get $5) - (local.get $7) + (local.get $2) + (local.get $6) ) (i32.store offset=20 - (local.get $5) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $5) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $15 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 180) ) ) + (local.tee $3 + (i32.shl + (i32.const 1) + (local.get $6) + ) + ) ) ) (block (i32.store (i32.const 180) (i32.or - (local.get $1) - (local.get $15) + (local.get $3) + (local.get $4) ) ) (i32.store offset=480 (local.get $0) - (local.get $5) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $6) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $15 + (local.set $3 (i32.shl - (local.get $4) + (local.get $11) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $7) + (local.get $6) (i32.const 1) ) ) (i32.eq - (local.get $7) + (local.get $6) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 (local.get $0) ) ) - (if - (i32.eq - (local.tee $10 - (loop $while-in28 (result i32) - (block $while-out27 (result i32) - (if - (i32.eq - (local.get $4) - (i32.and - (i32.load offset=4 - (local.get $1) - ) - (i32.const -8) - ) - ) - (block - (local.set $14 - (local.get $1) - ) - (br $while-out27 - (i32.const 148) - ) - ) + (loop $while-in28 + (block $while-out27 + (if + (i32.eq + (local.get $11) + (i32.and + (i32.load offset=4 + (local.get $0) ) - (if (result i32) - (local.tee $8 - (i32.load - (local.tee $6 - (i32.add - (i32.add - (local.get $1) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $15) - (i32.const 31) - ) - (i32.const 2) - ) - ) + (i32.const -8) + ) + ) + (block + (local.set $22 + (local.get $0) + ) + (local.set $9 + (i32.const 148) + ) + (br $while-out27) + ) + ) + (local.set $31 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $4 + (i32.add + (i32.add + (local.get $0) + (i32.const 16) ) - ) - ) - (block - (local.set $15 (i32.shl - (local.get $15) - (i32.const 1) + (i32.shr_u + (local.get $3) + (i32.const 31) + ) + (i32.const 2) ) ) - (local.set $1 - (local.get $8) - ) - (br $while-in28) ) - (block (result i32) - (local.set $23 - (local.get $6) - ) - (local.set $20 - (local.get $1) - ) - (i32.const 145) + ) + ) + (block + (local.set $3 + (i32.shl + (local.get $3) + (i32.const 1) ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in28) + ) + (block (result i32) + (local.set $40 + (local.get $0) + ) + (local.set $9 + (i32.const 145) + ) + (local.get $4) ) ) ) + ) + ) + (if + (i32.eq + (local.get $9) (i32.const 145) ) (if (i32.lt_u - (local.get $23) + (local.get $31) (i32.load (i32.const 192) ) @@ -2624,100 +2549,96 @@ (call $_abort) (block (i32.store - (local.get $23) - (local.get $5) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $5) - (local.get $20) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $5) - (local.get $5) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $14) - ) - (if - (i32.and - (i32.ge_u - (local.tee $15 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $8 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $22) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $8) + (local.tee $4 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $15) - (local.get $5) - ) - (i32.store offset=8 - (local.get $0) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $15) - ) - (i32.store offset=12 - (local.get $5) - (local.get $14) - ) - (i32.store offset=24 - (local.get $5) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $22) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) ) - (call $_abort) ) + (call $_abort) ) ) ) ) (block (i32.store offset=4 - (local.get $13) + (local.get $12) (i32.or - (local.tee $15 + (local.tee $0 (i32.add - (local.get $2) - (local.get $4) + (local.get $5) + (local.get $11) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $12) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2729,15 +2650,15 @@ ) (return (i32.add - (local.get $13) + (local.get $12) (i32.const 8) ) ) ) - (local.get $2) + (local.get $5) ) ) - (local.get $2) + (local.get $5) ) ) (i32.const -1) @@ -2746,25 +2667,25 @@ ) (if (i32.ge_u - (local.tee $13 + (local.tee $6 (i32.load (i32.const 184) ) ) - (local.get $8) + (local.get $4) ) (block - (local.set $14 + (local.set $0 (i32.load (i32.const 196) ) ) (if (i32.gt_u - (local.tee $4 + (local.tee $1 (i32.sub - (local.get $13) - (local.get $8) + (local.get $6) + (local.get $4) ) ) (i32.const 15) @@ -2772,35 +2693,35 @@ (block (i32.store (i32.const 196) - (local.tee $20 + (local.tee $3 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 184) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $20) + (local.get $3) (i32.or - (local.get $4) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $4) - (local.get $20) + (local.get $1) + (local.get $3) ) - (local.get $4) + (local.get $1) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $8) + (local.get $4) (i32.const 3) ) ) @@ -2815,23 +2736,22 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $14) + (local.get $0) (i32.or - (local.get $13) + (local.get $6) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $13) - (local.get $14) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $6) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) @@ -2840,1956 +2760,1882 @@ ) (return (i32.add - (local.get $14) + (local.get $0) (i32.const 8) ) ) ) ) - (if - (i32.gt_u - (local.tee $14 - (i32.load - (i32.const 188) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) - (local.get $8) ) - (block - (i32.store - (i32.const 188) - (local.tee $4 - (i32.sub - (local.get $14) - (local.get $8) - ) + (if + (i32.eqz + (i32.load + (i32.const 648) ) ) - (i32.store - (i32.const 200) - (local.tee $13 + (if + (i32.and + (local.tee $0 + (call $_sysconf + (i32.const 30) + ) + ) (i32.add - (local.get $8) - (local.tee $14 - (i32.load - (i32.const 200) + (local.get $0) + (i32.const -1) + ) + ) + (call $_abort) + (block + (i32.store + (i32.const 656) + (local.get $0) + ) + (i32.store + (i32.const 652) + (local.get $0) + ) + (i32.store + (i32.const 660) + (i32.const -1) + ) + (i32.store + (i32.const 664) + (i32.const -1) + ) + (i32.store + (i32.const 668) + (i32.const 0) + ) + (i32.store + (i32.const 620) + (i32.const 0) + ) + (i32.store + (i32.const 648) + (i32.xor + (i32.and + (call $_time + (i32.const 0) + ) + (i32.const -16) ) + (i32.const 1431655768) ) ) ) ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $4) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.get $8) - (i32.const 3) - ) - ) - (return - (i32.add - (local.get $14) - (i32.const 8) - ) - ) ) - ) - (if - (i32.eqz - (i32.load - (i32.const 648) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) (if - (i32.and - (local.tee $14 - (call $_sysconf - (i32.const 30) - ) - ) - (i32.add - (local.get $14) - (i32.const -1) - ) - ) - (call $_abort) - (block - (i32.store - (i32.const 656) - (local.get $14) - ) - (i32.store - (i32.const 652) - (local.get $14) - ) - (i32.store - (i32.const 660) - (i32.const -1) - ) - (i32.store - (i32.const 664) - (i32.const -1) - ) - (i32.store - (i32.const 668) - (i32.const 0) - ) - (i32.store - (i32.const 620) - (i32.const 0) - ) - (i32.store - (i32.const 648) - (i32.xor - (i32.and - (call $_time + (i32.le_u + (local.tee $11 + (i32.and + (local.tee $2 + (i32.add + (local.tee $0 + (i32.load + (i32.const 656) + ) + ) + (local.tee $8 + (i32.add + (local.get $4) + (i32.const 47) + ) + ) + ) + ) + (local.tee $0 + (i32.sub (i32.const 0) + (local.get $0) ) - (i32.const -16) ) - (i32.const 1431655768) ) ) + (local.get $4) ) - ) - ) - (local.set $14 - (i32.add - (local.get $8) - (i32.const 48) - ) - ) - (local.set $20 - (i32.add - (local.tee $4 - (i32.load - (i32.const 656) - ) - ) - (local.tee $13 - (i32.add - (local.get $8) - (i32.const 47) - ) + (return + (i32.const 0) ) ) - ) - (if - (i32.le_u - (local.tee $4 - (i32.and - (local.tee $23 - (i32.sub - (i32.const 0) - (local.get $4) - ) + (if + (if (result i32) + (local.tee $6 + (i32.load + (i32.const 616) ) - (local.get $20) ) - ) - (local.get $8) - ) - (return - (i32.const 0) - ) - ) - (if - (if (result i32) - (local.tee $7 - (i32.load - (i32.const 616) - ) - ) - (i32.or - (i32.le_u - (local.tee $16 - (i32.add - (local.get $4) - (local.tee $26 - (i32.load - (i32.const 608) + (i32.or + (i32.le_u + (local.tee $18 + (i32.add + (local.get $11) + (local.tee $7 + (i32.load + (i32.const 608) + ) ) ) ) + (local.get $7) + ) + (i32.gt_u + (local.get $18) + (local.get $6) ) - (local.get $26) - ) - (i32.gt_u - (local.get $16) - (local.get $7) ) + (i32.const 0) + ) + (return + (i32.const 0) ) - (i32.const 0) - ) - (return - (i32.const 0) ) - ) - (if - (block (result i32) - (if + (if + (if (result i32) (if (result i32) - (if (result i32) - (select - (i32.lt_u - (local.get $4) - (i32.const 2147483647) - ) - (i32.const 0) - (i32.eq - (local.tee $10 - (if (result i32) - (i32.and - (i32.load - (i32.const 620) - ) - (i32.const 4) + (select + (i32.lt_u + (local.get $11) + (i32.const 2147483647) + ) + (i32.const 0) + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 620) ) - (i32.const 190) - (block $label$break$L257 (result i32) - (if - (local.tee $7 - (i32.load - (i32.const 200) - ) + (i32.const 4) + ) + (i32.const 190) + (block $label$break$L257 (result i32) + (if + (local.tee $6 + (i32.load + (i32.const 200) ) - (block $label$break$L259 - (local.set $16 - (i32.const 624) - ) - (loop $while-in34 - (block $while-out33 - (if - (if (result i32) - (i32.le_u - (local.tee $26 - (i32.load - (local.get $16) - ) + ) + (block $label$break$L259 + (local.set $17 + (i32.const 624) + ) + (loop $while-in34 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $7 + (i32.load + (local.get $17) ) - (local.get $7) ) - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $16) - (i32.const 4) - ) + (local.get $6) + ) + (i32.gt_u + (i32.add + (i32.load + (local.tee $15 + (i32.add + (local.get $17) + (i32.const 4) ) ) - (local.get $26) ) (local.get $7) ) - (i32.const 0) - ) - (block - (local.set $6 - (local.get $16) - ) - (local.set $1 - (local.get $9) - ) - (br $while-out33) + (local.get $6) ) + (i32.const 0) ) + ) + (block (br_if $while-in34 - (local.tee $16 + (local.tee $17 (i32.load offset=8 - (local.get $16) + (local.get $17) ) ) ) - (local.set $10 + (local.set $9 (i32.const 173) ) (br $label$break$L259) ) ) - (if - (i32.lt_u - (local.tee $16 - (i32.and - (local.get $23) - (i32.sub - (local.get $20) - (i32.load - (i32.const 188) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $0) + (i32.sub + (local.get $2) + (i32.load + (i32.const 188) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $_sbrk - (local.get $16) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $_sbrk + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $6) - ) - (i32.load - (local.get $1) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $17) ) - (block - (local.set $21 - (local.get $9) - ) - (local.set $22 - (local.get $16) - ) - (br $label$break$L257 - (i32.const 193) - ) + (i32.load + (local.get $15) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $16) + (local.set $3 + (local.get $0) ) (local.set $10 - (i32.const 183) + (local.get $2) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) + (block + (local.set $14 + (local.get $0) + ) + (local.set $23 + (local.get $2) + ) + (local.set $9 + (i32.const 183) + ) + ) ) ) ) - (local.set $10 + ) + (local.set $9 + (i32.const 173) + ) + ) + (if + (if (result i32) + (i32.eq + (local.get $9) (i32.const 173) ) - ) - (if - (if (result i32) - (i32.eq - (local.get $10) - (i32.const 173) - ) - (i32.ne - (local.tee $7 - (call $_sbrk - (i32.const 0) - ) + (i32.ne + (local.tee $6 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - (i32.const 0) + (i32.const -1) ) - (block $do-once35 - (local.set $0 - (if (result i32) - (i32.and - (local.tee $2 - (local.get $7) - ) - (local.tee $9 - (i32.add - (local.tee $16 - (i32.load - (i32.const 652) + (i32.const 0) + ) + (block $do-once35 + (local.set $5 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $6) + ) + (local.tee $5 + (i32.add + (local.tee $2 + (i32.load + (i32.const 652) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $4) - (local.get $2) - ) - (i32.and - (i32.add - (local.get $2) - (local.get $9) - ) + (i32.add (i32.sub - (i32.const 0) - (local.get $16) + (local.get $11) + (local.get $0) + ) + (i32.and + (i32.add + (local.get $0) + (local.get $5) + ) + (i32.sub + (i32.const 0) + (local.get $2) + ) ) ) + (local.get $11) ) - (local.get $4) ) - ) - (local.set $2 - (i32.add - (local.tee $16 - (i32.load - (i32.const 608) - ) + (local.tee $2 + (i32.load + (i32.const 608) ) - (local.get $0) ) ) - (if - (i32.and - (i32.lt_u - (local.get $0) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $0) - (local.get $8) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (br_if $do-once35 - (select - (i32.or - (i32.le_u - (local.get $2) - (local.get $16) - ) - (i32.gt_u - (local.get $2) - (local.tee $9 - (i32.load - (i32.const 616) - ) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (br_if $do-once35 + (select + (i32.or + (i32.le_u + (local.get $5) + (local.get $2) + ) + (i32.gt_u + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 616) ) ) ) - (i32.const 0) - (local.get $9) ) + (i32.const 0) + (local.get $2) ) - (local.set $10 - (if (result i32) - (i32.eq - (local.tee $9 - (call $_sbrk - (local.get $0) - ) - ) - (local.get $7) - ) - (block - (local.set $21 - (local.get $7) - ) - (local.set $22 + ) + (local.set $14 + (if (result i32) + (i32.eq + (local.get $6) + (local.tee $2 + (call $_sbrk (local.get $0) ) - (br $label$break$L257 - (i32.const 193) - ) ) - (block (result i32) - (local.set $12 - (local.get $9) - ) - (local.set $18 - (local.get $0) - ) + ) + (block + (local.set $3 + (local.get $6) + ) + (local.set $10 + (local.get $0) + ) + (br $label$break$L257 + (i32.const 193) + ) + ) + (block (result i32) + (local.set $23 + (local.get $0) + ) + (local.set $9 (i32.const 183) ) + (local.get $2) ) ) ) ) ) ) - (if - (i32.eq - (local.get $10) - (i32.const 183) - ) - (block $label$break$L279 - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $18) - ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 183) + ) + (block $label$break$L279 + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $23) ) - (local.set $3 + ) + (local.set $1 + (if (result i32) (if (result i32) - (if (result i32) + (i32.and (i32.and - (i32.and - (i32.ne - (local.get $12) - (i32.const -1) - ) - (i32.lt_u - (local.get $18) - (i32.const 2147483647) - ) - ) - (i32.gt_u + (i32.ne (local.get $14) - (local.get $18) + (i32.const -1) + ) + (i32.lt_u + (local.get $23) + (i32.const 2147483647) ) ) - (i32.lt_u - (local.tee $2 - (i32.and - (i32.add - (local.tee $7 - (i32.load - (i32.const 656) - ) - ) - (i32.sub - (local.get $13) - (local.get $18) + (i32.gt_u + (local.get $22) + (local.get $23) + ) + ) + (i32.lt_u + (local.tee $5 + (i32.and + (i32.add + (local.tee $6 + (i32.load + (i32.const 656) ) ) (i32.sub - (i32.const 0) - (local.get $7) + (local.get $8) + (local.get $23) ) ) + (i32.sub + (i32.const 0) + (local.get $6) + ) ) - (i32.const 2147483647) ) - (i32.const 0) + (i32.const 2147483647) ) - (if (result i32) - (i32.eq - (call $_sbrk - (local.get $2) - ) - (i32.const -1) + (i32.const 0) + ) + (if (result i32) + (i32.eq + (call $_sbrk + (local.get $5) ) - (block - (drop - (call $_sbrk - (local.get $9) - ) + (i32.const -1) + ) + (block + (drop + (call $_sbrk + (local.get $0) ) - (br $label$break$L279) - ) - (i32.add - (local.get $2) - (local.get $18) ) + (br $label$break$L279) + ) + (i32.add + (local.get $5) + (local.get $23) ) - (local.get $18) ) + (local.get $23) ) - (if - (i32.ne - (local.get $12) - (i32.const -1) + ) + (if + (i32.ne + (local.get $14) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $14) ) - (block - (local.set $21 - (local.get $12) - ) - (local.set $22 - (local.get $3) - ) - (br $label$break$L257 - (i32.const 193) - ) + (local.set $10 + (local.get $1) + ) + (br $label$break$L257 + (i32.const 193) ) ) ) ) - (i32.store - (i32.const 620) - (i32.or - (i32.load - (i32.const 620) - ) - (i32.const 4) + ) + (i32.store + (i32.const 620) + (i32.or + (i32.load + (i32.const 620) ) + (i32.const 4) ) - (i32.const 190) ) + (i32.const 190) ) ) - (i32.const 190) ) + (i32.const 190) ) + ) + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $3 - (call $_sbrk - (local.get $4) - ) + (i32.ne + (local.tee $1 + (call $_sbrk + (local.get $11) ) - (i32.const -1) ) - (i32.ne - (local.tee $4 - (call $_sbrk - (i32.const 0) - ) + (i32.const -1) + ) + (i32.ne + (local.tee $11 + (call $_sbrk + (i32.const 0) ) - (i32.const -1) ) - ) - (i32.lt_u - (local.get $3) - (local.get $4) - ) - ) - (i32.const 0) - ) - (i32.gt_u - (local.tee $12 - (i32.sub - (local.get $4) - (local.get $3) + (i32.const -1) ) ) - (i32.add - (local.get $8) - (i32.const 40) + (i32.lt_u + (local.get $1) + (local.get $11) ) ) (i32.const 0) ) - (block - (local.set $21 - (local.get $3) - ) - (local.set $22 - (local.get $12) + (i32.gt_u + (local.tee $14 + (i32.sub + (local.get $11) + (local.get $1) + ) ) - (local.set $10 - (i32.const 193) + (i32.add + (local.get $4) + (i32.const 40) ) ) + (i32.const 0) ) + (block + (local.set $10 + (local.get $14) + ) + (local.set $9 + (i32.const 193) + ) + (local.set $3 + (local.get $1) + ) + ) + ) + (if (i32.eq - (local.get $10) + (local.get $9) (i32.const 193) ) - ) - (block - (i32.store - (i32.const 608) - (local.tee $12 - (i32.add - (local.get $22) - (i32.load - (i32.const 608) + (block + (i32.store + (i32.const 608) + (local.tee $0 + (i32.add + (local.get $10) + (i32.load + (i32.const 608) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $12) - (i32.load - (i32.const 612) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 612) + ) ) - ) - (i32.store - (i32.const 612) - (local.get $12) - ) - ) - (if - (local.tee $12 - (i32.load - (i32.const 200) + (i32.store + (i32.const 612) + (local.get $0) ) ) - (block $do-once40 - (local.set $3 - (i32.const 624) + (if + (local.tee $7 + (i32.load + (i32.const 200) + ) ) - (loop $do-in - (block $do-out - (if - (i32.eq - (i32.add - (local.tee $4 - (i32.load - (local.get $3) + (block $do-once40 + (local.set $1 + (i32.const 624) + ) + (loop $do-in + (block $do-out + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) + ) ) - ) - (local.tee $13 - (i32.load - (local.tee $18 - (i32.add - (local.get $3) - (i32.const 4) + (local.tee $2 + (i32.load + (local.tee $6 + (i32.add + (local.get $1) + (i32.const 4) + ) ) ) ) ) - ) - (local.get $21) - ) - (block - (local.set $46 - (local.get $4) - ) - (local.set $47 - (local.get $18) - ) - (local.set $48 - (local.get $13) - ) - (local.set $49 (local.get $3) ) - (local.set $10 - (i32.const 203) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $6) + ) + (local.set $43 + (local.get $2) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 203) + ) + (br $do-out) ) - (br $do-out) ) - ) - (br_if $do-in - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $do-in + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (select - (i32.and - (i32.lt_u - (local.get $12) - (local.get $21) - ) - (i32.ge_u - (local.get $12) - (local.get $46) - ) - ) - (i32.const 0) + (if (select - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $49) - ) - (i32.const 8) + (i32.and + (i32.lt_u + (local.get $7) + (local.get $3) + ) + (i32.ge_u + (local.get $7) + (local.get $41) ) ) (i32.const 0) - (i32.eq - (local.get $10) - (i32.const 203) + (select + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) + ) + ) + (i32.const 0) + (i32.eq + (local.get $9) + (i32.const 203) + ) ) ) - ) - (block - (i32.store - (local.get $47) - (i32.add - (local.get $22) - (local.get $48) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $10) + (local.get $43) + ) ) - ) - (local.set $3 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $12) - (i32.const 8) + (local.set $0 + (i32.add + (local.get $7) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $7) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) ) - (local.get $12) ) - ) - (local.set $18 - (i32.add - (i32.load - (i32.const 188) - ) - (i32.sub - (local.get $22) - (local.get $13) + (local.set $1 + (i32.add + (i32.load + (i32.const 188) + ) + (i32.sub + (local.get $10) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store - (i32.const 188) - (local.get $18) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $18) - (i32.const 1) + (i32.store + (i32.const 200) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $3) - (local.get $18) + (i32.store + (i32.const 188) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (br $do-once40) ) - (br $do-once40) ) - ) - (local.set $5 - (if (result i32) + (if (i32.lt_u - (local.get $21) - (local.tee $18 + (local.get $3) + (local.tee $6 (i32.load (i32.const 192) ) ) ) - (block (result i32) + (block (i32.store (i32.const 192) - (local.get $21) + (local.get $3) + ) + (local.set $6 + (local.get $3) ) - (local.get $21) ) - (local.get $18) ) - ) - (local.set $18 - (i32.add - (local.get $21) - (local.get $22) + (local.set $0 + (i32.add + (local.get $3) + (local.get $10) + ) ) - ) - (local.set $3 - (i32.const 624) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $18) - (i32.load - (local.get $3) - ) - ) - (block - (local.set $50 - (local.get $3) - ) - (local.set $34 - (local.get $3) + (local.set $1 + (i32.const 624) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $10 - (i32.const 211) + (block + (local.set $45 + (local.get $1) + ) + (local.set $28 + (local.get $1) + ) + (local.set $9 + (i32.const 211) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $3 - (i32.load offset=8 - (local.get $3) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) + (local.set $24 + (i32.const 624) + ) ) - (local.set $27 - (i32.const 624) - ) - ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 211) ) - (local.set $27 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $34) - ) - (i32.const 8) - ) - (i32.const 624) - (block - (i32.store - (local.get $50) - (local.get $21) + (if + (i32.eq + (local.get $9) + (i32.const 211) + ) + (local.set $24 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $28) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $34) - (i32.add - (local.get $22) - (i32.load offset=4 - (local.get $34) + (i32.const 624) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 + (local.get $28) + (i32.add + (local.get $10) + (i32.load offset=4 + (local.get $28) + ) ) ) - ) - (local.set $13 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $21) - (i32.const 8) + (local.set $5 + (i32.add + (local.get $4) + (local.tee $14 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) ) ) - (local.get $21) ) - ) - (local.set $4 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $18) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $2 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) + (local.get $14) ) + (local.get $4) ) - (local.get $18) ) - ) - (local.set $3 - (i32.add - (local.get $8) - (local.get $13) - ) - ) - (local.set $14 - (i32.sub - (i32.sub + (i32.store offset=4 + (local.get $14) + (i32.or (local.get $4) - (local.get $13) + (i32.const 3) ) - (local.get $8) - ) - ) - (i32.store offset=4 - (local.get $13) - (i32.or - (local.get $8) - (i32.const 3) ) - ) - (if - (i32.ne - (local.get $4) - (local.get $12) - ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 196) + (if + (i32.ne + (local.get $2) + (local.get $7) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) ) - (local.get $4) - ) - (block - (i32.store - (i32.const 184) - (local.tee $0 - (i32.add - (local.get $14) - (i32.load - (i32.const 184) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 184) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $0) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $0) - (local.get $3) + (i32.store + (i32.const 196) + (local.get $5) ) - (local.get $0) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $0 - (i32.load offset=4 - (local.get $4) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $1 - (i32.and + (i32.store + (i32.add + (local.get $0) + (local.get $5) + ) (local.get $0) - (i32.const -8) ) + (br $do-once44) ) - (local.set $6 - (i32.shr_u - (local.get $0) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $2) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$L331 - (if - (i32.ge_u - (local.get $0) - (i32.const 256) + (block (result i32) + (local.set $7 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $23 - (i32.load offset=24 - (local.get $4) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$L331 (if - (i32.eq - (local.get $4) - (local.tee $20 - (i32.load offset=12 - (local.get $4) + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $10 + (i32.load offset=24 + (local.get $2) ) ) - ) - (block $do-once47 - (local.set $0 - (if (result i32) - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.tee $9 - (i32.add - (local.get $4) - (i32.const 16) + (if + (i32.eq + (local.get $2) + (local.tee $0 + (i32.load offset=12 + (local.get $2) + ) + ) + ) + (block $do-once47 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $2) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $9 - (local.get $2) + (local.set $1 + (local.get $4) ) - (local.get $7) - ) - (if (result i32) - (local.tee $16 - (i32.load - (local.get $9) + (br_if $do-once47 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (local.get $16) - (br $do-once47) ) - ) - ) - (loop $while-in50 - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 20) + (loop $while-in50 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) + ) + ) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in50) ) ) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.lt_u + (local.get $1) + (local.get $6) ) - (local.set $9 - (local.get $2) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $16 + (local.get $0) + ) ) - (br $while-in50) ) ) - (if - (local.tee $7 - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $2) ) ) + (local.get $6) ) + (call $_abort) ) - (block - (local.set $0 - (local.get $7) + (if + (i32.ne + (local.get $2) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $9 + (call $_abort) + ) + (if + (i32.eq (local.get $2) + (i32.load offset=8 + (local.get $0) + ) ) - (br $while-in50) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $16 + (local.get $0) + ) + ) + (call $_abort) ) ) ) + (br_if $label$break$L331 + (i32.eqz + (local.get $10) + ) + ) (if - (i32.lt_u - (local.get $9) - (local.get $5) + (i32.ne + (i32.load offset=480 + (local.tee $1 + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $2) + ) + ) + (i32.const 2) + ) + ) + ) + (local.get $2) ) - (call $_abort) (block - (i32.store - (local.get $9) - (i32.const 0) + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) ) - (local.set $24 - (local.get $0) + (if + (i32.eq + (local.get $2) + (i32.load offset=16 + (local.get $10) + ) + ) + (i32.store offset=16 + (local.get $10) + (local.get $16) + ) + (i32.store offset=20 + (local.get $10) + (local.get $16) + ) + ) + (br_if $label$break$L331 + (i32.eqz + (local.get $16) + ) ) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $2 - (i32.load offset=8 - (local.get $4) + (block $do-once51 + (i32.store offset=480 + (local.get $1) + (local.get $16) + ) + (br_if $do-once51 + (local.get $16) + ) + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) ) ) - (local.get $5) + (br $label$break$L331) ) - (call $_abort) - ) - (local.set $0 - (local.get $2) ) (if - (i32.ne - (local.get $4) - (i32.load offset=12 - (local.get $0) + (i32.lt_u + (local.get $16) + (local.tee $1 + (i32.load + (i32.const 192) + ) ) ) (call $_abort) ) - (local.set $6 - (local.get $20) + (i32.store offset=24 + (local.get $16) + (local.get $10) ) (if - (i32.eq - (local.get $4) - (i32.load offset=8 - (local.get $6) + (local.tee $0 + (i32.load offset=16 + (local.get $2) ) ) - (block - (i32.store offset=12 + (if + (i32.lt_u (local.get $0) - (local.get $20) - ) - (i32.store offset=8 - (local.get $6) - (local.get $2) + (local.get $1) ) - (local.set $24 - (local.get $20) + (call $_abort) + (block + (i32.store offset=16 + (local.get $16) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) - (call $_abort) ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $23) - ) - ) - (local.set $0 - (i32.shl - (local.tee $20 - (i32.load offset=28 - (local.get $4) + (br_if $label$break$L331 + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $2) + ) + ) ) ) - (i32.const 2) - ) - ) - (if - (i32.ne - (i32.load offset=480 - (local.get $0) - ) - (local.get $4) - ) - (block (if (i32.lt_u - (local.get $23) + (local.get $0) (i32.load (i32.const 192) ) ) (call $_abort) - ) - (local.set $0 - (local.get $23) - ) - (if - (i32.eq - (local.get $4) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $16) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $23) - (local.get $24) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $24) + (i32.store offset=24 + (local.get $0) + (local.get $16) + ) ) ) ) - (block $do-once51 - (i32.store offset=480 - (local.get $0) - (local.get $24) - ) - (br_if $do-once51 - (local.get $24) + (block + (local.set $1 + (i32.load offset=12 + (local.get $2) + ) ) - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $2) + ) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $20) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 216) ) - (i32.const -1) ) ) - ) - (br $label$break$L331) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $20 - (i32.load - (i32.const 192) - ) - ) - ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $24) - (local.get $23) - ) - (local.set $0 - (local.get $4) - ) - (if - (local.tee $9 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $9) - (local.get $20) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.tee $9 - (i32.load offset=20 - (local.get $0) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $9) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $24) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $24) - ) - ) - ) - ) - (block - (local.set $20 - (i32.load offset=12 - (local.get $4) - ) - ) - (if - (i32.ne - (local.tee $9 - (i32.load offset=8 - (local.get $4) - ) - ) - (local.tee $23 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) + (block $do-once55 + (if + (i32.lt_u + (local.get $4) + (local.get $6) + ) + (call $_abort) + ) + (br_if $do-once55 + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $4) + ) + ) ) - (i32.const 216) + (call $_abort) ) ) - ) - (block $do-once55 (if - (i32.lt_u - (local.get $9) - (local.get $5) - ) - (call $_abort) - ) - (br_if $do-once55 (i32.eq + (local.get $1) (local.get $4) - (i32.load offset=12 - (local.get $9) - ) ) - ) - (call $_abort) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $20) - ) - (block - (i32.store - (i32.const 176) - (i32.and - (i32.load + (block + (i32.store (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $6) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) ) - (i32.const -1) ) + (br $label$break$L331) ) ) - (br $label$break$L331) - ) - ) - (if - (i32.eq - (local.get $20) - (local.get $23) - ) - (local.set $39 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - (block $do-once57 - (if - (i32.lt_u - (local.get $20) - (local.get $5) - ) - (call $_abort) - ) (if (i32.eq - (local.get $4) - (i32.load - (local.tee $2 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) + (local.get $0) + (local.get $1) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - (block - (local.set $39 - (local.get $2) + (block $do-once57 + (if + (i32.lt_u + (local.get $1) + (local.get $6) + ) + (call $_abort) ) - (br $do-once57) + (if + (i32.eq + (local.get $2) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once57) + ) + ) + (call $_abort) ) ) - (call $_abort) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) + ) ) ) - (i32.store offset=12 - (local.get $9) - (local.get $20) - ) - (i32.store - (local.get $39) - (local.get $9) + ) + (local.set $2 + (i32.add + (local.get $2) + (local.get $7) ) ) + (i32.add + (local.get $7) + (local.get $8) + ) ) + (local.get $8) ) - (local.set $4 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $14 - (i32.add - (local.get $1) - (local.get $14) + ) + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.and - (i32.load offset=4 + (i32.store offset=4 + (local.get $5) + (i32.or (local.get $4) + (i32.const 1) ) - (i32.const -2) ) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $14) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $3) - (local.get $14) - ) - (local.get $14) - ) - (local.set $6 - (i32.shr_u - (local.get $14) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $5) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $14) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $0 - (i32.add - (i32.shl - (local.get $6) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $2 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $6) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) - (local.tee $23 - (i32.load - (i32.const 176) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $7 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (block + (local.set $33 + (local.get $1) + ) + (local.set $29 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $40 - (local.get $6) - ) - (local.set $35 - (local.get $7) + (call $_abort) + ) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $4) ) - (br $do-once59) ) - ) - (call $_abort) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $2) - (local.get $23) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $40 - (i32.add + (local.set $29 (local.get $0) - (i32.const 8) ) ) - (local.set $35 - (local.get $0) - ) ) + (i32.store + (local.get $33) + (local.get $5) + ) + (i32.store offset=12 + (local.get $29) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $29) + ) + (i32.store offset=12 + (local.get $5) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (br $do-once44) ) - ) - (local.set $2 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $2 - (i32.shr_u - (local.get $14) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $14) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (local.tee $23 - (i32.and - (i32.shr_u - (i32.add - (local.get $2) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $14) - (i32.add - (local.tee $16 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.tee $6 - (i32.shl - (local.get $1) - (local.get $7) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $7) - (local.get $23) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $6) - (local.get $1) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $6) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $16) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $3) - (local.get $1) - ) - (i32.store offset=20 - (local.get $3) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $3) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $16 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $5) + (local.get $0) + ) + (i32.store offset=20 + (local.get $5) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $5) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $6 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $16) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $6) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $3) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once44) ) - (i32.store offset=480 - (local.get $6) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $2) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $3) - ) - (br $do-once44) ) - ) - (local.set $16 - (i32.shl - (local.get $14) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $17 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $14) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $41 - (local.get $0) - ) - (br $while-out63 - (i32.const 281) - ) + (loop $while-in64 + (block $while-out63 + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $2 + ) + (block + (local.set $34 + (local.get $0) + ) + (local.set $9 + (i32.const 281) + ) + (br $while-out63) + ) + ) + (local.set $35 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $16) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $17) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $16 - (i32.shl - (local.get $16) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $17 + (i32.shl + (local.get $17) + (i32.const 1) ) - (br $while-in64) ) - (block (result i32) - (local.set $42 - (local.get $2) - ) - (local.set $51 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) + ) + (block (result i32) + (local.set $46 + (local.get $0) + ) + (local.set $9 (i32.const 278) ) + (local.get $3) ) ) ) ) - (i32.const 278) ) (if - (i32.lt_u - (local.get $42) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 278) ) - (call $_abort) - (block - (i32.store - (local.get $42) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $51) - ) - (i32.store offset=12 - (local.get $3) - (local.get $3) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $3) - (local.get $3) + (call $_abort) + (block + (i32.store + (local.get $35) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $46) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 281) - ) - (block - (local.set $0 - (local.get $41) + (if + (i32.eq + (local.get $9) + (i32.const 281) ) (if (i32.and (i32.ge_u - (local.tee $16 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) - (local.tee $1 + (local.tee $4 (i32.load (i32.const 192) ) @@ -4797,28 +4643,28 @@ ) (i32.ge_u (local.get $0) - (local.get $1) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $5) ) (i32.store offset=8 (local.get $0) - (local.get $3) + (local.get $5) ) (i32.store offset=8 - (local.get $3) - (local.get $16) + (local.get $5) + (local.get $1) ) (i32.store offset=12 - (local.get $3) - (local.get $41) + (local.get $5) + (local.get $34) ) (i32.store offset=24 - (local.get $3) + (local.get $5) (i32.const 0) ) ) @@ -4827,694 +4673,685 @@ ) ) ) - ) - (block - (i32.store - (i32.const 188) - (local.tee $16 - (i32.add - (local.get $14) - (i32.load - (i32.const 188) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 188) + ) ) ) ) + (i32.store + (i32.const 200) + (local.get $5) + ) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) ) - (i32.store - (i32.const 200) - (local.get $3) + ) + (return + (i32.add + (local.get $14) + (i32.const 8) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $16) - (i32.const 1) + ) + ) + ) + ) + ) + (loop $while-in66 + (if + (i32.eqz + (if (result i32) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $24) + ) + ) + (local.get $7) + ) + (i32.gt_u + (local.tee $22 + (i32.add + (i32.load offset=4 + (local.get $24) + ) + (local.get $0) ) ) + (local.get $7) ) + (i32.const 0) ) - (return - (i32.add - (local.get $13) - (i32.const 8) + ) + (block + (local.set $24 + (i32.load offset=8 + (local.get $24) ) ) + (br $while-in66) ) ) ) - ) - (local.set $3 - (i32.add - (local.tee $1 - (local.tee $13 - (select - (local.get $12) - (local.tee $3 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.add - (local.tee $13 - (i32.add - (local.tee $0 - (loop $while-in66 (result i32) - (if (result i32) - (if (result i32) - (i32.le_u - (local.tee $3 - (i32.load - (local.get $27) - ) - ) - (local.get $12) - ) - (i32.gt_u - (local.tee $14 - (i32.add - (i32.load offset=4 - (local.get $27) - ) - (local.get $3) - ) - ) - (local.get $12) - ) - (i32.const 0) - ) - (local.get $14) - (block - (local.set $27 - (i32.load offset=8 - (local.get $27) - ) - ) - (br $while-in66) - ) - ) - ) - ) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $14) - (i32.const 7) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $13) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $3) - (local.tee $14 - (i32.add - (local.get $12) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 200) - (local.tee $4 + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) + ) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.get $21) - (local.tee $18 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $4 - (i32.add - (local.get $21) - (i32.const 8) + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (i32.store offset=4 + (local.tee $0 + (select + (local.get $7) + (local.tee $0 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.tee $0 + (i32.add + (local.get $22) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) - (i32.const 7) + (local.get $0) ) - (i32.const 0) - (i32.and - (local.get $4) - (i32.const 7) + ) + (i32.lt_u + (local.get $0) + (local.tee $2 + (i32.add + (local.get $7) + (i32.const 16) + ) ) ) ) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 188) - (local.tee $16 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) - ) - (local.get $18) + (i32.store offset=8 + (local.get $0) + (i32.load + (i32.const 624) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.or - (local.get $16) - (i32.const 1) + (i32.store offset=12 + (local.get $0) + (i32.load + (i32.const 628) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $4) - (local.get $16) + (i32.store offset=16 + (local.get $0) + (i32.load + (i32.const 632) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=20 + (local.get $0) + (i32.load + (i32.const 636) + ) ) - ) - (local.set $2 - (local.get $13) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $1) - (i32.load + (i32.store (i32.const 624) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $1) - (i32.load + (i32.store (i32.const 628) + (local.get $10) ) - ) - (i32.store offset=16 - (local.get $1) - (i32.load - (i32.const 632) - ) - ) - (i32.store offset=20 - (local.get $1) - (i32.load + (i32.store (i32.const 636) + (i32.const 0) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 632) - (local.get $3) - ) - (local.set $3 - (i32.add - (local.get $2) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $3 - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.const 632) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $3) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $0) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $12) - (local.get $13) - ) - (block - (i32.store offset=4 - (local.get $2) - (i32.and - (i32.load offset=4 - (local.get $2) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.tee $3 - (i32.sub - (local.get $13) - (local.get $12) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $22) ) ) - (i32.store - (local.get $13) - (local.get $3) - ) - (local.set $4 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $0) + (local.get $7) ) - (if - (i32.lt_u - (local.get $3) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $0) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -2) + ) ) - (block - (local.set $18 - (i32.add - (i32.shl - (local.get $4) - (i32.const 3) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.tee $6 + (i32.sub + (local.get $0) + (local.get $7) ) - (i32.const 216) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $1 + ) + (i32.store + (local.get $0) + (local.get $6) + ) + (local.set $1 + (i32.shr_u + (local.get $6) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $6) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $0 - (i32.load - (i32.const 176) + (local.get $1) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $18) - (i32.const 8) + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 192) + ) ) - (i32.load - (i32.const 192) + (call $_abort) + (block + (local.set $36 + (local.get $1) + ) + (local.set $30 + (local.get $3) + ) ) ) - (call $_abort) (block - (local.set $43 - (local.get $4) + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $3) + ) ) (local.set $36 - (local.get $2) + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - ) - (block - (i32.store - (i32.const 176) - (i32.or + (local.set $30 (local.get $0) - (local.get $1) ) ) - (local.set $43 - (i32.add - (local.get $18) - (i32.const 8) - ) - ) - (local.set $36 - (local.get $18) - ) ) + (i32.store + (local.get $36) + (local.get $7) + ) + (i32.store offset=12 + (local.get $30) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $30) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once40) ) - (i32.store - (local.get $43) - (local.get $12) - ) - (i32.store offset=12 - (local.get $36) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $36) - ) - (i32.store offset=12 - (local.get $12) - (local.get $18) - ) - (br $do-once40) ) - ) - (local.set $4 - (i32.add - (local.tee $6 - (i32.shl - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (local.tee $1 + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $3) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $6) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $18 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $18) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $18) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $6) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $3) - (i32.add - (local.tee $4 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (i32.add - (local.tee $2 - (i32.shl - (local.get $0) - (local.get $18) + (i32.or + (i32.and + (i32.shr_u + (local.get $6) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $8 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $1) - (local.get $18) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $2) - (local.get $0) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $8) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $4) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) ) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $12) - (local.get $1) - ) - (i32.store offset=20 - (local.get $12) - (i32.const 0) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $1) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store + (local.get $2) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $2 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.load - (i32.const 180) + (local.tee $8 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $2) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $2) + (local.get $8) + ) ) + (i32.store offset=480 + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $3) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once40) ) - (i32.store offset=480 - (local.get $6) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $4) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) - ) - (i32.store offset=8 - (local.get $12) - (local.get $12) - ) - (br $do-once40) ) - ) - (local.set $2 - (i32.shl - (local.get $3) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $1) - (i32.const 1) + (local.set $5 + (i32.shl + (local.get $6) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $1) - (i32.const 31) ) ) ) - ) - (local.set $0 - (i32.load offset=480 - (local.get $6) + (local.set $0 + (i32.load offset=480 + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $10 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $3) - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) - ) - ) - (block - (local.set $44 - (local.get $0) - ) - (br $while-out69 - (i32.const 307) - ) + (loop $while-in70 + (block $while-out69 + (if + (i32.eq + (local.get $6) + (i32.and + (i32.load offset=4 + (local.get $0) ) + (i32.const -8) ) - (if (result i32) - (local.tee $1 - (i32.load - (local.tee $4 + ) + (block + (local.set $37 + (local.get $0) + ) + (local.set $9 + (i32.const 307) + ) + (br $while-out69) + ) + ) + (local.set $38 + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add (i32.add - (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $2) - (i32.const 31) - ) - (i32.const 2) + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $5) + (i32.const 31) ) + (i32.const 2) ) ) ) ) - (block - (local.set $2 - (i32.shl - (local.get $2) - (i32.const 1) - ) - ) - (local.set $0 - (local.get $1) + ) + (block + (local.set $5 + (i32.shl + (local.get $5) + (i32.const 1) ) - (br $while-in70) ) - (block (result i32) - (local.set $45 - (local.get $4) - ) - (local.set $52 - (local.get $0) - ) + (local.set $0 + (local.get $1) + ) + (br $while-in70) + ) + (block (result i32) + (local.set $47 + (local.get $0) + ) + (local.set $9 (i32.const 304) ) + (local.get $3) ) ) ) ) - (i32.const 304) ) (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 192) - ) + (i32.eq + (local.get $9) + (i32.const 304) ) - (call $_abort) - (block - (i32.store - (local.get $45) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $52) - ) - (i32.store offset=12 - (local.get $12) - (local.get $12) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=8 - (local.get $12) - (local.get $12) + (call $_abort) + (block + (i32.store + (local.get $38) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $47) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $10) - (i32.const 307) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 307) ) (if (i32.and (i32.ge_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) (local.tee $3 @@ -5530,23 +5367,23 @@ ) (block (i32.store offset=12 - (local.get $2) - (local.get $12) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $12) + (local.get $7) ) (i32.store offset=8 - (local.get $12) - (local.get $2) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $12) - (local.get $44) + (local.get $7) + (local.get $37) ) (i32.store offset=24 - (local.get $12) + (local.get $7) (i32.const 0) ) ) @@ -5557,208 +5394,206 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $2 - (i32.load - (i32.const 192) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 192) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $21) - (local.get $2) + (i32.store + (i32.const 192) + (local.get $3) ) ) (i32.store - (i32.const 192) - (local.get $21) + (i32.const 624) + (local.get $3) ) - ) - (i32.store - (i32.const 624) - (local.get $21) - ) - (i32.store - (i32.const 628) - (local.get $22) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 212) - (i32.load - (i32.const 648) + (i32.store + (i32.const 628) + (local.get $10) ) - ) - (i32.store - (i32.const 208) - (i32.const -1) - ) - (local.set $2 - (i32.const 0) - ) - (loop $do-in72 - (local.set $0 - (i32.add - (local.tee $1 - (i32.shl - (local.get $2) - (i32.const 3) - ) - ) - (i32.const 216) + (i32.store + (i32.const 636) + (i32.const 0) + ) + (i32.store + (i32.const 212) + (i32.load + (i32.const 648) ) ) - (i32.store offset=228 - (local.get $1) - (local.get $0) + (i32.store + (i32.const 208) + (i32.const -1) ) - (i32.store offset=224 - (local.get $1) - (local.get $0) + (local.set $5 + (i32.const 0) ) - (br_if $do-in72 - (i32.ne - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 1) + (loop $do-in72 + (local.set $1 + (i32.add + (local.tee $0 + (i32.shl + (local.get $5) + (i32.const 3) + ) ) + (i32.const 216) + ) + ) + (i32.store offset=228 + (local.get $0) + (local.get $1) + ) + (i32.store offset=224 + (local.get $0) + (local.get $1) + ) + (br_if $do-in72 + (i32.ne + (local.tee $5 + (i32.add + (local.get $5) + (i32.const 1) + ) + ) + (i32.const 32) ) - (i32.const 32) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $2 - (i32.add - (local.get $21) - (local.tee $0 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $2 - (i32.add - (local.get $21) - (i32.const 8) + (i32.store + (i32.const 200) + (local.tee $0 + (i32.add + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $2) - (i32.const 7) ) ) ) ) ) - ) - (i32.store - (i32.const 188) - (local.tee $3 - (i32.sub - (i32.add - (local.get $22) - (i32.const -40) + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $10) + (i32.const -40) + ) + (local.get $1) ) - (local.get $0) ) ) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $3) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $2) - (local.get $3) - ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $22 - (i32.load - (i32.const 188) - ) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $21 - (i32.sub - (local.get $22) - (local.get $8) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $12 + (i32.store offset=4 (i32.add - (local.get $8) - (local.tee $22 - (i32.load - (i32.const 200) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $21) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $22) - (i32.or - (local.get $8) - (i32.const 3) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) ) ) - (return - (i32.add - (local.get $22) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 188) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $___errno_location) + (i32.const 12) + ) + (return + (i32.const 0) + ) ) (i32.store - (call $___errno_location) - (i32.const 12) + (i32.const 188) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) + ) + (i32.store + (i32.const 200) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 200) + ) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.add + (local.get $0) + (i32.const 8) ) - (i32.const 0) ) (func $_free (; 16 ;) (; has Stack IR ;) (param $0 i32) (local $1 i32) @@ -5787,7 +5622,7 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) @@ -5803,9 +5638,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $9 (i32.and - (local.tee $2 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5820,12 +5655,12 @@ ) (call $_abort) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $2) + (local.get $0) (i32.const -8) ) ) @@ -5833,64 +5668,60 @@ ) (if (i32.and - (local.get $2) + (local.get $0) (i32.const 1) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $3) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once - (local.set $9 - (i32.load - (local.get $1) - ) - ) (if (i32.eqz - (local.get $0) - ) - (return) - ) - (local.set $7 - (i32.add - (local.get $7) (local.get $9) ) + (return) ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) - (local.get $9) + (local.get $3) + (local.tee $9 + (i32.load + (local.get $3) + ) + ) ) ) (local.get $13) ) (call $_abort) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 196) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $6 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5898,44 +5729,44 @@ (i32.const 3) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 184) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $6) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $6 + (local.set $11 (i32.shr_u (local.get $9) (i32.const 3) @@ -5947,22 +5778,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $2 + (local.tee $1 (i32.add (i32.shl - (local.get $6) + (local.get $11) (i32.const 3) ) (i32.const 216) @@ -5972,16 +5803,16 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $4) (local.get $13) ) (call $_abort) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $_abort) @@ -5990,8 +5821,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6003,99 +5834,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $6) + (local.get $11) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.ne - (local.get $0) + (local.get $1) (local.get $2) ) (block (if (i32.lt_u - (local.get $0) + (local.get $2) (local.get $13) ) (call $_abort) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $2) + (local.set $5 + (local.get $1) ) (call $_abort) ) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $6 + (local.tee $9 (i32.add - (local.tee $2 + (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6104,84 +5935,76 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load - (local.get $2) + (local.get $5) ) ) ) ) ) - (local.set $6 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 20) - ) + (loop $while-in + (if + (local.tee $11 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $11) ) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 16) - ) + ) + (if + (local.tee $11 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $2 - (local.get $6) - ) - (br $while-in) + ) + (block + (local.set $4 + (local.get $11) ) - (local.get $0) + (local.set $5 + (local.get $9) + ) + (br $while-in) ) ) ) (if (i32.lt_u - (local.get $2) + (local.get $5) (local.get $13) ) (call $_abort) (block (i32.store - (local.get $2) + (local.get $5) (i32.const 0) ) - (local.set $5 - (local.get $6) + (local.set $7 + (local.get $4) ) ) ) @@ -6189,48 +6012,42 @@ (block (if (i32.lt_u - (local.tee $6 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) (local.get $13) ) (call $_abort) ) - (local.set $2 - (local.get $6) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $2) + (local.get $5) ) ) (call $_abort) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 - (local.get $2) - (local.get $0) + (local.get $5) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $6) + (local.get $4) + (local.get $5) ) - (local.set $5 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $_abort) @@ -6238,33 +6055,32 @@ ) ) (if - (local.get $9) + (local.get $12) (block - (local.set $2 - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) - ) - ) (if (i32.eq (i32.load offset=480 - (local.get $2) + (local.tee $5 + (i32.shl + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.const 2) + ) + ) ) - (local.get $1) + (local.get $0) ) (block (i32.store offset=480 - (local.get $2) (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block (i32.store @@ -6276,17 +6092,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6295,42 +6111,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 192) ) ) (call $_abort) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $5) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $5) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $5) + (local.get $7) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6339,8 +6152,8 @@ ) (if (i32.lt_u - (local.get $5) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 192) ) @@ -6349,45 +6162,42 @@ (call $_abort) ) (i32.store offset=24 - (local.get $5) - (local.get $9) - ) - (local.set $6 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) - (local.get $0) + (local.get $4) + (local.get $5) ) (call $_abort) (block (i32.store offset=16 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $2 + (local.tee $4 (i32.load offset=20 - (local.get $6) + (local.get $0) ) ) (if (i32.lt_u - (local.get $2) + (local.get $4) (i32.load (i32.const 192) ) @@ -6395,37 +6205,37 @@ (call $_abort) (block (i32.store offset=20 - (local.get $5) - (local.get $2) + (local.get $7) + (local.get $4) ) (i32.store offset=24 - (local.get $2) - (local.get $5) + (local.get $4) + (local.get $7) ) - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block - (local.set $3 - (local.get $1) + (local.set $2 + (local.get $0) ) - (local.set $4 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6433,20 +6243,17 @@ ) (if (i32.ge_u - (local.get $3) - (local.get $8) + (local.get $2) + (local.get $6) ) (call $_abort) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6454,637 +6261,619 @@ ) (call $_abort) ) - (local.set $4 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 200) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 188) + ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + (i32.store + (i32.const 200) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $3) - (local.get $4) + ) + (if + (i32.ne + (i32.load + (i32.const 196) ) - (local.get $4) + (local.get $2) ) - (local.get $4) + (return) ) - (block (result i32) - (if - (i32.eq + (i32.store + (i32.const 196) + (i32.const 0) + ) + (i32.store + (i32.const 184) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (local.get $1) (i32.load - (i32.const 200) - ) - (local.get $8) - ) - (block - (i32.store - (i32.const 188) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 188) - ) - ) - ) - ) - (i32.store - (i32.const 200) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (if - (i32.ne - (i32.load - (i32.const 196) - ) - (local.get $3) - ) - (return) - ) - (i32.store - (i32.const 196) - (i32.const 0) - ) - (i32.store (i32.const 184) - (i32.const 0) ) - (return) + ) + ) + ) + (i32.store + (i32.const 196) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.ge_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) (if (i32.eq - (i32.load - (i32.const 196) + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) + ) ) - (local.get $8) ) - (block - (i32.store - (i32.const 184) - (local.tee $5 - (i32.add - (local.get $4) - (i32.load - (i32.const 184) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 + (i32.add + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) + ) + (i32.const 4) + ) ) ) ) - ) - (i32.store - (i32.const 196) - (local.get $3) - ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store - (i32.add + (local.set $1 (local.get $3) - (local.get $5) ) - (local.get $5) - ) - (return) - ) - ) - (local.set $5 - (i32.add - (local.get $4) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) - ) - (local.set $13 - (i32.shr_u - (local.get $1) - (i32.const 3) - ) - ) - (block $do-once4 - (if - (i32.ge_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $6 - (i32.load offset=24 - (local.get $8) - ) - ) - (if - (i32.eq - (local.get $8) - (local.tee $2 - (i32.load offset=12 - (local.get $8) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) ) ) - (block $do-once6 - (local.set $4 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $2 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $2 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) - (local.tee $0 - (i32.load - (local.get $2) - ) - ) + ) + ) + (loop $while-in9 + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) - (br $do-once6) - ) - ) - ) - (loop $while-in9 - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $4 - (local.get $10) - ) - (local.set $2 - (local.get $0) - ) - (br $while-in9) - ) - ) - ) - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store - (local.get $2) - (i32.const 0) - ) - (local.set $11 - (local.get $4) + (i32.const 20) ) ) ) ) (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) + (local.set $0 + (local.get $4) ) - (local.set $4 - (local.get $0) + (local.set $1 + (local.get $3) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 + (br $while-in9) + ) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add (local.get $0) + (i32.const 16) ) ) - (call $_abort) + ) + ) + (block + (local.set $0 + (local.get $4) ) (local.set $1 - (local.get $2) + (local.get $3) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $4) - (local.get $2) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $2) - ) - ) - (call $_abort) + (br $while-in9) + ) + ) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) + ) + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) ) ) + (i32.load + (i32.const 192) + ) ) - (if + (call $_abort) + ) + (if + (i32.ne (local.get $6) - (block - (local.set $0 + (i32.load offset=12 + (local.get $1) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $_abort) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load offset=480 + (local.tee $1 (i32.shl - (local.tee $2 + (local.tee $0 (i32.load offset=28 - (local.get $8) + (local.get $6) ) ) (i32.const 2) ) ) - (if - (i32.eq - (i32.load offset=480 - (local.get $0) - ) - (local.get $8) - ) - (block - (i32.store offset=480 - (local.get $0) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $2) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 192) - ) + ) + (local.get $6) + ) + (block + (i32.store offset=480 + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) ) - (call $_abort) - ) - (local.set $0 - (local.get $6) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 + (i32.xor + (i32.shl + (i32.const 1) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $6) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) + (i32.const -1) ) ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $11) - (local.tee $2 - (i32.load - (i32.const 192) - ) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 192) ) - (call $_abort) ) - (i32.store offset=24 - (local.get $11) + (call $_abort) + ) + (if + (i32.eq (local.get $6) + (i32.load offset=16 + (local.get $7) + ) ) - (local.set $0 + (i32.store offset=16 + (local.get $7) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $2) - ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) ) ) ) - (block - (local.set $2 - (i32.load offset=12 - (local.get $8) - ) - ) - (if - (i32.ne - (local.tee $1 - (i32.load offset=8 - (local.get $8) - ) - ) - (local.tee $6 - (i32.add - (i32.shl - (local.get $13) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 192) ) ) - (block - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $1) - ) - ) - (call $_abort) - ) + ) + (call $_abort) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) ) ) (if - (i32.eq + (i32.lt_u + (local.get $0) (local.get $1) - (local.get $2) ) + (call $_abort) (block - (i32.store - (i32.const 176) - (i32.and - (i32.load - (i32.const 176) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $13) - ) - (i32.const -1) - ) - ) + (i32.store offset=16 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) - (br $do-once4) ) ) - (if - (i32.ne - (local.get $2) + ) + (if + (local.tee $0 + (i32.load offset=20 (local.get $6) ) - (block - (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $6 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) - ) - ) - (local.set $15 - (local.get $6) - ) - (call $_abort) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 192) ) ) - (local.set $15 - (i32.add - (local.get $2) - (i32.const 8) + (call $_abort) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) - (i32.store offset=12 - (local.get $1) - (local.get $2) - ) - (i32.store - (local.get $15) - (local.get $1) - ) ) ) ) - (i32.store offset=4 - (local.get $3) - (i32.or - (local.get $5) - (i32.const 1) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) ) ) - (i32.store - (i32.add - (local.get $3) - (local.get $5) + (if + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) + ) + (i32.const 216) + ) + ) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $3) + ) + ) + (call $_abort) + ) ) - (local.get $5) ) - (if (result i32) + (if (i32.eq - (i32.load - (i32.const 196) - ) + (local.get $1) (local.get $3) ) (block (i32.store - (i32.const 184) - (local.get $5) + (i32.const 176) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) + ) + (i32.const -1) + ) + ) + ) + (br $do-once4) + ) + ) + (if + (i32.ne + (local.get $0) + (local.get $1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + ) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (local.set $14 + (local.get $0) + ) + (call $_abort) + ) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) ) - (return) ) + ) + (i32.store offset=12 + (local.get $3) + (local.get $1) + ) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $2) + ) + (block + (i32.store + (i32.const 184) (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $4) + (local.get $3) (i32.const 3) ) (i32.const 216) @@ -7092,25 +6881,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 176) ) ) - (local.tee $5 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $4) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $15 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7122,11 +6911,11 @@ ) (call $_abort) (block - (local.set $14 - (local.get $4) + (local.set $15 + (local.get $1) ) - (local.set $12 - (local.get $15) + (local.set $10 + (local.get $3) ) ) ) @@ -7134,71 +6923,71 @@ (i32.store (i32.const 176) (i32.or - (local.get $5) - (local.get $7) + (local.get $1) + (local.get $3) ) ) - (local.set $14 + (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $12 - (local.get $1) + (local.set $10 + (local.get $0) ) ) ) (i32.store - (local.get $14) - (local.get $3) + (local.get $15) + (local.get $2) ) (i32.store offset=12 - (local.get $12) - (local.get $3) + (local.get $10) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $12) + (local.get $2) + (local.get $10) ) (i32.store offset=12 - (local.get $3) - (local.get $1) + (local.get $2) + (local.get $0) ) (return) ) ) - (local.set $7 + (local.set $4 (i32.add - (local.tee $1 + (local.tee $3 (i32.shl - (local.tee $4 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $14 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $12 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7218,21 +7007,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $7 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $14 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $5 + (local.tee $4 (i32.shl - (local.get $14) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7243,15 +7032,15 @@ ) ) (i32.or - (local.get $1) - (local.get $12) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl + (local.get $4) (local.get $5) - (local.get $14) ) (i32.const 15) ) @@ -7263,7 +7052,7 @@ (i32.const 1) ) (i32.shl - (local.get $7) + (local.get $0) (i32.const 1) ) ) @@ -7279,54 +7068,54 @@ ) ) (i32.store offset=28 - (local.get $3) - (local.get $4) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $3) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $3) + (local.get $2) (i32.const 0) ) (if (i32.and (local.tee $5 - (i32.shl - (i32.const 1) - (local.get $4) - ) - ) - (local.tee $14 (i32.load (i32.const 180) ) ) + (local.tee $7 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $12 + (local.set $10 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $4) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $4) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load offset=480 - (local.get $1) + (local.get $3) ) ) (if @@ -7336,17 +7125,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block (local.set $16 - (local.get $1) + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7354,17 +7143,17 @@ ) ) (if (result i32) - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $15 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $12) + (local.get $10) (i32.const 31) ) (i32.const 2) @@ -7374,23 +7163,23 @@ ) ) (block - (local.set $12 + (local.set $10 (i32.shl - (local.get $12) + (local.get $10) (i32.const 1) ) ) - (local.set $1 - (local.get $4) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) (local.set $17 - (local.get $15) + (local.get $4) ) (local.set $18 - (local.get $1) + (local.get $0) ) (i32.const 127) ) @@ -7411,19 +7200,19 @@ (block (i32.store (local.get $17) - (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) + (local.get $2) (local.get $18) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) @@ -7432,53 +7221,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $16) - ) - (if - (i32.and - (i32.ge_u - (local.tee $12 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 192) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 192) + ) ) ) - (block - (i32.store offset=12 - (local.get $12) - (local.get $3) - ) - (i32.store offset=8 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $12) - ) - (i32.store offset=12 - (local.get $3) - (local.get $16) - ) - (i32.store offset=24 - (local.get $3) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) ) - (call $_abort) ) + (call $_abort) ) ) ) @@ -7488,30 +7274,30 @@ (i32.const 180) (i32.or (local.get $5) - (local.get $14) + (local.get $7) ) ) (i32.store offset=480 - (local.get $1) (local.get $3) + (local.get $2) ) (i32.store offset=24 - (local.get $3) - (local.get $7) + (local.get $2) + (local.get $4) ) (i32.store offset=12 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $3) - (local.get $3) + (local.get $2) + (local.get $2) ) ) ) (i32.store (i32.const 208) - (local.tee $3 + (local.tee $0 (i32.add (i32.load (i32.const 208) @@ -7522,14 +7308,14 @@ ) (local.set $0 (if (result i32) - (local.get $3) + (local.get $0) (return) (i32.const 632) ) ) (loop $while-in17 (if - (local.tee $3 + (local.tee $0 (i32.load (local.get $0) ) @@ -7537,7 +7323,7 @@ (block (local.set $0 (i32.add - (local.get $3) + (local.get $0) (i32.const 8) ) ) @@ -7562,9 +7348,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -7575,129 +7359,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 8) - ) - (block (result i32) - (call $_pthread_cleanup_push - (i32.const 4) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $_pthread_cleanup_pop - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 8) + ) + (block + (call $_pthread_cleanup_push + (i32.const 4) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $___syscall_ret - (call $___syscall146 - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $_pthread_cleanup_pop + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $___syscall_ret + (call $___syscall146 + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7707,124 +7485,126 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $13 + (local.set $11 (local.get $1) ) - (local.set $14 - (local.get $3) + (local.set $12 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.le_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (if - (i32.eq - (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) + (local.set $5 + (if (result i32) + (i32.le_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) ) ) ) - (local.set $3 - (i32.const 2) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) - ) - ) - (local.set $9 - (local.get $4) - ) - ) - (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) - ) - ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) ) ) - (local.set $3 - (i32.add + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const -1) ) ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) (global.set $STACKTOP - (local.get $10) + (local.get $9) ) (if (result i32) (i32.eq @@ -7835,9 +7615,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7847,11 +7627,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7887,16 +7667,16 @@ (i32.sub (local.get $2) (i32.load offset=4 - (local.get $13) + (local.get $11) ) ) (i32.eq - (local.get $14) + (local.get $12) (i32.const 2) ) ) ) - (local.get $15) + (local.get $13) ) ) ) @@ -7906,14 +7686,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 672) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7921,7 +7697,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7930,13 +7706,13 @@ (call $___towrite (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7944,15 +7720,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$L5 (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -7980,9 +7756,6 @@ (br $label$break$L5) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8009,7 +7782,7 @@ (if (i32.ne (i32.load8_s offset=672 - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8020,7 +7793,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8051,35 +7824,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 672) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $_memcpy - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8095,10 +7865,9 @@ ) (func $_fflush (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) (if (local.get $0) - (local.set $1 + (local.set $0 (block $do-once (result i32) (if (i32.le_s @@ -8141,51 +7910,40 @@ (i32.const 32) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) - ) - (loop $while-in - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (loop $while-in + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - (local.set $1 - (i32.or - (call $___fflush_unlocked - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) + ) + ) + (local.set $0 + (i32.or + (call $___fflush_unlocked (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $___unlock (i32.const 36) ) ) ) - (local.get $1) + (local.get $0) ) (func $_strlen (; 20 ;) (; has Stack IR ;) (result i32) (local $0 i32) @@ -8197,48 +7955,48 @@ (i32.const 672) ) (block - (local.set $1 + (local.set $4 (i32.const 672) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8249,28 +8007,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8278,7 +8025,7 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 672) ) @@ -8291,7 +8038,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) (local.set $3 (global.get $STACKTOP) ) @@ -8307,18 +8053,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8328,13 +8071,13 @@ (call $___towrite (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8348,15 +8091,12 @@ (local.get $6) (i32.const 4) ) - (local.set $1 + (local.set $2 (block $do-once (result i32) - (local.set $1 - (local.get $0) - ) (if (if (result i32) (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=20 (local.get $0) ) @@ -8364,7 +8104,7 @@ (local.get $5) ) (i32.ne - (local.tee $8 + (local.tee $7 (i32.const 10) ) (i32.load8_s offset=75 @@ -8375,18 +8115,18 @@ ) (block (i32.store offset=20 - (local.get $1) + (local.get $0) (i32.add - (local.get $2) + (local.get $1) (i32.const 1) ) ) (i32.store8 - (local.get $2) + (local.get $1) (i32.const 10) ) (br $do-once - (local.get $8) + (local.get $7) ) ) ) @@ -8419,7 +8159,7 @@ (global.set $STACKTOP (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $___fflush_unlocked (; 22 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -9094,7 +8834,7 @@ (i32.const -1) ) ) - (local.set $3 + (local.set $0 (call $___stdio_write (local.get $0) (local.get $1) @@ -9104,7 +8844,7 @@ (global.set $STACKTOP (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $___stdio_close (; 30 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm index 0efc4d121..f97fe05cd 100644 --- a/test/emcc_hello_world.fromasm +++ b/test/emcc_hello_world.fromasm @@ -979,7 +979,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local.set $7 + (local.set $6 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -997,22 +997,22 @@ ) (local.set $3 (i32.add - (local.get $7) + (local.get $6) (i32.const 120) ) ) (local.set $5 (i32.add (local.tee $4 - (local.get $7) + (local.get $6) ) (i32.const 136) ) ) - (local.set $6 + (local.set $8 (i32.add (local.tee $2 - (local.tee $8 + (local.tee $7 (i32.add (local.get $4) (i32.const 80) @@ -1035,7 +1035,7 @@ (i32.const 4) ) ) - (local.get $6) + (local.get $8) ) ) ) @@ -1052,7 +1052,7 @@ (i32.const 0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) (i32.const 0) ) @@ -1063,7 +1063,7 @@ (local.get $0) ) ) - (local.set $2 + (local.set $1 (i32.load (local.get $0) ) @@ -1078,7 +1078,7 @@ (i32.store (local.get $0) (i32.and - (local.get $2) + (local.get $1) (i32.const -33) ) ) @@ -1092,11 +1092,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (block - (local.set $6 + (local.set $2 (i32.load offset=44 (local.get $0) ) @@ -1129,11 +1129,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (if - (local.get $6) + (local.get $2) (block (drop (call_indirect (type $FUNCSIG$iiii) @@ -1158,7 +1158,7 @@ ) (i32.store offset=44 (local.get $0) - (local.get $6) + (local.get $2) ) (i32.store offset=48 (local.get $0) @@ -1187,7 +1187,7 @@ (local.get $0) ) (i32.and - (local.get $2) + (local.get $1) (i32.const 32) ) ) @@ -1197,7 +1197,7 @@ ) ) (global.set $STACKTOP - (local.get $7) + (local.get $6) ) ) (func $___fwritex (; 37 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1723,7 +1723,7 @@ (i32.and (i32.xor (i32.and - (local.tee $3 + (local.tee $2 (i32.load (local.get $1) ) @@ -1733,7 +1733,7 @@ (i32.const -2139062144) ) (i32.add - (local.get $3) + (local.get $2) (i32.const -16843009) ) ) @@ -1996,8 +1996,8 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 f64) + (local $14 f64) + (local $15 i32) (local $16 i32) (local $17 i32) (local $18 i32) @@ -2036,7 +2036,7 @@ (local.set $4 (i32.const 672) ) - (local.set $28 + (local.set $29 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -2054,14 +2054,14 @@ ) (local.set $20 (i32.add - (local.get $28) + (local.get $29) (i32.const 16) ) ) - (local.set $42 + (local.set $43 (i32.add (local.tee $13 - (local.get $28) + (local.get $29) ) (i32.const 8) ) @@ -2072,16 +2072,16 @@ (i32.const 528) ) ) - (local.set $29 + (local.set $30 (i32.ne (local.get $0) (i32.const 0) ) ) - (local.set $38 - (local.tee $25 + (local.set $39 + (local.tee $24 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 536) @@ -2091,15 +2091,15 @@ ) ) ) - (local.set $39 + (local.set $40 (i32.add - (local.get $19) + (local.get $5) (i32.const 39) ) ) (local.set $33 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 576) @@ -2108,19 +2108,19 @@ (i32.const 12) ) ) - (local.set $40 + (local.set $41 (i32.add - (local.get $19) + (local.get $5) (i32.const 11) ) ) - (local.set $43 + (local.set $44 (i32.sub - (local.tee $27 + (local.tee $28 (local.get $33) ) (local.tee $36 - (local.tee $23 + (local.tee $21 (i32.add (local.get $13) (i32.const 588) @@ -2129,21 +2129,21 @@ ) ) ) - (local.set $44 + (local.set $45 (i32.sub (i32.const -2) (local.get $36) ) ) - (local.set $45 + (local.set $46 (i32.add - (local.get $27) + (local.get $28) (i32.const 2) ) ) - (local.set $47 + (local.set $48 (i32.add - (local.tee $46 + (local.tee $47 (i32.add (local.get $13) (i32.const 24) @@ -2152,23 +2152,20 @@ (i32.const 288) ) ) - (local.set $41 - (local.tee $30 + (local.set $42 + (local.tee $31 (i32.add - (local.get $23) + (local.get $21) (i32.const 9) ) ) ) (local.set $34 (i32.add - (local.get $23) + (local.get $21) (i32.const 8) ) ) - (local.set $19 - (i32.const 0) - ) (block $label$break$L343 (block $__rjti$9 (loop $label$continue$L1 @@ -2219,7 +2216,7 @@ (block $label$break$L9 (block $switch (if - (local.tee $6 + (local.tee $5 (i32.shr_s (i32.shl (local.get $6) @@ -2231,7 +2228,7 @@ (block (br_if $switch (i32.ne - (local.get $6) + (local.get $5) (i32.const 37) ) ) @@ -2298,7 +2295,7 @@ ) ) (if - (local.get $29) + (local.get $30) (if (i32.eqz (i32.and @@ -2330,12 +2327,12 @@ (br $label$continue$L1) ) ) - (local.set $7 + (local.set $10 (if (result i32) (i32.lt_u (local.tee $7 (i32.add - (local.tee $10 + (local.tee $11 (i32.load8_s (local.tee $9 (i32.add @@ -2360,7 +2357,7 @@ (i32.const 3) ) (local.get $9) - (local.tee $10 + (local.tee $11 (i32.eq (i32.load8_s offset=2 (local.get $5) @@ -2372,35 +2369,35 @@ ) ) ) - (local.set $17 + (local.set $18 (select (local.get $7) (i32.const -1) - (local.get $10) + (local.get $11) ) ) (select (i32.const 1) - (local.get $19) - (local.get $10) + (local.get $25) + (local.get $11) ) ) (block (result i32) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $17 + (local.set $18 (i32.const -1) ) - (local.get $19) + (local.get $25) ) ) ) - (local.set $19 + (local.set $8 (if (result i32) (i32.eq (i32.and - (local.tee $10 + (local.tee $11 (i32.shr_s (i32.shl (local.get $5) @@ -2414,13 +2411,13 @@ (i32.const 32) ) (block $label$break$L25 (result i32) - (local.set $19 + (local.set $25 (local.get $5) ) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in4 (result i32) @@ -2439,22 +2436,22 @@ ) (block (local.set $5 - (local.get $19) + (local.get $25) ) (br $label$break$L25 - (local.get $10) + (local.get $11) ) ) ) - (local.set $10 + (local.set $11 (i32.or - (local.get $10) + (local.get $11) (i32.shl (i32.const 1) (i32.add (i32.shr_s (i32.shl - (local.get $19) + (local.get $25) (i32.const 24) ) (i32.const 24) @@ -2468,7 +2465,7 @@ (i32.eq (i32.and (local.tee $5 - (local.tee $19 + (local.tee $25 (i32.load8_s (local.tee $9 (i32.add @@ -2485,15 +2482,15 @@ ) ) (local.set $5 - (local.get $19) + (local.get $25) ) - (local.get $10) + (local.get $11) ) ) (i32.const 0) ) ) - (local.set $19 + (local.set $25 (if (result i32) (i32.eq (i32.and @@ -2508,7 +2505,7 @@ (block $__rjti$0 (br_if $__rjti$0 (i32.ge_u - (local.tee $10 + (local.tee $11 (i32.add (i32.load8_s (local.tee $5 @@ -2535,7 +2532,7 @@ (i32.store (i32.add (i32.shl - (local.get $10) + (local.get $11) (i32.const 2) ) (local.get $3) @@ -2563,7 +2560,7 @@ (local.set $7 (i32.const 1) ) - (local.set $14 + (local.set $15 (i32.load (local.get $5) ) @@ -2576,7 +2573,7 @@ ) ) (if - (local.get $7) + (local.get $10) (block (local.set $16 (i32.const -1) @@ -2586,16 +2583,16 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) (local.set $9 (local.get $5) ) - (local.set $14 + (local.set $15 (i32.const 0) ) (br $do-once5 @@ -2603,7 +2600,7 @@ ) ) ) - (local.set $14 + (local.set $15 (i32.load (local.tee $9 (i32.and @@ -2631,25 +2628,25 @@ (local.get $5) ) ) - (local.set $10 + (local.set $11 (if (result i32) (i32.lt_s - (local.get $14) + (local.get $15) (i32.const 0) ) (block (result i32) - (local.set $14 + (local.set $15 (i32.sub (i32.const 0) - (local.get $14) + (local.get $15) ) ) (i32.or - (local.get $19) + (local.get $8) (i32.const 8192) ) ) - (local.get $19) + (local.get $8) ) ) (local.get $7) @@ -2671,7 +2668,7 @@ (i32.const 10) ) (block (result i32) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in8 @@ -2679,14 +2676,14 @@ (i32.add (local.get $5) (i32.mul - (local.get $10) + (local.get $11) (i32.const 10) ) ) ) (if (i32.lt_u - (local.tee $8 + (local.tee $7 (i32.add (i32.load8_s (local.tee $9 @@ -2702,11 +2699,11 @@ (i32.const 10) ) (block - (local.set $10 + (local.set $11 (local.get $5) ) (local.set $5 - (local.get $8) + (local.get $7) ) (br $while-in8) ) @@ -2724,24 +2721,24 @@ (br $label$break$L1) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (local.get $5) ) - (local.get $7) + (local.get $10) ) ) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (i32.const 0) ) - (local.get $7) + (local.get $10) ) ) ) @@ -2803,7 +2800,7 @@ (loop $while-in11 (drop (br_if $label$break$L46 - (local.tee $5 + (local.tee $7 (i32.add (local.get $5) (i32.mul @@ -2813,7 +2810,7 @@ ) ) (i32.ge_u - (local.tee $8 + (local.tee $5 (i32.add (i32.load8_s (local.tee $9 @@ -2830,12 +2827,6 @@ ) ) ) - (local.set $7 - (local.get $5) - ) - (local.set $5 - (local.get $8) - ) (br $while-in11) ) ) @@ -2908,7 +2899,7 @@ ) ) (if - (local.get $19) + (local.get $25) (block (local.set $16 (i32.const -1) @@ -2917,7 +2908,7 @@ ) ) (if (result i32) - (local.get $29) + (local.get $30) (block (result i32) (local.set $7 (i32.load @@ -2960,14 +2951,14 @@ (local.set $7 (local.get $9) ) - (local.set $8 + (local.set $10 (i32.const 0) ) - (local.set $18 + (local.set $17 (loop $while-in13 (result i32) (if (i32.gt_u - (local.tee $11 + (local.tee $8 (i32.add (i32.load8_s (local.get $7) @@ -2993,15 +2984,15 @@ (if (result i32) (i32.lt_u (i32.add - (local.tee $11 + (local.tee $8 (i32.and (local.tee $12 (i32.load8_s (i32.add - (local.get $11) + (local.get $8) (i32.add (i32.mul - (local.get $8) + (local.get $10) (i32.const 58) ) (i32.const 3611) @@ -3020,8 +3011,8 @@ (local.set $7 (local.get $9) ) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $8) ) (br $while-in13) ) @@ -3045,7 +3036,7 @@ ) (local.set $7 (i32.gt_s - (local.get $17) + (local.get $18) (i32.const -1) ) ) @@ -3076,19 +3067,19 @@ (i32.store (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 2) ) (local.get $3) ) - (local.get $11) + (local.get $8) ) - (local.set $11 + (local.set $8 (i32.load offset=4 (local.tee $7 (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 3) ) (local.get $2) @@ -3104,14 +3095,14 @@ ) (i32.store offset=4 (local.get $13) - (local.get $11) + (local.get $8) ) (br $__rjti$2) ) ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $16 @@ -3122,7 +3113,7 @@ ) (call $_pop_arg_336 (local.get $13) - (local.get $11) + (local.get $8) (local.get $1) ) ) @@ -3131,7 +3122,7 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $4 @@ -3144,17 +3135,17 @@ ) ) ) - (local.set $10 + (local.set $11 (select (local.tee $7 (i32.and - (local.get $10) + (local.get $11) (i32.const -65537) ) ) - (local.get $10) + (local.get $11) (i32.and - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -3162,11 +3153,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.tee $6 + (local.tee $5 (select - (local.tee $5 + (local.tee $6 (i32.add - (local.tee $11 + (local.tee $8 (select (local.tee $12 (i32.sub @@ -3175,8 +3166,8 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (block $__rjti$7 (result i32) (block $__rjti$6 (block $__rjti$5 @@ -3197,27 +3188,27 @@ (block $switch-case27 (br_table $switch-case119 $switch-default120 $switch-case40 $switch-default120 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case41 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case30 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case119 $switch-default120 $switch-case37 $switch-case35 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-case35 $switch-default120 $switch-default120 $switch-default120 $switch-case38 $switch-case27 $switch-case33 $switch-case28 $switch-default120 $switch-default120 $switch-case39 $switch-default120 $switch-case36 $switch-default120 $switch-default120 $switch-case30 $switch-default120 (i32.sub - (local.tee $18 + (local.tee $17 (select (i32.and - (local.tee $11 + (local.tee $8 (i32.load8_s - (local.get $18) + (local.get $17) ) ) (i32.const -33) ) - (local.get $11) + (local.get $8) (i32.and (i32.eq (i32.and - (local.get $11) + (local.get $8) (i32.const 15) ) (i32.const 3) ) (i32.ne - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -3236,7 +3227,7 @@ (block $switch-case20 (block $switch-case19 (br_table $switch-case19 $switch-case20 $switch-case21 $switch-case22 $switch-case23 $switch-default26 $switch-case24 $switch-case25 $switch-default26 - (local.get $8) + (local.get $10) ) ) (i32.store @@ -3377,7 +3368,7 @@ ) (local.set $4 (i32.or - (local.get $10) + (local.get $11) (i32.const 8) ) ) @@ -3391,13 +3382,13 @@ ) ) ) - (local.set $18 + (local.set $17 (i32.const 120) ) (br $__rjti$3) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$3) ) @@ -3416,7 +3407,7 @@ ) (block (local.set $7 - (local.get $25) + (local.get $24) ) (loop $while-in32 (i32.store8 @@ -3451,24 +3442,24 @@ ) ) (local.set $7 - (local.get $25) + (local.get $24) ) ) (if (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) (block (local.set $4 - (local.get $10) + (local.get $11) ) (local.set $5 (select - (local.tee $10 + (local.tee $11 (i32.add (i32.sub - (local.get $38) + (local.get $39) (local.tee $6 (local.get $7) ) @@ -3479,7 +3470,7 @@ (local.get $5) (i32.lt_s (local.get $5) - (local.get $10) + (local.get $11) ) ) ) @@ -3489,14 +3480,14 @@ (local.get $7) ) (local.set $4 - (local.get $10) + (local.get $11) ) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$8) @@ -3536,16 +3527,16 @@ (local.set $7 (i32.const 1) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) ) ) - (local.set $8 + (local.set $10 (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3558,7 +3549,7 @@ (local.set $7 (local.tee $8 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3586,7 +3577,7 @@ (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) @@ -3597,28 +3588,28 @@ ) ) (i32.store8 - (local.get $39) + (local.get $40) (i32.load (local.get $13) ) ) (local.set $4 - (local.get $39) + (local.get $40) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (i32.const 1) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $6 @@ -3649,18 +3640,18 @@ ) ) (i32.store offset=8 - (local.get $28) + (local.get $29) (i32.load (local.get $13) ) ) (i32.store offset=12 - (local.get $28) + (local.get $29) (i32.const 0) ) (i32.store (local.get $13) - (local.get $42) + (local.get $43) ) (local.set $7 (i32.const -1) @@ -3679,9 +3670,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (i32.const 0) - (local.get $10) + (local.get $11) ) (br $__rjti$7 (i32.const 0) @@ -3689,7 +3680,7 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.load (local.get $13) ) @@ -3700,14 +3691,14 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load (global.get $tempDoublePtr) ) ) - (local.set $31 + (local.set $32 (if (result i32) (i32.lt_s (i32.load offset=4 @@ -3719,16 +3710,16 @@ (local.set $26 (i32.const 1) ) - (local.set $15 + (local.set $14 (f64.neg - (local.get $15) + (local.get $14) ) ) (i32.const 4108) ) (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3741,7 +3732,7 @@ (local.set $26 (local.tee $4 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3757,14 +3748,14 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load (global.get $tempDoublePtr) ) ) - (local.set $6 + (local.set $5 (if (result i32) (i32.lt_u (i32.and @@ -3782,7 +3773,7 @@ (local.tee $22 (f64.mul (call $_frexp - (local.get $15) + (local.get $14) (local.get $20) ) (f64.const 2) @@ -3803,9 +3794,9 @@ ) (if (i32.eq - (local.tee $24 + (local.tee $12 (i32.or - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -3815,19 +3806,19 @@ (local.set $8 (select (i32.add - (local.get $31) + (local.get $32) (i32.const 9) ) - (local.get $31) + (local.get $32) (local.tee $12 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.or (i32.eqz @@ -3845,13 +3836,13 @@ ) (local.get $22) (block (result f64) - (local.set $15 + (local.set $14 (f64.const 8) ) (loop $while-in54 - (local.set $15 + (local.set $14 (f64.mul - (local.get $15) + (local.get $14) (f64.const 16) ) ) @@ -3873,27 +3864,27 @@ ) (f64.neg (f64.add - (local.get $15) + (local.get $14) (f64.sub (f64.neg (local.get $22) ) - (local.get $15) + (local.get $14) ) ) ) (f64.sub (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) - (local.get $15) + (local.get $14) ) ) ) ) ) - (local.set $11 + (local.set $10 (i32.or (local.get $26) (i32.const 2) @@ -3937,11 +3928,11 @@ ) (block (i32.store8 - (local.get $40) + (local.get $41) (i32.const 48) ) (local.set $4 - (local.get $40) + (local.get $41) ) ) ) @@ -3969,26 +3960,26 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const 15) ) ) - (local.set $18 + (local.set $17 (i32.lt_s (local.get $5) (i32.const 1) ) ) - (local.set $17 + (local.set $19 (i32.eqz (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) ) (local.set $4 - (local.get $23) + (local.get $21) ) (loop $while-in56 (i32.store8 @@ -3999,7 +3990,7 @@ (i32.add (local.tee $6 (call $f64-to-int - (local.get $15) + (local.get $14) ) ) (i32.const 4075) @@ -4007,10 +3998,10 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_s (local.get $6) ) @@ -4036,12 +4027,12 @@ (i32.and (i32.and (f64.eq - (local.get $15) + (local.get $14) (f64.const 0) ) - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $19) ) (local.get $6) (block (result i32) @@ -4060,7 +4051,7 @@ ) (br_if $while-in56 (f64.ne - (local.get $15) + (local.get $14) (f64.const 0) ) ) @@ -4068,23 +4059,23 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (i32.add - (local.get $11) - (local.tee $5 + (local.get $10) + (local.tee $6 (select (i32.sub (i32.add (local.get $5) - (local.get $45) + (local.get $46) ) (local.get $7) ) (i32.add (local.get $4) (i32.sub - (local.get $43) + (local.get $44) (local.get $7) ) ) @@ -4096,7 +4087,7 @@ (i32.lt_s (i32.add (local.get $4) - (local.get $44) + (local.get $45) ) (local.get $5) ) @@ -4105,7 +4096,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -4118,17 +4109,17 @@ ) (call $___fwritex (local.get $8) - (local.get $11) + (local.get $10) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) @@ -4148,7 +4139,7 @@ ) ) (call $___fwritex - (local.get $23) + (local.get $21) (local.get $4) (local.get $0) ) @@ -4157,12 +4148,12 @@ (local.get $0) (i32.const 48) (i32.sub - (local.get $5) + (local.get $6) (i32.add (local.get $4) - (local.tee $4 + (local.tee $6 (i32.sub - (local.get $27) + (local.get $28) (local.get $7) ) ) @@ -4182,33 +4173,33 @@ ) (call $___fwritex (local.get $7) - (local.get $4) + (local.get $6) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (br $do-once49 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $5) + (local.get $15) ) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (local.get $4) (block (result f64) @@ -4241,8 +4232,8 @@ (local.set $6 (local.tee $7 (select - (local.get $46) (local.get $47) + (local.get $48) (i32.lt_s (local.get $4) (i32.const 0) @@ -4255,7 +4246,7 @@ (local.get $6) (local.tee $4 (call $f64-to-int - (local.get $15) + (local.get $14) ) ) ) @@ -4267,10 +4258,10 @@ ) (br_if $while-in60 (f64.ne - (local.tee $15 + (local.tee $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_u (local.get $4) ) @@ -4284,7 +4275,7 @@ ) (if (i32.gt_s - (local.tee $8 + (local.tee $10 (i32.load (local.get $20) ) @@ -4296,19 +4287,19 @@ (local.get $7) ) (loop $while-in62 - (local.set $12 + (local.set $19 (select (i32.const 29) - (local.get $8) + (local.get $10) (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 29) ) ) ) (if (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add (local.get $6) (i32.const -4) @@ -4317,45 +4308,45 @@ (local.get $4) ) (block $do-once63 - (local.set $11 + (local.set $8 (i32.const 0) ) (loop $while-in66 (i32.store - (local.get $8) + (local.get $10) (call $___uremdi3 - (local.tee $11 + (local.tee $8 (call $_i64Add (call $_bitshift64Shl (i32.load - (local.get $8) + (local.get $10) ) (i32.const 0) - (local.get $12) + (local.get $19) ) (global.get $tempRet0) - (local.get $11) + (local.get $8) (i32.const 0) ) ) - (local.tee $17 + (local.tee $18 (global.get $tempRet0) ) (i32.const 1000000000) ) ) - (local.set $11 + (local.set $8 (call $___udivdi3 - (local.get $11) - (local.get $17) + (local.get $8) + (local.get $18) (i32.const 1000000000) ) ) (br_if $while-in66 (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add - (local.get $8) + (local.get $10) (i32.const -4) ) ) @@ -4365,7 +4356,7 @@ ) (br_if $do-once63 (i32.eqz - (local.get $11) + (local.get $8) ) ) (i32.store @@ -4375,7 +4366,7 @@ (i32.const -4) ) ) - (local.get $11) + (local.get $8) ) ) ) @@ -4407,18 +4398,18 @@ ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.sub (i32.load (local.get $20) ) - (local.get $12) + (local.get $19) ) ) ) (br_if $while-in62 (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -4428,7 +4419,7 @@ (local.get $7) ) ) - (local.set $17 + (local.set $18 (select (i32.const 6) (local.get $5) @@ -4440,15 +4431,15 @@ ) (if (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block - (local.set $21 + (local.set $19 (i32.add (call $i32s-div (i32.add - (local.get $17) + (local.get $18) (i32.const 25) ) (i32.const 9) @@ -4456,9 +4447,9 @@ (i32.const 1) ) ) - (local.set $32 + (local.set $23 (i32.eq - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4470,13 +4461,13 @@ ) (local.set $4 (loop $while-in70 (result i32) - (local.set $12 + (local.set $8 (select (i32.const 9) (local.tee $6 (i32.sub (i32.const 0) - (local.get $8) + (local.get $10) ) ) (i32.gt_s @@ -4491,11 +4482,11 @@ (local.get $4) ) (block $do-once71 - (local.set $11 + (local.set $27 (i32.add (i32.shl (i32.const 1) - (local.get $12) + (local.get $8) ) (i32.const -1) ) @@ -4503,10 +4494,10 @@ (local.set $37 (i32.shr_u (i32.const 1000000000) - (local.get $12) + (local.get $8) ) ) - (local.set $8 + (local.set $10 (i32.const 0) ) (local.set $6 @@ -4516,22 +4507,22 @@ (i32.store (local.get $6) (i32.add - (local.get $8) + (local.get $10) (i32.shr_u - (local.tee $8 + (local.tee $38 (i32.load (local.get $6) ) ) - (local.get $12) + (local.get $8) ) ) ) - (local.set $8 + (local.set $10 (i32.mul (i32.and - (local.get $8) - (local.get $11) + (local.get $27) + (local.get $38) ) (local.get $37) ) @@ -4562,12 +4553,12 @@ ) (br_if $do-once71 (i32.eqz - (local.get $8) + (local.get $10) ) ) (i32.store (local.get $4) - (local.get $8) + (local.get $10) ) (local.set $4 (i32.add @@ -4589,18 +4580,18 @@ ) ) ) - (local.set $11 + (local.set $4 (select (i32.add (local.tee $5 (select (local.get $7) (local.get $6) - (local.get $32) + (local.get $23) ) ) (i32.shl - (local.get $21) + (local.get $19) (i32.const 2) ) ) @@ -4613,38 +4604,35 @@ ) (i32.const 2) ) - (local.get $21) + (local.get $19) ) ) ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.add (i32.load (local.get $20) ) - (local.get $12) + (local.get $8) ) ) ) (if (result i32) (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block (local.set $5 (local.get $6) ) - (local.set $4 - (local.get $11) - ) (br $while-in70) ) (block (result i32) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $4) ) (local.get $6) ) @@ -4652,24 +4640,24 @@ ) ) ) - (local.set $8 + (local.set $10 (local.get $6) ) ) - (local.set $21 + (local.set $19 (local.get $7) ) (if (i32.lt_u (local.get $4) - (local.get $8) + (local.get $10) ) (block $do-once75 (local.set $6 (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -4679,7 +4667,7 @@ ) (br_if $do-once75 (i32.lt_u - (local.tee $11 + (local.tee $8 (i32.load (local.get $4) ) @@ -4699,7 +4687,7 @@ ) (br_if $while-in78 (i32.ge_u - (local.get $11) + (local.get $8) (local.tee $5 (i32.mul (local.get $5) @@ -4720,12 +4708,12 @@ (local.tee $5 (i32.add (i32.sub - (local.get $17) + (local.get $18) (select (local.get $6) (i32.const 0) (i32.ne - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4733,15 +4721,15 @@ (i32.shr_s (i32.shl (i32.and - (local.tee $32 + (local.tee $37 (i32.eq - (local.get $24) + (local.get $12) (i32.const 103) ) ) - (local.tee $37 + (local.tee $38 (i32.ne - (local.get $17) + (local.get $18) (i32.const 0) ) ) @@ -4756,8 +4744,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $10) + (local.get $19) ) (i32.const 2) ) @@ -4792,13 +4780,13 @@ (i32.const 9) ) (block - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in80 - (local.set $11 + (local.set $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -4815,13 +4803,13 @@ ) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) ) (local.set $12 (call $i32u-rem - (local.tee $24 + (local.tee $23 (i32.load (local.tee $5 (i32.add @@ -4837,19 +4825,19 @@ ) ) ) - (local.get $11) + (local.get $8) ) ) (if (i32.eqz (i32.and - (local.tee $48 + (local.tee $27 (i32.eq (i32.add (local.get $5) (i32.const 4) ) - (local.get $8) + (local.get $10) ) ) (i32.eqz @@ -4860,17 +4848,17 @@ (block $do-once81 (local.set $49 (call $i32u-div - (local.get $24) - (local.get $11) + (local.get $23) + (local.get $8) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.lt_u (local.get $12) (local.tee $50 (call $i32s-div - (local.get $11) + (local.get $8) (i32.const 2) ) ) @@ -4880,7 +4868,7 @@ (f64.const 1) (f64.const 1.5) (i32.and - (local.get $48) + (local.get $27) (i32.eq (local.get $12) (local.get $50) @@ -4904,19 +4892,19 @@ (if (i32.eq (i32.load8_s - (local.get $31) + (local.get $32) ) (i32.const 45) ) (block - (local.set $15 + (local.set $22 (f64.neg - (local.get $15) + (local.get $22) ) ) - (local.set $22 + (local.set $14 (f64.neg - (local.get $22) + (local.get $14) ) ) ) @@ -4926,7 +4914,7 @@ (local.get $5) (local.tee $12 (i32.sub - (local.get $24) + (local.get $23) (local.get $12) ) ) @@ -4935,7 +4923,7 @@ (f64.eq (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) (local.get $22) ) @@ -4944,7 +4932,7 @@ (local.get $5) (local.tee $6 (i32.add - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -5002,7 +4990,7 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -5020,7 +5008,7 @@ (i32.const 10) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in88 @@ -5033,9 +5021,9 @@ (br_if $while-in88 (i32.ge_u (local.get $12) - (local.tee $11 + (local.tee $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -5044,7 +5032,7 @@ ) ) ) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 @@ -5057,34 +5045,34 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $10) (i32.gt_u - (local.get $8) + (local.get $10) (local.get $4) ) ) ) (block (result i32) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 (local.get $6) ) - (local.get $8) + (local.get $10) ) ) ) - (local.set $8 + (local.set $23 (loop $while-in90 (result i32) (block $while-out89 (result i32) (if (i32.le_u (local.get $4) - (local.get $11) + (local.get $8) ) (block - (local.set $24 + (local.set $27 (i32.const 0) ) (br $while-out89 @@ -5094,7 +5082,7 @@ ) (if (result i32) (i32.load - (local.tee $6 + (local.tee $5 (i32.add (local.get $4) (i32.const -4) @@ -5102,14 +5090,14 @@ ) ) (block (result i32) - (local.set $24 + (local.set $27 (i32.const 1) ) (local.get $4) ) (block (local.set $4 - (local.get $6) + (local.get $5) ) (br $while-in90) ) @@ -5119,7 +5107,7 @@ ) (local.set $4 (if (result i32) - (local.get $32) + (local.get $37) (block $do-once91 (result i32) (local.set $6 (if (result i32) @@ -5127,9 +5115,9 @@ (i32.gt_s (local.tee $4 (i32.add - (local.get $17) + (local.get $18) (i32.xor - (local.get $37) + (local.get $38) (i32.const 1) ) ) @@ -5142,7 +5130,7 @@ ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.sub (i32.add (local.get $4) @@ -5152,49 +5140,44 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -1) ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.add (local.get $4) (i32.const -1) ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -2) ) ) ) ) - (if - (local.tee $4 - (i32.and - (local.get $10) - (i32.const 8) - ) - ) - (block - (local.set $21 - (local.get $4) - ) - (br $do-once91 - (local.get $17) + (drop + (br_if $do-once91 + (local.get $18) + (local.tee $10 + (i32.and + (local.get $11) + (i32.const 8) + ) ) ) ) (if - (local.get $24) + (local.get $27) (block $do-once93 (if (i32.eqz - (local.tee $18 + (local.tee $10 (i32.load (i32.add - (local.get $8) + (local.get $23) (i32.const -4) ) ) @@ -5210,7 +5193,7 @@ (local.set $4 (if (result i32) (call $i32u-rem - (local.get $18) + (local.get $10) (i32.const 10) ) (block @@ -5237,7 +5220,7 @@ (br_if $while-in96 (i32.eqz (call $i32u-rem - (local.get $18) + (local.get $10) (local.tee $5 (i32.mul (local.get $5) @@ -5258,8 +5241,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $23) + (local.get $19) ) (i32.const 2) ) @@ -5277,11 +5260,11 @@ (i32.const 102) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5298,17 +5281,17 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5328,7 +5311,7 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) @@ -5336,16 +5319,16 @@ ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) (local.set $6 - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $18) ) ) ) @@ -5358,11 +5341,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.tee $12 (i32.add (if (result i32) - (local.tee $17 + (local.tee $19 (i32.eq (i32.or (local.get $6) @@ -5372,7 +5355,7 @@ ) ) (block (result i32) - (local.set $18 + (local.set $17 (i32.const 0) ) (select @@ -5388,7 +5371,7 @@ (if (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.tee $5 (call $_fmt_u (local.tee $5 @@ -5430,7 +5413,7 @@ (br_if $while-in98 (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.get $5) ) (i32.const 2) @@ -5455,7 +5438,7 @@ ) ) (i32.store8 - (local.tee $18 + (local.tee $17 (i32.add (local.get $5) (i32.const -2) @@ -5464,8 +5447,8 @@ (local.get $6) ) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) ) ) @@ -5478,10 +5461,10 @@ (local.get $4) ) (i32.ne - (local.tee $32 + (local.tee $18 (i32.or (local.get $4) - (local.get $21) + (local.get $10) ) ) (i32.const 0) @@ -5489,7 +5472,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -5501,7 +5484,7 @@ ) ) (call $___fwritex - (local.get $31) + (local.get $32) (local.get $26) (local.get $0) ) @@ -5509,23 +5492,23 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (if - (local.get $17) + (local.get $19) (block (local.set $5 - (local.tee $11 + (local.tee $8 (select (local.get $7) - (local.get $11) + (local.get $8) (i32.gt_u - (local.get $11) + (local.get $8) (local.get $7) ) ) @@ -5538,20 +5521,20 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) (block $do-once103 (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (br_if $do-once103 (i32.ne (local.get $6) - (local.get $30) + (local.get $31) ) ) (i32.store8 @@ -5566,7 +5549,7 @@ (br_if $do-once103 (i32.le_u (local.get $6) - (local.get $23) + (local.get $21) ) ) (loop $while-in106 @@ -5582,7 +5565,7 @@ (br_if $while-in106 (i32.gt_u (local.get $6) - (local.get $23) + (local.get $21) ) ) ) @@ -5601,7 +5584,7 @@ (call $___fwritex (local.get $6) (i32.sub - (local.get $41) + (local.get $42) (local.get $6) ) (local.get $0) @@ -5626,7 +5609,7 @@ ) ) (if - (local.get $32) + (local.get $18) (if (i32.eqz (i32.and @@ -5651,7 +5634,7 @@ (i32.and (i32.lt_u (local.get $6) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5667,10 +5650,10 @@ (local.get $6) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $23) + (local.get $21) ) (loop $while-in112 (i32.store8 @@ -5685,7 +5668,7 @@ (br_if $while-in112 (i32.gt_u (local.get $5) - (local.get $23) + (local.get $21) ) ) ) @@ -5727,7 +5710,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5752,14 +5735,14 @@ ) ) (block $do-once99 - (local.set $8 + (local.set $19 (select - (local.get $8) + (local.get $23) (i32.add - (local.get $11) + (local.get $8) (i32.const 4) ) - (local.get $24) + (local.get $27) ) ) (call $_pad @@ -5772,13 +5755,13 @@ (i32.const -1) ) (block (result i32) - (local.set $17 + (local.set $10 (i32.eqz - (local.get $21) + (local.get $10) ) ) (local.set $5 - (local.get $11) + (local.get $8) ) (local.set $6 (local.get $4) @@ -5792,10 +5775,10 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $30) + (local.get $31) ) (block (i32.store8 @@ -5811,7 +5794,7 @@ (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (if @@ -5841,7 +5824,7 @@ (local.get $6) (i32.const 1) ) - (local.get $17) + (local.get $10) ) ) (br_if $do-once115 @@ -5862,7 +5845,7 @@ (br_if $do-once115 (i32.le_u (local.get $4) - (local.get $23) + (local.get $21) ) ) (loop $while-in118 @@ -5878,7 +5861,7 @@ (br_if $while-in118 (i32.gt_u (local.get $4) - (local.get $23) + (local.get $21) ) ) ) @@ -5887,7 +5870,7 @@ ) (local.set $7 (i32.sub - (local.get $41) + (local.get $42) (local.get $4) ) ) @@ -5922,7 +5905,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $19) ) (i32.gt_s (local.tee $6 @@ -5954,10 +5937,10 @@ ) ) (call $___fwritex - (local.get $18) + (local.get $17) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) (local.get $0) ) @@ -5966,19 +5949,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) + (local.get $15) (local.get $12) (i32.lt_s (local.get $12) - (local.get $14) + (local.get $15) ) ) ) @@ -5986,17 +5969,17 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $4 (i32.add - (local.tee $8 + (local.tee $6 (select (i32.const 0) (local.get $26) (local.tee $5 (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) ) ) @@ -6014,7 +5997,7 @@ (local.tee $7 (i32.ne (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) (i32.const 0) @@ -6034,18 +6017,18 @@ (i32.and (if (result i32) (i32.and - (local.tee $4 + (local.tee $7 (i32.load (local.get $0) ) ) (i32.const 32) ) - (local.get $4) + (local.get $7) (block (result i32) (call $___fwritex - (local.get $31) - (local.get $8) + (local.get $32) + (local.get $6) (local.get $0) ) (i32.load @@ -6065,19 +6048,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $4) + (local.get $15) ) ) ) @@ -6087,26 +6070,26 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) - (local.set $11 + (local.set $8 (local.get $5) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $8 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -6118,7 +6101,7 @@ (local.get $13) ) ) - (local.tee $10 + (local.tee $11 (i32.load offset=4 (local.get $13) ) @@ -6126,7 +6109,7 @@ ) (block (result i32) (local.set $7 - (local.get $25) + (local.get $24) ) (local.set $6 (loop $while-in123 (result i32) @@ -6155,11 +6138,11 @@ (local.tee $6 (call $_bitshift64Lshr (local.get $6) - (local.get $10) + (local.get $11) (i32.const 4) ) ) - (local.tee $10 + (local.tee $11 (global.get $tempRet0) ) ) @@ -6187,16 +6170,16 @@ ) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.add (i32.shr_s - (local.get $18) + (local.get $17) (i32.const 4) ) (i32.const 4091) @@ -6208,9 +6191,9 @@ ) (block (result i32) (local.set $6 - (local.get $25) + (local.get $24) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) @@ -6223,15 +6206,15 @@ (call $_fmt_u (local.get $4) (local.get $6) - (local.get $25) + (local.get $24) ) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$8) ) - (local.set $18 + (local.set $17 (i32.eqz (local.tee $12 (call $_memchr @@ -6241,10 +6224,10 @@ ) ) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (select (local.get $5) (i32.sub @@ -6253,13 +6236,13 @@ (local.get $6) ) ) - (local.get $18) + (local.get $17) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 @@ -6269,7 +6252,7 @@ (local.get $5) ) (local.get $12) - (local.get $18) + (local.get $17) ) ) ) @@ -6349,9 +6332,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $4) - (local.get $10) + (local.get $11) ) (if (result i32) (local.get $4) @@ -6431,7 +6414,7 @@ ) ) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6440,17 +6423,17 @@ ) (local.set $9 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.gt_s - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) ) ) ) (br $label$continue$L1) ) - (local.set $10 + (local.set $11 (select (i32.and (local.get $4) @@ -6466,7 +6449,7 @@ (if (result i32) (i32.or (local.get $5) - (local.tee $4 + (local.tee $8 (i32.or (i32.ne (i32.load @@ -6484,24 +6467,21 @@ ) ) (block (result i32) - (local.set $11 + (local.set $8 (select (local.get $5) (local.tee $6 (i32.add - (i32.xor - (i32.and - (local.get $4) - (i32.const 1) - ) - (i32.const 1) - ) (i32.sub - (local.get $38) + (local.get $39) (local.tee $4 (local.get $6) ) ) + (i32.xor + (local.get $8) + (i32.const 1) + ) ) ) (i32.gt_s @@ -6510,14 +6490,14 @@ ) ) ) - (local.get $25) + (local.get $24) ) (block (result i32) - (local.set $11 + (local.set $8 (i32.const 0) ) (local.tee $4 - (local.get $25) + (local.get $24) ) ) ) @@ -6525,9 +6505,9 @@ (local.get $4) ) ) - (local.get $11) + (local.get $8) (i32.lt_s - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -6535,15 +6515,15 @@ (local.get $7) ) ) - (local.get $14) + (local.get $15) (i32.lt_s - (local.get $14) - (local.get $5) + (local.get $15) + (local.get $6) ) ) ) - (local.get $5) - (local.get $10) + (local.get $6) + (local.get $11) ) (if (i32.eqz @@ -6555,7 +6535,7 @@ ) ) (call $___fwritex - (local.get $8) + (local.get $10) (local.get $7) (local.get $0) ) @@ -6563,17 +6543,17 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $11) + (local.get $8) (local.get $12) (i32.const 0) ) @@ -6595,10 +6575,10 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6606,7 +6586,7 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) @@ -6619,7 +6599,7 @@ ) (local.set $16 (if (result i32) - (local.get $19) + (local.get $25) (block (result i32) (local.set $0 (i32.const 1) @@ -6712,7 +6692,7 @@ ) ) (global.set $STACKTOP - (local.get $28) + (local.get $29) ) (local.get $16) ) diff --git a/test/emcc_hello_world.fromasm.clamp b/test/emcc_hello_world.fromasm.clamp index ce65cca04..1a2992ad1 100644 --- a/test/emcc_hello_world.fromasm.clamp +++ b/test/emcc_hello_world.fromasm.clamp @@ -977,7 +977,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local.set $7 + (local.set $6 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -995,22 +995,22 @@ ) (local.set $3 (i32.add - (local.get $7) + (local.get $6) (i32.const 120) ) ) (local.set $5 (i32.add (local.tee $4 - (local.get $7) + (local.get $6) ) (i32.const 136) ) ) - (local.set $6 + (local.set $8 (i32.add (local.tee $2 - (local.tee $8 + (local.tee $7 (i32.add (local.get $4) (i32.const 80) @@ -1033,7 +1033,7 @@ (i32.const 4) ) ) - (local.get $6) + (local.get $8) ) ) ) @@ -1050,7 +1050,7 @@ (i32.const 0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) (i32.const 0) ) @@ -1061,7 +1061,7 @@ (local.get $0) ) ) - (local.set $2 + (local.set $1 (i32.load (local.get $0) ) @@ -1076,7 +1076,7 @@ (i32.store (local.get $0) (i32.and - (local.get $2) + (local.get $1) (i32.const -33) ) ) @@ -1090,11 +1090,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (block - (local.set $6 + (local.set $2 (i32.load offset=44 (local.get $0) ) @@ -1127,11 +1127,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (if - (local.get $6) + (local.get $2) (block (drop (call_indirect (type $FUNCSIG$iiii) @@ -1156,7 +1156,7 @@ ) (i32.store offset=44 (local.get $0) - (local.get $6) + (local.get $2) ) (i32.store offset=48 (local.get $0) @@ -1185,7 +1185,7 @@ (local.get $0) ) (i32.and - (local.get $2) + (local.get $1) (i32.const 32) ) ) @@ -1195,7 +1195,7 @@ ) ) (global.set $STACKTOP - (local.get $7) + (local.get $6) ) ) (func $___fwritex (; 36 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1721,7 +1721,7 @@ (i32.and (i32.xor (i32.and - (local.tee $3 + (local.tee $2 (i32.load (local.get $1) ) @@ -1731,7 +1731,7 @@ (i32.const -2139062144) ) (i32.add - (local.get $3) + (local.get $2) (i32.const -16843009) ) ) @@ -2046,8 +2046,8 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 f64) + (local $14 f64) + (local $15 i32) (local $16 i32) (local $17 i32) (local $18 i32) @@ -2086,7 +2086,7 @@ (local.set $4 (i32.const 672) ) - (local.set $28 + (local.set $29 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -2104,14 +2104,14 @@ ) (local.set $20 (i32.add - (local.get $28) + (local.get $29) (i32.const 16) ) ) - (local.set $42 + (local.set $43 (i32.add (local.tee $13 - (local.get $28) + (local.get $29) ) (i32.const 8) ) @@ -2122,16 +2122,16 @@ (i32.const 528) ) ) - (local.set $29 + (local.set $30 (i32.ne (local.get $0) (i32.const 0) ) ) - (local.set $38 - (local.tee $25 + (local.set $39 + (local.tee $24 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 536) @@ -2141,15 +2141,15 @@ ) ) ) - (local.set $39 + (local.set $40 (i32.add - (local.get $19) + (local.get $5) (i32.const 39) ) ) (local.set $33 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 576) @@ -2158,19 +2158,19 @@ (i32.const 12) ) ) - (local.set $40 + (local.set $41 (i32.add - (local.get $19) + (local.get $5) (i32.const 11) ) ) - (local.set $43 + (local.set $44 (i32.sub - (local.tee $27 + (local.tee $28 (local.get $33) ) (local.tee $36 - (local.tee $23 + (local.tee $21 (i32.add (local.get $13) (i32.const 588) @@ -2179,21 +2179,21 @@ ) ) ) - (local.set $44 + (local.set $45 (i32.sub (i32.const -2) (local.get $36) ) ) - (local.set $45 + (local.set $46 (i32.add - (local.get $27) + (local.get $28) (i32.const 2) ) ) - (local.set $47 + (local.set $48 (i32.add - (local.tee $46 + (local.tee $47 (i32.add (local.get $13) (i32.const 24) @@ -2202,23 +2202,20 @@ (i32.const 288) ) ) - (local.set $41 - (local.tee $30 + (local.set $42 + (local.tee $31 (i32.add - (local.get $23) + (local.get $21) (i32.const 9) ) ) ) (local.set $34 (i32.add - (local.get $23) + (local.get $21) (i32.const 8) ) ) - (local.set $19 - (i32.const 0) - ) (block $label$break$L343 (block $__rjti$9 (loop $label$continue$L1 @@ -2269,7 +2266,7 @@ (block $label$break$L9 (block $switch (if - (local.tee $6 + (local.tee $5 (i32.shr_s (i32.shl (local.get $6) @@ -2281,7 +2278,7 @@ (block (br_if $switch (i32.ne - (local.get $6) + (local.get $5) (i32.const 37) ) ) @@ -2348,7 +2345,7 @@ ) ) (if - (local.get $29) + (local.get $30) (if (i32.eqz (i32.and @@ -2380,12 +2377,12 @@ (br $label$continue$L1) ) ) - (local.set $7 + (local.set $10 (if (result i32) (i32.lt_u (local.tee $7 (i32.add - (local.tee $10 + (local.tee $11 (i32.load8_s (local.tee $9 (i32.add @@ -2410,7 +2407,7 @@ (i32.const 3) ) (local.get $9) - (local.tee $10 + (local.tee $11 (i32.eq (i32.load8_s offset=2 (local.get $5) @@ -2422,35 +2419,35 @@ ) ) ) - (local.set $17 + (local.set $18 (select (local.get $7) (i32.const -1) - (local.get $10) + (local.get $11) ) ) (select (i32.const 1) - (local.get $19) - (local.get $10) + (local.get $25) + (local.get $11) ) ) (block (result i32) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $17 + (local.set $18 (i32.const -1) ) - (local.get $19) + (local.get $25) ) ) ) - (local.set $19 + (local.set $8 (if (result i32) (i32.eq (i32.and - (local.tee $10 + (local.tee $11 (i32.shr_s (i32.shl (local.get $5) @@ -2464,13 +2461,13 @@ (i32.const 32) ) (block $label$break$L25 (result i32) - (local.set $19 + (local.set $25 (local.get $5) ) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in4 (result i32) @@ -2489,22 +2486,22 @@ ) (block (local.set $5 - (local.get $19) + (local.get $25) ) (br $label$break$L25 - (local.get $10) + (local.get $11) ) ) ) - (local.set $10 + (local.set $11 (i32.or - (local.get $10) + (local.get $11) (i32.shl (i32.const 1) (i32.add (i32.shr_s (i32.shl - (local.get $19) + (local.get $25) (i32.const 24) ) (i32.const 24) @@ -2518,7 +2515,7 @@ (i32.eq (i32.and (local.tee $5 - (local.tee $19 + (local.tee $25 (i32.load8_s (local.tee $9 (i32.add @@ -2535,15 +2532,15 @@ ) ) (local.set $5 - (local.get $19) + (local.get $25) ) - (local.get $10) + (local.get $11) ) ) (i32.const 0) ) ) - (local.set $19 + (local.set $25 (if (result i32) (i32.eq (i32.and @@ -2558,7 +2555,7 @@ (block $__rjti$0 (br_if $__rjti$0 (i32.ge_u - (local.tee $10 + (local.tee $11 (i32.add (i32.load8_s (local.tee $5 @@ -2585,7 +2582,7 @@ (i32.store (i32.add (i32.shl - (local.get $10) + (local.get $11) (i32.const 2) ) (local.get $3) @@ -2613,7 +2610,7 @@ (local.set $7 (i32.const 1) ) - (local.set $14 + (local.set $15 (i32.load (local.get $5) ) @@ -2626,7 +2623,7 @@ ) ) (if - (local.get $7) + (local.get $10) (block (local.set $16 (i32.const -1) @@ -2636,16 +2633,16 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) (local.set $9 (local.get $5) ) - (local.set $14 + (local.set $15 (i32.const 0) ) (br $do-once5 @@ -2653,7 +2650,7 @@ ) ) ) - (local.set $14 + (local.set $15 (i32.load (local.tee $9 (i32.and @@ -2681,25 +2678,25 @@ (local.get $5) ) ) - (local.set $10 + (local.set $11 (if (result i32) (i32.lt_s - (local.get $14) + (local.get $15) (i32.const 0) ) (block (result i32) - (local.set $14 + (local.set $15 (i32.sub (i32.const 0) - (local.get $14) + (local.get $15) ) ) (i32.or - (local.get $19) + (local.get $8) (i32.const 8192) ) ) - (local.get $19) + (local.get $8) ) ) (local.get $7) @@ -2721,7 +2718,7 @@ (i32.const 10) ) (block (result i32) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in8 @@ -2729,14 +2726,14 @@ (i32.add (local.get $5) (i32.mul - (local.get $10) + (local.get $11) (i32.const 10) ) ) ) (if (i32.lt_u - (local.tee $8 + (local.tee $7 (i32.add (i32.load8_s (local.tee $9 @@ -2752,11 +2749,11 @@ (i32.const 10) ) (block - (local.set $10 + (local.set $11 (local.get $5) ) (local.set $5 - (local.get $8) + (local.get $7) ) (br $while-in8) ) @@ -2774,24 +2771,24 @@ (br $label$break$L1) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (local.get $5) ) - (local.get $7) + (local.get $10) ) ) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (i32.const 0) ) - (local.get $7) + (local.get $10) ) ) ) @@ -2853,7 +2850,7 @@ (loop $while-in11 (drop (br_if $label$break$L46 - (local.tee $5 + (local.tee $7 (i32.add (local.get $5) (i32.mul @@ -2863,7 +2860,7 @@ ) ) (i32.ge_u - (local.tee $8 + (local.tee $5 (i32.add (i32.load8_s (local.tee $9 @@ -2880,12 +2877,6 @@ ) ) ) - (local.set $7 - (local.get $5) - ) - (local.set $5 - (local.get $8) - ) (br $while-in11) ) ) @@ -2958,7 +2949,7 @@ ) ) (if - (local.get $19) + (local.get $25) (block (local.set $16 (i32.const -1) @@ -2967,7 +2958,7 @@ ) ) (if (result i32) - (local.get $29) + (local.get $30) (block (result i32) (local.set $7 (i32.load @@ -3010,14 +3001,14 @@ (local.set $7 (local.get $9) ) - (local.set $8 + (local.set $10 (i32.const 0) ) - (local.set $18 + (local.set $17 (loop $while-in13 (result i32) (if (i32.gt_u - (local.tee $11 + (local.tee $8 (i32.add (i32.load8_s (local.get $7) @@ -3043,15 +3034,15 @@ (if (result i32) (i32.lt_u (i32.add - (local.tee $11 + (local.tee $8 (i32.and (local.tee $12 (i32.load8_s (i32.add - (local.get $11) + (local.get $8) (i32.add (i32.mul - (local.get $8) + (local.get $10) (i32.const 58) ) (i32.const 3611) @@ -3070,8 +3061,8 @@ (local.set $7 (local.get $9) ) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $8) ) (br $while-in13) ) @@ -3095,7 +3086,7 @@ ) (local.set $7 (i32.gt_s - (local.get $17) + (local.get $18) (i32.const -1) ) ) @@ -3126,19 +3117,19 @@ (i32.store (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 2) ) (local.get $3) ) - (local.get $11) + (local.get $8) ) - (local.set $11 + (local.set $8 (i32.load offset=4 (local.tee $7 (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 3) ) (local.get $2) @@ -3154,14 +3145,14 @@ ) (i32.store offset=4 (local.get $13) - (local.get $11) + (local.get $8) ) (br $__rjti$2) ) ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $16 @@ -3172,7 +3163,7 @@ ) (call $_pop_arg_336 (local.get $13) - (local.get $11) + (local.get $8) (local.get $1) ) ) @@ -3181,7 +3172,7 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $4 @@ -3194,17 +3185,17 @@ ) ) ) - (local.set $10 + (local.set $11 (select (local.tee $7 (i32.and - (local.get $10) + (local.get $11) (i32.const -65537) ) ) - (local.get $10) + (local.get $11) (i32.and - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -3212,11 +3203,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.tee $6 + (local.tee $5 (select - (local.tee $5 + (local.tee $6 (i32.add - (local.tee $11 + (local.tee $8 (select (local.tee $12 (i32.sub @@ -3225,8 +3216,8 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (block $__rjti$7 (result i32) (block $__rjti$6 (block $__rjti$5 @@ -3247,27 +3238,27 @@ (block $switch-case27 (br_table $switch-case119 $switch-default120 $switch-case40 $switch-default120 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case41 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case30 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case119 $switch-default120 $switch-case37 $switch-case35 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-case35 $switch-default120 $switch-default120 $switch-default120 $switch-case38 $switch-case27 $switch-case33 $switch-case28 $switch-default120 $switch-default120 $switch-case39 $switch-default120 $switch-case36 $switch-default120 $switch-default120 $switch-case30 $switch-default120 (i32.sub - (local.tee $18 + (local.tee $17 (select (i32.and - (local.tee $11 + (local.tee $8 (i32.load8_s - (local.get $18) + (local.get $17) ) ) (i32.const -33) ) - (local.get $11) + (local.get $8) (i32.and (i32.eq (i32.and - (local.get $11) + (local.get $8) (i32.const 15) ) (i32.const 3) ) (i32.ne - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -3286,7 +3277,7 @@ (block $switch-case20 (block $switch-case19 (br_table $switch-case19 $switch-case20 $switch-case21 $switch-case22 $switch-case23 $switch-default26 $switch-case24 $switch-case25 $switch-default26 - (local.get $8) + (local.get $10) ) ) (i32.store @@ -3427,7 +3418,7 @@ ) (local.set $4 (i32.or - (local.get $10) + (local.get $11) (i32.const 8) ) ) @@ -3441,13 +3432,13 @@ ) ) ) - (local.set $18 + (local.set $17 (i32.const 120) ) (br $__rjti$3) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$3) ) @@ -3466,7 +3457,7 @@ ) (block (local.set $7 - (local.get $25) + (local.get $24) ) (loop $while-in32 (i32.store8 @@ -3501,24 +3492,24 @@ ) ) (local.set $7 - (local.get $25) + (local.get $24) ) ) (if (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) (block (local.set $4 - (local.get $10) + (local.get $11) ) (local.set $5 (select - (local.tee $10 + (local.tee $11 (i32.add (i32.sub - (local.get $38) + (local.get $39) (local.tee $6 (local.get $7) ) @@ -3529,7 +3520,7 @@ (local.get $5) (i32.lt_s (local.get $5) - (local.get $10) + (local.get $11) ) ) ) @@ -3539,14 +3530,14 @@ (local.get $7) ) (local.set $4 - (local.get $10) + (local.get $11) ) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$8) @@ -3586,16 +3577,16 @@ (local.set $7 (i32.const 1) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) ) ) - (local.set $8 + (local.set $10 (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3608,7 +3599,7 @@ (local.set $7 (local.tee $8 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3636,7 +3627,7 @@ (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) @@ -3647,28 +3638,28 @@ ) ) (i32.store8 - (local.get $39) + (local.get $40) (i32.load (local.get $13) ) ) (local.set $4 - (local.get $39) + (local.get $40) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (i32.const 1) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $6 @@ -3699,18 +3690,18 @@ ) ) (i32.store offset=8 - (local.get $28) + (local.get $29) (i32.load (local.get $13) ) ) (i32.store offset=12 - (local.get $28) + (local.get $29) (i32.const 0) ) (i32.store (local.get $13) - (local.get $42) + (local.get $43) ) (local.set $7 (i32.const -1) @@ -3729,9 +3720,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (i32.const 0) - (local.get $10) + (local.get $11) ) (br $__rjti$7 (i32.const 0) @@ -3739,7 +3730,7 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.load (local.get $13) ) @@ -3750,14 +3741,14 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load (global.get $tempDoublePtr) ) ) - (local.set $31 + (local.set $32 (if (result i32) (i32.lt_s (i32.load offset=4 @@ -3769,16 +3760,16 @@ (local.set $26 (i32.const 1) ) - (local.set $15 + (local.set $14 (f64.neg - (local.get $15) + (local.get $14) ) ) (i32.const 4108) ) (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3791,7 +3782,7 @@ (local.set $26 (local.tee $4 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3807,14 +3798,14 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load (global.get $tempDoublePtr) ) ) - (local.set $6 + (local.set $5 (if (result i32) (i32.lt_u (i32.and @@ -3832,7 +3823,7 @@ (local.tee $22 (f64.mul (call $_frexp - (local.get $15) + (local.get $14) (local.get $20) ) (f64.const 2) @@ -3853,9 +3844,9 @@ ) (if (i32.eq - (local.tee $24 + (local.tee $12 (i32.or - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -3865,19 +3856,19 @@ (local.set $8 (select (i32.add - (local.get $31) + (local.get $32) (i32.const 9) ) - (local.get $31) + (local.get $32) (local.tee $12 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.or (i32.eqz @@ -3895,13 +3886,13 @@ ) (local.get $22) (block (result f64) - (local.set $15 + (local.set $14 (f64.const 8) ) (loop $while-in54 - (local.set $15 + (local.set $14 (f64.mul - (local.get $15) + (local.get $14) (f64.const 16) ) ) @@ -3923,27 +3914,27 @@ ) (f64.neg (f64.add - (local.get $15) + (local.get $14) (f64.sub (f64.neg (local.get $22) ) - (local.get $15) + (local.get $14) ) ) ) (f64.sub (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) - (local.get $15) + (local.get $14) ) ) ) ) ) - (local.set $11 + (local.set $10 (i32.or (local.get $26) (i32.const 2) @@ -3987,11 +3978,11 @@ ) (block (i32.store8 - (local.get $40) + (local.get $41) (i32.const 48) ) (local.set $4 - (local.get $40) + (local.get $41) ) ) ) @@ -4019,26 +4010,26 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const 15) ) ) - (local.set $18 + (local.set $17 (i32.lt_s (local.get $5) (i32.const 1) ) ) - (local.set $17 + (local.set $19 (i32.eqz (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) ) (local.set $4 - (local.get $23) + (local.get $21) ) (loop $while-in56 (i32.store8 @@ -4049,7 +4040,7 @@ (i32.add (local.tee $6 (call $f64-to-int - (local.get $15) + (local.get $14) ) ) (i32.const 4075) @@ -4057,10 +4048,10 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_s (local.get $6) ) @@ -4086,12 +4077,12 @@ (i32.and (i32.and (f64.eq - (local.get $15) + (local.get $14) (f64.const 0) ) - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $19) ) (local.get $6) (block (result i32) @@ -4110,7 +4101,7 @@ ) (br_if $while-in56 (f64.ne - (local.get $15) + (local.get $14) (f64.const 0) ) ) @@ -4118,23 +4109,23 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (i32.add - (local.get $11) - (local.tee $5 + (local.get $10) + (local.tee $6 (select (i32.sub (i32.add (local.get $5) - (local.get $45) + (local.get $46) ) (local.get $7) ) (i32.add (local.get $4) (i32.sub - (local.get $43) + (local.get $44) (local.get $7) ) ) @@ -4146,7 +4137,7 @@ (i32.lt_s (i32.add (local.get $4) - (local.get $44) + (local.get $45) ) (local.get $5) ) @@ -4155,7 +4146,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -4168,17 +4159,17 @@ ) (call $___fwritex (local.get $8) - (local.get $11) + (local.get $10) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) @@ -4198,7 +4189,7 @@ ) ) (call $___fwritex - (local.get $23) + (local.get $21) (local.get $4) (local.get $0) ) @@ -4207,12 +4198,12 @@ (local.get $0) (i32.const 48) (i32.sub - (local.get $5) + (local.get $6) (i32.add (local.get $4) - (local.tee $4 + (local.tee $6 (i32.sub - (local.get $27) + (local.get $28) (local.get $7) ) ) @@ -4232,33 +4223,33 @@ ) (call $___fwritex (local.get $7) - (local.get $4) + (local.get $6) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (br $do-once49 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $5) + (local.get $15) ) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (local.get $4) (block (result f64) @@ -4291,8 +4282,8 @@ (local.set $6 (local.tee $7 (select - (local.get $46) (local.get $47) + (local.get $48) (i32.lt_s (local.get $4) (i32.const 0) @@ -4305,7 +4296,7 @@ (local.get $6) (local.tee $4 (call $f64-to-uint - (local.get $15) + (local.get $14) ) ) ) @@ -4317,10 +4308,10 @@ ) (br_if $while-in60 (f64.ne - (local.tee $15 + (local.tee $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_u (local.get $4) ) @@ -4334,7 +4325,7 @@ ) (if (i32.gt_s - (local.tee $8 + (local.tee $10 (i32.load (local.get $20) ) @@ -4346,19 +4337,19 @@ (local.get $7) ) (loop $while-in62 - (local.set $12 + (local.set $19 (select (i32.const 29) - (local.get $8) + (local.get $10) (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 29) ) ) ) (if (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add (local.get $6) (i32.const -4) @@ -4367,45 +4358,45 @@ (local.get $4) ) (block $do-once63 - (local.set $11 + (local.set $8 (i32.const 0) ) (loop $while-in66 (i32.store - (local.get $8) + (local.get $10) (call $___uremdi3 - (local.tee $11 + (local.tee $8 (call $_i64Add (call $_bitshift64Shl (i32.load - (local.get $8) + (local.get $10) ) (i32.const 0) - (local.get $12) + (local.get $19) ) (global.get $tempRet0) - (local.get $11) + (local.get $8) (i32.const 0) ) ) - (local.tee $17 + (local.tee $18 (global.get $tempRet0) ) (i32.const 1000000000) ) ) - (local.set $11 + (local.set $8 (call $___udivdi3 - (local.get $11) - (local.get $17) + (local.get $8) + (local.get $18) (i32.const 1000000000) ) ) (br_if $while-in66 (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add - (local.get $8) + (local.get $10) (i32.const -4) ) ) @@ -4415,7 +4406,7 @@ ) (br_if $do-once63 (i32.eqz - (local.get $11) + (local.get $8) ) ) (i32.store @@ -4425,7 +4416,7 @@ (i32.const -4) ) ) - (local.get $11) + (local.get $8) ) ) ) @@ -4457,18 +4448,18 @@ ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.sub (i32.load (local.get $20) ) - (local.get $12) + (local.get $19) ) ) ) (br_if $while-in62 (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -4478,7 +4469,7 @@ (local.get $7) ) ) - (local.set $17 + (local.set $18 (select (i32.const 6) (local.get $5) @@ -4490,15 +4481,15 @@ ) (if (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block - (local.set $21 + (local.set $19 (i32.add (call $i32s-div (i32.add - (local.get $17) + (local.get $18) (i32.const 25) ) (i32.const 9) @@ -4506,9 +4497,9 @@ (i32.const 1) ) ) - (local.set $32 + (local.set $23 (i32.eq - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4520,13 +4511,13 @@ ) (local.set $4 (loop $while-in70 (result i32) - (local.set $12 + (local.set $8 (select (i32.const 9) (local.tee $6 (i32.sub (i32.const 0) - (local.get $8) + (local.get $10) ) ) (i32.gt_s @@ -4541,11 +4532,11 @@ (local.get $4) ) (block $do-once71 - (local.set $11 + (local.set $27 (i32.add (i32.shl (i32.const 1) - (local.get $12) + (local.get $8) ) (i32.const -1) ) @@ -4553,10 +4544,10 @@ (local.set $37 (i32.shr_u (i32.const 1000000000) - (local.get $12) + (local.get $8) ) ) - (local.set $8 + (local.set $10 (i32.const 0) ) (local.set $6 @@ -4566,22 +4557,22 @@ (i32.store (local.get $6) (i32.add - (local.get $8) + (local.get $10) (i32.shr_u - (local.tee $8 + (local.tee $38 (i32.load (local.get $6) ) ) - (local.get $12) + (local.get $8) ) ) ) - (local.set $8 + (local.set $10 (i32.mul (i32.and - (local.get $8) - (local.get $11) + (local.get $27) + (local.get $38) ) (local.get $37) ) @@ -4612,12 +4603,12 @@ ) (br_if $do-once71 (i32.eqz - (local.get $8) + (local.get $10) ) ) (i32.store (local.get $4) - (local.get $8) + (local.get $10) ) (local.set $4 (i32.add @@ -4639,18 +4630,18 @@ ) ) ) - (local.set $11 + (local.set $4 (select (i32.add (local.tee $5 (select (local.get $7) (local.get $6) - (local.get $32) + (local.get $23) ) ) (i32.shl - (local.get $21) + (local.get $19) (i32.const 2) ) ) @@ -4663,38 +4654,35 @@ ) (i32.const 2) ) - (local.get $21) + (local.get $19) ) ) ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.add (i32.load (local.get $20) ) - (local.get $12) + (local.get $8) ) ) ) (if (result i32) (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block (local.set $5 (local.get $6) ) - (local.set $4 - (local.get $11) - ) (br $while-in70) ) (block (result i32) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $4) ) (local.get $6) ) @@ -4702,24 +4690,24 @@ ) ) ) - (local.set $8 + (local.set $10 (local.get $6) ) ) - (local.set $21 + (local.set $19 (local.get $7) ) (if (i32.lt_u (local.get $4) - (local.get $8) + (local.get $10) ) (block $do-once75 (local.set $6 (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -4729,7 +4717,7 @@ ) (br_if $do-once75 (i32.lt_u - (local.tee $11 + (local.tee $8 (i32.load (local.get $4) ) @@ -4749,7 +4737,7 @@ ) (br_if $while-in78 (i32.ge_u - (local.get $11) + (local.get $8) (local.tee $5 (i32.mul (local.get $5) @@ -4770,12 +4758,12 @@ (local.tee $5 (i32.add (i32.sub - (local.get $17) + (local.get $18) (select (local.get $6) (i32.const 0) (i32.ne - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4783,15 +4771,15 @@ (i32.shr_s (i32.shl (i32.and - (local.tee $32 + (local.tee $37 (i32.eq - (local.get $24) + (local.get $12) (i32.const 103) ) ) - (local.tee $37 + (local.tee $38 (i32.ne - (local.get $17) + (local.get $18) (i32.const 0) ) ) @@ -4806,8 +4794,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $10) + (local.get $19) ) (i32.const 2) ) @@ -4842,13 +4830,13 @@ (i32.const 9) ) (block - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in80 - (local.set $11 + (local.set $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -4865,13 +4853,13 @@ ) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) ) (local.set $12 (call $i32u-rem - (local.tee $24 + (local.tee $23 (i32.load (local.tee $5 (i32.add @@ -4887,19 +4875,19 @@ ) ) ) - (local.get $11) + (local.get $8) ) ) (if (i32.eqz (i32.and - (local.tee $48 + (local.tee $27 (i32.eq (i32.add (local.get $5) (i32.const 4) ) - (local.get $8) + (local.get $10) ) ) (i32.eqz @@ -4910,17 +4898,17 @@ (block $do-once81 (local.set $49 (call $i32u-div - (local.get $24) - (local.get $11) + (local.get $23) + (local.get $8) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.lt_u (local.get $12) (local.tee $50 (call $i32s-div - (local.get $11) + (local.get $8) (i32.const 2) ) ) @@ -4930,7 +4918,7 @@ (f64.const 1) (f64.const 1.5) (i32.and - (local.get $48) + (local.get $27) (i32.eq (local.get $12) (local.get $50) @@ -4954,19 +4942,19 @@ (if (i32.eq (i32.load8_s - (local.get $31) + (local.get $32) ) (i32.const 45) ) (block - (local.set $15 + (local.set $22 (f64.neg - (local.get $15) + (local.get $22) ) ) - (local.set $22 + (local.set $14 (f64.neg - (local.get $22) + (local.get $14) ) ) ) @@ -4976,7 +4964,7 @@ (local.get $5) (local.tee $12 (i32.sub - (local.get $24) + (local.get $23) (local.get $12) ) ) @@ -4985,7 +4973,7 @@ (f64.eq (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) (local.get $22) ) @@ -4994,7 +4982,7 @@ (local.get $5) (local.tee $6 (i32.add - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -5052,7 +5040,7 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -5070,7 +5058,7 @@ (i32.const 10) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in88 @@ -5083,9 +5071,9 @@ (br_if $while-in88 (i32.ge_u (local.get $12) - (local.tee $11 + (local.tee $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -5094,7 +5082,7 @@ ) ) ) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 @@ -5107,34 +5095,34 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $10) (i32.gt_u - (local.get $8) + (local.get $10) (local.get $4) ) ) ) (block (result i32) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 (local.get $6) ) - (local.get $8) + (local.get $10) ) ) ) - (local.set $8 + (local.set $23 (loop $while-in90 (result i32) (block $while-out89 (result i32) (if (i32.le_u (local.get $4) - (local.get $11) + (local.get $8) ) (block - (local.set $24 + (local.set $27 (i32.const 0) ) (br $while-out89 @@ -5144,7 +5132,7 @@ ) (if (result i32) (i32.load - (local.tee $6 + (local.tee $5 (i32.add (local.get $4) (i32.const -4) @@ -5152,14 +5140,14 @@ ) ) (block (result i32) - (local.set $24 + (local.set $27 (i32.const 1) ) (local.get $4) ) (block (local.set $4 - (local.get $6) + (local.get $5) ) (br $while-in90) ) @@ -5169,7 +5157,7 @@ ) (local.set $4 (if (result i32) - (local.get $32) + (local.get $37) (block $do-once91 (result i32) (local.set $6 (if (result i32) @@ -5177,9 +5165,9 @@ (i32.gt_s (local.tee $4 (i32.add - (local.get $17) + (local.get $18) (i32.xor - (local.get $37) + (local.get $38) (i32.const 1) ) ) @@ -5192,7 +5180,7 @@ ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.sub (i32.add (local.get $4) @@ -5202,49 +5190,44 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -1) ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.add (local.get $4) (i32.const -1) ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -2) ) ) ) ) - (if - (local.tee $4 - (i32.and - (local.get $10) - (i32.const 8) - ) - ) - (block - (local.set $21 - (local.get $4) - ) - (br $do-once91 - (local.get $17) + (drop + (br_if $do-once91 + (local.get $18) + (local.tee $10 + (i32.and + (local.get $11) + (i32.const 8) + ) ) ) ) (if - (local.get $24) + (local.get $27) (block $do-once93 (if (i32.eqz - (local.tee $18 + (local.tee $10 (i32.load (i32.add - (local.get $8) + (local.get $23) (i32.const -4) ) ) @@ -5260,7 +5243,7 @@ (local.set $4 (if (result i32) (call $i32u-rem - (local.get $18) + (local.get $10) (i32.const 10) ) (block @@ -5287,7 +5270,7 @@ (br_if $while-in96 (i32.eqz (call $i32u-rem - (local.get $18) + (local.get $10) (local.tee $5 (i32.mul (local.get $5) @@ -5308,8 +5291,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $23) + (local.get $19) ) (i32.const 2) ) @@ -5327,11 +5310,11 @@ (i32.const 102) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5348,17 +5331,17 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5378,7 +5361,7 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) @@ -5386,16 +5369,16 @@ ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) (local.set $6 - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $18) ) ) ) @@ -5408,11 +5391,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.tee $12 (i32.add (if (result i32) - (local.tee $17 + (local.tee $19 (i32.eq (i32.or (local.get $6) @@ -5422,7 +5405,7 @@ ) ) (block (result i32) - (local.set $18 + (local.set $17 (i32.const 0) ) (select @@ -5438,7 +5421,7 @@ (if (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.tee $5 (call $_fmt_u (local.tee $5 @@ -5480,7 +5463,7 @@ (br_if $while-in98 (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.get $5) ) (i32.const 2) @@ -5505,7 +5488,7 @@ ) ) (i32.store8 - (local.tee $18 + (local.tee $17 (i32.add (local.get $5) (i32.const -2) @@ -5514,8 +5497,8 @@ (local.get $6) ) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) ) ) @@ -5528,10 +5511,10 @@ (local.get $4) ) (i32.ne - (local.tee $32 + (local.tee $18 (i32.or (local.get $4) - (local.get $21) + (local.get $10) ) ) (i32.const 0) @@ -5539,7 +5522,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -5551,7 +5534,7 @@ ) ) (call $___fwritex - (local.get $31) + (local.get $32) (local.get $26) (local.get $0) ) @@ -5559,23 +5542,23 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (if - (local.get $17) + (local.get $19) (block (local.set $5 - (local.tee $11 + (local.tee $8 (select (local.get $7) - (local.get $11) + (local.get $8) (i32.gt_u - (local.get $11) + (local.get $8) (local.get $7) ) ) @@ -5588,20 +5571,20 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) (block $do-once103 (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (br_if $do-once103 (i32.ne (local.get $6) - (local.get $30) + (local.get $31) ) ) (i32.store8 @@ -5616,7 +5599,7 @@ (br_if $do-once103 (i32.le_u (local.get $6) - (local.get $23) + (local.get $21) ) ) (loop $while-in106 @@ -5632,7 +5615,7 @@ (br_if $while-in106 (i32.gt_u (local.get $6) - (local.get $23) + (local.get $21) ) ) ) @@ -5651,7 +5634,7 @@ (call $___fwritex (local.get $6) (i32.sub - (local.get $41) + (local.get $42) (local.get $6) ) (local.get $0) @@ -5676,7 +5659,7 @@ ) ) (if - (local.get $32) + (local.get $18) (if (i32.eqz (i32.and @@ -5701,7 +5684,7 @@ (i32.and (i32.lt_u (local.get $6) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5717,10 +5700,10 @@ (local.get $6) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $23) + (local.get $21) ) (loop $while-in112 (i32.store8 @@ -5735,7 +5718,7 @@ (br_if $while-in112 (i32.gt_u (local.get $5) - (local.get $23) + (local.get $21) ) ) ) @@ -5777,7 +5760,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5802,14 +5785,14 @@ ) ) (block $do-once99 - (local.set $8 + (local.set $19 (select - (local.get $8) + (local.get $23) (i32.add - (local.get $11) + (local.get $8) (i32.const 4) ) - (local.get $24) + (local.get $27) ) ) (call $_pad @@ -5822,13 +5805,13 @@ (i32.const -1) ) (block (result i32) - (local.set $17 + (local.set $10 (i32.eqz - (local.get $21) + (local.get $10) ) ) (local.set $5 - (local.get $11) + (local.get $8) ) (local.set $6 (local.get $4) @@ -5842,10 +5825,10 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $30) + (local.get $31) ) (block (i32.store8 @@ -5861,7 +5844,7 @@ (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (if @@ -5891,7 +5874,7 @@ (local.get $6) (i32.const 1) ) - (local.get $17) + (local.get $10) ) ) (br_if $do-once115 @@ -5912,7 +5895,7 @@ (br_if $do-once115 (i32.le_u (local.get $4) - (local.get $23) + (local.get $21) ) ) (loop $while-in118 @@ -5928,7 +5911,7 @@ (br_if $while-in118 (i32.gt_u (local.get $4) - (local.get $23) + (local.get $21) ) ) ) @@ -5937,7 +5920,7 @@ ) (local.set $7 (i32.sub - (local.get $41) + (local.get $42) (local.get $4) ) ) @@ -5972,7 +5955,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $19) ) (i32.gt_s (local.tee $6 @@ -6004,10 +5987,10 @@ ) ) (call $___fwritex - (local.get $18) + (local.get $17) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) (local.get $0) ) @@ -6016,19 +5999,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) + (local.get $15) (local.get $12) (i32.lt_s (local.get $12) - (local.get $14) + (local.get $15) ) ) ) @@ -6036,17 +6019,17 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $4 (i32.add - (local.tee $8 + (local.tee $6 (select (i32.const 0) (local.get $26) (local.tee $5 (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) ) ) @@ -6064,7 +6047,7 @@ (local.tee $7 (i32.ne (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) (i32.const 0) @@ -6084,18 +6067,18 @@ (i32.and (if (result i32) (i32.and - (local.tee $4 + (local.tee $7 (i32.load (local.get $0) ) ) (i32.const 32) ) - (local.get $4) + (local.get $7) (block (result i32) (call $___fwritex - (local.get $31) - (local.get $8) + (local.get $32) + (local.get $6) (local.get $0) ) (i32.load @@ -6115,19 +6098,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $4) + (local.get $15) ) ) ) @@ -6137,26 +6120,26 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) - (local.set $11 + (local.set $8 (local.get $5) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $8 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -6168,7 +6151,7 @@ (local.get $13) ) ) - (local.tee $10 + (local.tee $11 (i32.load offset=4 (local.get $13) ) @@ -6176,7 +6159,7 @@ ) (block (result i32) (local.set $7 - (local.get $25) + (local.get $24) ) (local.set $6 (loop $while-in123 (result i32) @@ -6205,11 +6188,11 @@ (local.tee $6 (call $_bitshift64Lshr (local.get $6) - (local.get $10) + (local.get $11) (i32.const 4) ) ) - (local.tee $10 + (local.tee $11 (global.get $tempRet0) ) ) @@ -6237,16 +6220,16 @@ ) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.add (i32.shr_s - (local.get $18) + (local.get $17) (i32.const 4) ) (i32.const 4091) @@ -6258,9 +6241,9 @@ ) (block (result i32) (local.set $6 - (local.get $25) + (local.get $24) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) @@ -6273,15 +6256,15 @@ (call $_fmt_u (local.get $4) (local.get $6) - (local.get $25) + (local.get $24) ) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$8) ) - (local.set $18 + (local.set $17 (i32.eqz (local.tee $12 (call $_memchr @@ -6291,10 +6274,10 @@ ) ) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (select (local.get $5) (i32.sub @@ -6303,13 +6286,13 @@ (local.get $6) ) ) - (local.get $18) + (local.get $17) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 @@ -6319,7 +6302,7 @@ (local.get $5) ) (local.get $12) - (local.get $18) + (local.get $17) ) ) ) @@ -6399,9 +6382,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $4) - (local.get $10) + (local.get $11) ) (if (result i32) (local.get $4) @@ -6481,7 +6464,7 @@ ) ) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6490,17 +6473,17 @@ ) (local.set $9 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.gt_s - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) ) ) ) (br $label$continue$L1) ) - (local.set $10 + (local.set $11 (select (i32.and (local.get $4) @@ -6516,7 +6499,7 @@ (if (result i32) (i32.or (local.get $5) - (local.tee $4 + (local.tee $8 (i32.or (i32.ne (i32.load @@ -6534,24 +6517,21 @@ ) ) (block (result i32) - (local.set $11 + (local.set $8 (select (local.get $5) (local.tee $6 (i32.add - (i32.xor - (i32.and - (local.get $4) - (i32.const 1) - ) - (i32.const 1) - ) (i32.sub - (local.get $38) + (local.get $39) (local.tee $4 (local.get $6) ) ) + (i32.xor + (local.get $8) + (i32.const 1) + ) ) ) (i32.gt_s @@ -6560,14 +6540,14 @@ ) ) ) - (local.get $25) + (local.get $24) ) (block (result i32) - (local.set $11 + (local.set $8 (i32.const 0) ) (local.tee $4 - (local.get $25) + (local.get $24) ) ) ) @@ -6575,9 +6555,9 @@ (local.get $4) ) ) - (local.get $11) + (local.get $8) (i32.lt_s - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -6585,15 +6565,15 @@ (local.get $7) ) ) - (local.get $14) + (local.get $15) (i32.lt_s - (local.get $14) - (local.get $5) + (local.get $15) + (local.get $6) ) ) ) - (local.get $5) - (local.get $10) + (local.get $6) + (local.get $11) ) (if (i32.eqz @@ -6605,7 +6585,7 @@ ) ) (call $___fwritex - (local.get $8) + (local.get $10) (local.get $7) (local.get $0) ) @@ -6613,17 +6593,17 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $11) + (local.get $8) (local.get $12) (i32.const 0) ) @@ -6645,10 +6625,10 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6656,7 +6636,7 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) @@ -6669,7 +6649,7 @@ ) (local.set $16 (if (result i32) - (local.get $19) + (local.get $25) (block (result i32) (local.set $0 (i32.const 1) @@ -6762,7 +6742,7 @@ ) ) (global.set $STACKTOP - (local.get $28) + (local.get $29) ) (local.get $16) ) diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise index fe4884027..c93a14f80 100644 --- a/test/emcc_hello_world.fromasm.imprecise +++ b/test/emcc_hello_world.fromasm.imprecise @@ -971,7 +971,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local.set $7 + (local.set $6 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -989,22 +989,22 @@ ) (local.set $3 (i32.add - (local.get $7) + (local.get $6) (i32.const 120) ) ) (local.set $5 (i32.add (local.tee $4 - (local.get $7) + (local.get $6) ) (i32.const 136) ) ) - (local.set $6 + (local.set $8 (i32.add (local.tee $2 - (local.tee $8 + (local.tee $7 (i32.add (local.get $4) (i32.const 80) @@ -1027,7 +1027,7 @@ (i32.const 4) ) ) - (local.get $6) + (local.get $8) ) ) ) @@ -1044,13 +1044,13 @@ (i32.const 0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) (i32.const 0) ) (i32.const -1) (block (result i32) - (local.set $2 + (local.set $1 (i32.load (local.get $0) ) @@ -1065,7 +1065,7 @@ (i32.store (local.get $0) (i32.and - (local.get $2) + (local.get $1) (i32.const -33) ) ) @@ -1079,11 +1079,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (block - (local.set $6 + (local.set $2 (i32.load offset=44 (local.get $0) ) @@ -1116,11 +1116,11 @@ (local.get $0) (local.get $3) (local.get $4) - (local.get $8) + (local.get $7) ) ) (if - (local.get $6) + (local.get $2) (block (drop (call_indirect (type $FUNCSIG$iiii) @@ -1140,7 +1140,7 @@ ) (i32.store offset=44 (local.get $0) - (local.get $6) + (local.get $2) ) (i32.store offset=48 (local.get $0) @@ -1169,7 +1169,7 @@ (local.get $0) ) (i32.and - (local.get $2) + (local.get $1) (i32.const 32) ) ) @@ -1179,7 +1179,7 @@ ) ) (global.set $STACKTOP - (local.get $7) + (local.get $6) ) ) (func $___fwritex (; 36 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1705,7 +1705,7 @@ (i32.and (i32.xor (i32.and - (local.tee $3 + (local.tee $2 (i32.load (local.get $1) ) @@ -1715,7 +1715,7 @@ (i32.const -2139062144) ) (i32.add - (local.get $3) + (local.get $2) (i32.const -16843009) ) ) @@ -1931,8 +1931,8 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 f64) + (local $14 f64) + (local $15 i32) (local $16 i32) (local $17 i32) (local $18 i32) @@ -1970,7 +1970,7 @@ (local.set $4 (i32.const 672) ) - (local.set $28 + (local.set $29 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -1988,14 +1988,14 @@ ) (local.set $20 (i32.add - (local.get $28) + (local.get $29) (i32.const 16) ) ) - (local.set $42 + (local.set $43 (i32.add (local.tee $13 - (local.get $28) + (local.get $29) ) (i32.const 8) ) @@ -2006,16 +2006,16 @@ (i32.const 528) ) ) - (local.set $29 + (local.set $30 (i32.ne (local.get $0) (i32.const 0) ) ) - (local.set $38 - (local.tee $25 + (local.set $39 + (local.tee $24 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 536) @@ -2025,15 +2025,15 @@ ) ) ) - (local.set $39 + (local.set $40 (i32.add - (local.get $19) + (local.get $5) (i32.const 39) ) ) (local.set $33 (i32.add - (local.tee $19 + (local.tee $5 (i32.add (local.get $13) (i32.const 576) @@ -2042,19 +2042,19 @@ (i32.const 12) ) ) - (local.set $40 + (local.set $41 (i32.add - (local.get $19) + (local.get $5) (i32.const 11) ) ) - (local.set $43 + (local.set $44 (i32.sub - (local.tee $27 + (local.tee $28 (local.get $33) ) (local.tee $36 - (local.tee $23 + (local.tee $21 (i32.add (local.get $13) (i32.const 588) @@ -2063,21 +2063,21 @@ ) ) ) - (local.set $44 + (local.set $45 (i32.sub (i32.const -2) (local.get $36) ) ) - (local.set $45 + (local.set $46 (i32.add - (local.get $27) + (local.get $28) (i32.const 2) ) ) - (local.set $47 + (local.set $48 (i32.add - (local.tee $46 + (local.tee $47 (i32.add (local.get $13) (i32.const 24) @@ -2086,23 +2086,20 @@ (i32.const 288) ) ) - (local.set $41 - (local.tee $30 + (local.set $42 + (local.tee $31 (i32.add - (local.get $23) + (local.get $21) (i32.const 9) ) ) ) (local.set $34 (i32.add - (local.get $23) + (local.get $21) (i32.const 8) ) ) - (local.set $19 - (i32.const 0) - ) (block $label$break$L343 (block $__rjti$9 (loop $label$continue$L1 @@ -2153,7 +2150,7 @@ (block $label$break$L9 (block $switch (if - (local.tee $6 + (local.tee $5 (i32.shr_s (i32.shl (local.get $6) @@ -2165,7 +2162,7 @@ (block (br_if $switch (i32.ne - (local.get $6) + (local.get $5) (i32.const 37) ) ) @@ -2232,7 +2229,7 @@ ) ) (if - (local.get $29) + (local.get $30) (if (i32.eqz (i32.and @@ -2264,12 +2261,12 @@ (br $label$continue$L1) ) ) - (local.set $7 + (local.set $10 (if (result i32) (i32.lt_u (local.tee $7 (i32.add - (local.tee $10 + (local.tee $11 (i32.load8_s (local.tee $9 (i32.add @@ -2294,7 +2291,7 @@ (i32.const 3) ) (local.get $9) - (local.tee $10 + (local.tee $11 (i32.eq (i32.load8_s offset=2 (local.get $5) @@ -2306,35 +2303,35 @@ ) ) ) - (local.set $17 + (local.set $18 (select (local.get $7) (i32.const -1) - (local.get $10) + (local.get $11) ) ) (select (i32.const 1) - (local.get $19) - (local.get $10) + (local.get $25) + (local.get $11) ) ) (block (result i32) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $17 + (local.set $18 (i32.const -1) ) - (local.get $19) + (local.get $25) ) ) ) - (local.set $19 + (local.set $8 (if (result i32) (i32.eq (i32.and - (local.tee $10 + (local.tee $11 (i32.shr_s (i32.shl (local.get $5) @@ -2348,13 +2345,13 @@ (i32.const 32) ) (block $label$break$L25 (result i32) - (local.set $19 + (local.set $25 (local.get $5) ) (local.set $5 - (local.get $10) + (local.get $11) ) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in4 (result i32) @@ -2373,22 +2370,22 @@ ) (block (local.set $5 - (local.get $19) + (local.get $25) ) (br $label$break$L25 - (local.get $10) + (local.get $11) ) ) ) - (local.set $10 + (local.set $11 (i32.or - (local.get $10) + (local.get $11) (i32.shl (i32.const 1) (i32.add (i32.shr_s (i32.shl - (local.get $19) + (local.get $25) (i32.const 24) ) (i32.const 24) @@ -2402,7 +2399,7 @@ (i32.eq (i32.and (local.tee $5 - (local.tee $19 + (local.tee $25 (i32.load8_s (local.tee $9 (i32.add @@ -2419,15 +2416,15 @@ ) ) (local.set $5 - (local.get $19) + (local.get $25) ) - (local.get $10) + (local.get $11) ) ) (i32.const 0) ) ) - (local.set $19 + (local.set $25 (if (result i32) (i32.eq (i32.and @@ -2449,7 +2446,7 @@ (i32.const 36) ) (i32.ge_u - (local.tee $10 + (local.tee $11 (i32.add (i32.load8_s (local.tee $5 @@ -2470,7 +2467,7 @@ (i32.store (i32.add (i32.shl - (local.get $10) + (local.get $11) (i32.const 2) ) (local.get $3) @@ -2480,7 +2477,7 @@ (local.set $7 (i32.const 1) ) - (local.set $14 + (local.set $15 (i32.load (i32.add (i32.shl @@ -2505,7 +2502,7 @@ ) ) (if - (local.get $7) + (local.get $10) (block (local.set $16 (i32.const -1) @@ -2515,16 +2512,16 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) (local.set $9 (local.get $5) ) - (local.set $14 + (local.set $15 (i32.const 0) ) (br $do-once5 @@ -2532,7 +2529,7 @@ ) ) ) - (local.set $14 + (local.set $15 (i32.load (local.tee $9 (i32.and @@ -2560,25 +2557,25 @@ (local.get $5) ) ) - (local.set $10 + (local.set $11 (if (result i32) (i32.lt_s - (local.get $14) + (local.get $15) (i32.const 0) ) (block (result i32) - (local.set $14 + (local.set $15 (i32.sub (i32.const 0) - (local.get $14) + (local.get $15) ) ) (i32.or - (local.get $19) + (local.get $8) (i32.const 8192) ) ) - (local.get $19) + (local.get $8) ) ) (local.get $7) @@ -2600,7 +2597,7 @@ (i32.const 10) ) (block (result i32) - (local.set $10 + (local.set $11 (i32.const 0) ) (loop $while-in8 @@ -2608,14 +2605,14 @@ (i32.add (local.get $5) (i32.mul - (local.get $10) + (local.get $11) (i32.const 10) ) ) ) (if (i32.lt_u - (local.tee $8 + (local.tee $7 (i32.add (i32.load8_s (local.tee $9 @@ -2631,11 +2628,11 @@ (i32.const 10) ) (block - (local.set $10 + (local.set $11 (local.get $5) ) (local.set $5 - (local.get $8) + (local.get $7) ) (br $while-in8) ) @@ -2653,24 +2650,24 @@ (br $label$break$L1) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (local.get $5) ) - (local.get $7) + (local.get $10) ) ) ) (block (result i32) - (local.set $10 - (local.get $19) + (local.set $11 + (local.get $8) ) - (local.set $14 + (local.set $15 (i32.const 0) ) - (local.get $7) + (local.get $10) ) ) ) @@ -2732,7 +2729,7 @@ (loop $while-in11 (drop (br_if $label$break$L46 - (local.tee $5 + (local.tee $7 (i32.add (local.get $5) (i32.mul @@ -2742,7 +2739,7 @@ ) ) (i32.ge_u - (local.tee $8 + (local.tee $5 (i32.add (i32.load8_s (local.tee $9 @@ -2759,12 +2756,6 @@ ) ) ) - (local.set $7 - (local.get $5) - ) - (local.set $5 - (local.get $8) - ) (br $while-in11) ) ) @@ -2830,7 +2821,7 @@ ) ) (if - (local.get $19) + (local.get $25) (block (local.set $16 (i32.const -1) @@ -2839,7 +2830,7 @@ ) ) (if (result i32) - (local.get $29) + (local.get $30) (block (result i32) (local.set $7 (i32.load @@ -2882,14 +2873,14 @@ (local.set $7 (local.get $9) ) - (local.set $8 + (local.set $10 (i32.const 0) ) - (local.set $18 + (local.set $17 (loop $while-in13 (result i32) (if (i32.gt_u - (local.tee $11 + (local.tee $8 (i32.add (i32.load8_s (local.get $7) @@ -2915,15 +2906,15 @@ (if (result i32) (i32.lt_u (i32.add - (local.tee $11 + (local.tee $8 (i32.and (local.tee $12 (i32.load8_s (i32.add - (local.get $11) + (local.get $8) (i32.add (i32.mul - (local.get $8) + (local.get $10) (i32.const 58) ) (i32.const 3611) @@ -2942,8 +2933,8 @@ (local.set $7 (local.get $9) ) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $8) ) (br $while-in13) ) @@ -2967,7 +2958,7 @@ ) (local.set $7 (i32.gt_s - (local.get $17) + (local.get $18) (i32.const -1) ) ) @@ -2998,19 +2989,19 @@ (i32.store (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 2) ) (local.get $3) ) - (local.get $11) + (local.get $8) ) - (local.set $11 + (local.set $8 (i32.load offset=4 (local.tee $7 (i32.add (i32.shl - (local.get $17) + (local.get $18) (i32.const 3) ) (local.get $2) @@ -3026,14 +3017,14 @@ ) (i32.store offset=4 (local.get $13) - (local.get $11) + (local.get $8) ) (br $__rjti$2) ) ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $16 @@ -3044,7 +3035,7 @@ ) (call $_pop_arg_336 (local.get $13) - (local.get $11) + (local.get $8) (local.get $1) ) ) @@ -3053,7 +3044,7 @@ ) (if (i32.eqz - (local.get $29) + (local.get $30) ) (block (local.set $4 @@ -3066,17 +3057,17 @@ ) ) ) - (local.set $10 + (local.set $11 (select (local.tee $7 (i32.and - (local.get $10) + (local.get $11) (i32.const -65537) ) ) - (local.get $10) + (local.get $11) (i32.and - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -3084,11 +3075,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.tee $6 + (local.tee $5 (select - (local.tee $5 + (local.tee $6 (i32.add - (local.tee $11 + (local.tee $8 (select (local.tee $12 (i32.sub @@ -3097,8 +3088,8 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (block $__rjti$7 (result i32) (block $__rjti$6 (block $__rjti$5 @@ -3119,27 +3110,27 @@ (block $switch-case27 (br_table $switch-case119 $switch-default120 $switch-case40 $switch-default120 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case41 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case30 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case119 $switch-default120 $switch-case37 $switch-case35 $switch-case119 $switch-case119 $switch-case119 $switch-default120 $switch-case35 $switch-default120 $switch-default120 $switch-default120 $switch-case38 $switch-case27 $switch-case33 $switch-case28 $switch-default120 $switch-default120 $switch-case39 $switch-default120 $switch-case36 $switch-default120 $switch-default120 $switch-case30 $switch-default120 (i32.sub - (local.tee $18 + (local.tee $17 (select (i32.and - (local.tee $11 + (local.tee $8 (i32.load8_s - (local.get $18) + (local.get $17) ) ) (i32.const -33) ) - (local.get $11) + (local.get $8) (i32.and (i32.eq (i32.and - (local.get $11) + (local.get $8) (i32.const 15) ) (i32.const 3) ) (i32.ne - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -3158,7 +3149,7 @@ (block $switch-case20 (block $switch-case19 (br_table $switch-case19 $switch-case20 $switch-case21 $switch-case22 $switch-case23 $switch-default26 $switch-case24 $switch-case25 $switch-default26 - (local.get $8) + (local.get $10) ) ) (i32.store @@ -3299,7 +3290,7 @@ ) (local.set $4 (i32.or - (local.get $10) + (local.get $11) (i32.const 8) ) ) @@ -3313,13 +3304,13 @@ ) ) ) - (local.set $18 + (local.set $17 (i32.const 120) ) (br $__rjti$3) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$3) ) @@ -3338,7 +3329,7 @@ ) (block (local.set $7 - (local.get $25) + (local.get $24) ) (loop $while-in32 (i32.store8 @@ -3373,24 +3364,24 @@ ) ) (local.set $7 - (local.get $25) + (local.get $24) ) ) (if (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) (block (local.set $4 - (local.get $10) + (local.get $11) ) (local.set $5 (select - (local.tee $10 + (local.tee $11 (i32.add (i32.sub - (local.get $38) + (local.get $39) (local.tee $6 (local.get $7) ) @@ -3401,7 +3392,7 @@ (local.get $5) (i32.lt_s (local.get $5) - (local.get $10) + (local.get $11) ) ) ) @@ -3411,14 +3402,14 @@ (local.get $7) ) (local.set $4 - (local.get $10) + (local.get $11) ) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$8) @@ -3458,16 +3449,16 @@ (local.set $7 (i32.const 1) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) ) ) - (local.set $8 + (local.set $10 (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3480,7 +3471,7 @@ (local.set $7 (local.tee $8 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3508,34 +3499,34 @@ (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjti$4) ) (i32.store8 - (local.get $39) + (local.get $40) (i32.load (local.get $13) ) ) (local.set $4 - (local.get $39) + (local.get $40) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (i32.const 1) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $6 @@ -3561,18 +3552,18 @@ (br $__rjti$5) ) (i32.store offset=8 - (local.get $28) + (local.get $29) (i32.load (local.get $13) ) ) (i32.store offset=12 - (local.get $28) + (local.get $29) (i32.const 0) ) (i32.store (local.get $13) - (local.get $42) + (local.get $43) ) (local.set $7 (i32.const -1) @@ -3591,9 +3582,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (i32.const 0) - (local.get $10) + (local.get $11) ) (br $__rjti$7 (i32.const 0) @@ -3601,7 +3592,7 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.load (local.get $13) ) @@ -3612,9 +3603,9 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) - (local.set $31 + (local.set $32 (if (result i32) (i32.lt_s (i32.load offset=4 @@ -3626,16 +3617,16 @@ (local.set $26 (i32.const 1) ) - (local.set $15 + (local.set $14 (f64.neg - (local.get $15) + (local.get $14) ) ) (i32.const 4108) ) (if (result i32) (i32.and - (local.get $10) + (local.get $11) (i32.const 2048) ) (block (result i32) @@ -3648,7 +3639,7 @@ (local.set $26 (local.tee $4 (i32.and - (local.get $10) + (local.get $11) (i32.const 1) ) ) @@ -3664,9 +3655,9 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) - (local.set $6 + (local.set $5 (if (result i32) (i32.lt_u (i32.and @@ -3684,7 +3675,7 @@ (local.tee $22 (f64.mul (call $_frexp - (local.get $15) + (local.get $14) (local.get $20) ) (f64.const 2) @@ -3705,9 +3696,9 @@ ) (if (i32.eq - (local.tee $24 + (local.tee $12 (i32.or - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -3717,19 +3708,19 @@ (local.set $8 (select (i32.add - (local.get $31) + (local.get $32) (i32.const 9) ) - (local.get $31) + (local.get $32) (local.tee $12 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.or (i32.eqz @@ -3747,13 +3738,13 @@ ) (local.get $22) (block (result f64) - (local.set $15 + (local.set $14 (f64.const 8) ) (loop $while-in54 - (local.set $15 + (local.set $14 (f64.mul - (local.get $15) + (local.get $14) (f64.const 16) ) ) @@ -3769,21 +3760,21 @@ (select (f64.neg (f64.add - (local.get $15) + (local.get $14) (f64.sub (f64.neg (local.get $22) ) - (local.get $15) + (local.get $14) ) ) ) (f64.sub (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) - (local.get $15) + (local.get $14) ) (i32.eq (i32.load8_s @@ -3795,7 +3786,7 @@ ) ) ) - (local.set $11 + (local.set $10 (i32.or (local.get $26) (i32.const 2) @@ -3839,11 +3830,11 @@ ) (block (i32.store8 - (local.get $40) + (local.get $41) (i32.const 48) ) (local.set $4 - (local.get $40) + (local.get $41) ) ) ) @@ -3871,26 +3862,26 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const 15) ) ) - (local.set $18 + (local.set $17 (i32.lt_s (local.get $5) (i32.const 1) ) ) - (local.set $17 + (local.set $19 (i32.eqz (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) ) (local.set $4 - (local.get $23) + (local.get $21) ) (loop $while-in56 (i32.store8 @@ -3901,7 +3892,7 @@ (i32.add (local.tee $6 (i32.trunc_f64_s - (local.get $15) + (local.get $14) ) ) (i32.const 4075) @@ -3909,10 +3900,10 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_s (local.get $6) ) @@ -3938,12 +3929,12 @@ (i32.and (i32.and (f64.eq - (local.get $15) + (local.get $14) (f64.const 0) ) - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $19) ) (local.get $6) (block (result i32) @@ -3962,7 +3953,7 @@ ) (br_if $while-in56 (f64.ne - (local.get $15) + (local.get $14) (f64.const 0) ) ) @@ -3970,23 +3961,23 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $5 (i32.add - (local.get $11) - (local.tee $5 + (local.get $10) + (local.tee $6 (select (i32.sub (i32.add (local.get $5) - (local.get $45) + (local.get $46) ) (local.get $7) ) (i32.add (local.get $4) (i32.sub - (local.get $43) + (local.get $44) (local.get $7) ) ) @@ -3998,7 +3989,7 @@ (i32.lt_s (i32.add (local.get $4) - (local.get $44) + (local.get $45) ) (local.get $5) ) @@ -4007,7 +3998,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -4020,17 +4011,17 @@ ) (call $___fwritex (local.get $8) - (local.get $11) + (local.get $10) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) @@ -4050,7 +4041,7 @@ ) ) (call $___fwritex - (local.get $23) + (local.get $21) (local.get $4) (local.get $0) ) @@ -4059,12 +4050,12 @@ (local.get $0) (i32.const 48) (i32.sub - (local.get $5) + (local.get $6) (i32.add (local.get $4) - (local.tee $4 + (local.tee $6 (i32.sub - (local.get $27) + (local.get $28) (local.get $7) ) ) @@ -4084,33 +4075,33 @@ ) (call $___fwritex (local.get $7) - (local.get $4) + (local.get $6) (local.get $0) ) ) (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (br $do-once49 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $5) + (local.get $15) ) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (local.get $4) (block (result f64) @@ -4143,8 +4134,8 @@ (local.set $6 (local.tee $7 (select - (local.get $46) (local.get $47) + (local.get $48) (i32.lt_s (local.get $4) (i32.const 0) @@ -4157,7 +4148,7 @@ (local.get $6) (local.tee $4 (i32.trunc_f64_u - (local.get $15) + (local.get $14) ) ) ) @@ -4169,10 +4160,10 @@ ) (br_if $while-in60 (f64.ne - (local.tee $15 + (local.tee $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_u (local.get $4) ) @@ -4186,7 +4177,7 @@ ) (if (i32.gt_s - (local.tee $8 + (local.tee $10 (i32.load (local.get $20) ) @@ -4198,19 +4189,19 @@ (local.get $7) ) (loop $while-in62 - (local.set $12 + (local.set $19 (select (i32.const 29) - (local.get $8) + (local.get $10) (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 29) ) ) ) (if (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add (local.get $6) (i32.const -4) @@ -4219,45 +4210,45 @@ (local.get $4) ) (block $do-once63 - (local.set $11 + (local.set $8 (i32.const 0) ) (loop $while-in66 (i32.store - (local.get $8) + (local.get $10) (call $___uremdi3 - (local.tee $11 + (local.tee $8 (call $_i64Add (call $_bitshift64Shl (i32.load - (local.get $8) + (local.get $10) ) (i32.const 0) - (local.get $12) + (local.get $19) ) (global.get $tempRet0) - (local.get $11) + (local.get $8) (i32.const 0) ) ) - (local.tee $17 + (local.tee $18 (global.get $tempRet0) ) (i32.const 1000000000) ) ) - (local.set $11 + (local.set $8 (call $___udivdi3 - (local.get $11) - (local.get $17) + (local.get $8) + (local.get $18) (i32.const 1000000000) ) ) (br_if $while-in66 (i32.ge_u - (local.tee $8 + (local.tee $10 (i32.add - (local.get $8) + (local.get $10) (i32.const -4) ) ) @@ -4267,7 +4258,7 @@ ) (br_if $do-once63 (i32.eqz - (local.get $11) + (local.get $8) ) ) (i32.store @@ -4277,7 +4268,7 @@ (i32.const -4) ) ) - (local.get $11) + (local.get $8) ) ) ) @@ -4309,18 +4300,18 @@ ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.sub (i32.load (local.get $20) ) - (local.get $12) + (local.get $19) ) ) ) (br_if $while-in62 (i32.gt_s - (local.get $8) + (local.get $10) (i32.const 0) ) ) @@ -4330,7 +4321,7 @@ (local.get $7) ) ) - (local.set $17 + (local.set $18 (select (i32.const 6) (local.get $5) @@ -4342,15 +4333,15 @@ ) (if (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block - (local.set $21 + (local.set $19 (i32.add (i32.div_s (i32.add - (local.get $17) + (local.get $18) (i32.const 25) ) (i32.const 9) @@ -4358,9 +4349,9 @@ (i32.const 1) ) ) - (local.set $32 + (local.set $23 (i32.eq - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4372,13 +4363,13 @@ ) (local.set $4 (loop $while-in70 (result i32) - (local.set $12 + (local.set $8 (select (i32.const 9) (local.tee $6 (i32.sub (i32.const 0) - (local.get $8) + (local.get $10) ) ) (i32.gt_s @@ -4393,11 +4384,11 @@ (local.get $4) ) (block $do-once71 - (local.set $11 + (local.set $27 (i32.add (i32.shl (i32.const 1) - (local.get $12) + (local.get $8) ) (i32.const -1) ) @@ -4405,10 +4396,10 @@ (local.set $37 (i32.shr_u (i32.const 1000000000) - (local.get $12) + (local.get $8) ) ) - (local.set $8 + (local.set $10 (i32.const 0) ) (local.set $6 @@ -4418,22 +4409,22 @@ (i32.store (local.get $6) (i32.add - (local.get $8) + (local.get $10) (i32.shr_u - (local.tee $8 + (local.tee $38 (i32.load (local.get $6) ) ) - (local.get $12) + (local.get $8) ) ) ) - (local.set $8 + (local.set $10 (i32.mul (i32.and - (local.get $8) - (local.get $11) + (local.get $27) + (local.get $38) ) (local.get $37) ) @@ -4464,12 +4455,12 @@ ) (br_if $do-once71 (i32.eqz - (local.get $8) + (local.get $10) ) ) (i32.store (local.get $4) - (local.get $8) + (local.get $10) ) (local.set $4 (i32.add @@ -4491,18 +4482,18 @@ ) ) ) - (local.set $11 + (local.set $4 (select (i32.add (local.tee $5 (select (local.get $7) (local.get $6) - (local.get $32) + (local.get $23) ) ) (i32.shl - (local.get $21) + (local.get $19) (i32.const 2) ) ) @@ -4515,38 +4506,35 @@ ) (i32.const 2) ) - (local.get $21) + (local.get $19) ) ) ) (i32.store (local.get $20) - (local.tee $8 + (local.tee $10 (i32.add (i32.load (local.get $20) ) - (local.get $12) + (local.get $8) ) ) ) (if (result i32) (i32.lt_s - (local.get $8) + (local.get $10) (i32.const 0) ) (block (local.set $5 (local.get $6) ) - (local.set $4 - (local.get $11) - ) (br $while-in70) ) (block (result i32) - (local.set $8 - (local.get $11) + (local.set $10 + (local.get $4) ) (local.get $6) ) @@ -4554,24 +4542,24 @@ ) ) ) - (local.set $8 + (local.set $10 (local.get $6) ) ) - (local.set $21 + (local.set $19 (local.get $7) ) (if (i32.lt_u (local.get $4) - (local.get $8) + (local.get $10) ) (block $do-once75 (local.set $6 (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -4581,7 +4569,7 @@ ) (br_if $do-once75 (i32.lt_u - (local.tee $11 + (local.tee $8 (i32.load (local.get $4) ) @@ -4601,7 +4589,7 @@ ) (br_if $while-in78 (i32.ge_u - (local.get $11) + (local.get $8) (local.tee $5 (i32.mul (local.get $5) @@ -4622,12 +4610,12 @@ (local.tee $5 (i32.add (i32.sub - (local.get $17) + (local.get $18) (select (local.get $6) (i32.const 0) (i32.ne - (local.get $24) + (local.get $12) (i32.const 102) ) ) @@ -4635,15 +4623,15 @@ (i32.shr_s (i32.shl (i32.and - (local.tee $32 + (local.tee $37 (i32.eq - (local.get $24) + (local.get $12) (i32.const 103) ) ) - (local.tee $37 + (local.tee $38 (i32.ne - (local.get $17) + (local.get $18) (i32.const 0) ) ) @@ -4658,8 +4646,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $10) + (local.get $19) ) (i32.const 2) ) @@ -4688,13 +4676,13 @@ (i32.const 9) ) (block - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in80 - (local.set $11 + (local.set $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -4711,13 +4699,13 @@ ) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) ) (local.set $12 (i32.rem_u - (local.tee $24 + (local.tee $23 (i32.load (local.tee $5 (i32.add @@ -4736,19 +4724,19 @@ ) ) ) - (local.get $11) + (local.get $8) ) ) (if (i32.eqz (i32.and - (local.tee $48 + (local.tee $27 (i32.eq (i32.add (local.get $5) (i32.const 4) ) - (local.get $8) + (local.get $10) ) ) (i32.eqz @@ -4757,13 +4745,13 @@ ) ) (block $do-once81 - (local.set $15 + (local.set $14 (if (result f64) (i32.lt_u (local.get $12) (local.tee $49 (i32.div_s - (local.get $11) + (local.get $8) (i32.const 2) ) ) @@ -4773,7 +4761,7 @@ (f64.const 1) (f64.const 1.5) (i32.and - (local.get $48) + (local.get $27) (i32.eq (local.get $12) (local.get $49) @@ -4788,8 +4776,8 @@ (f64.const 9007199254740992) (i32.and (i32.div_u - (local.get $24) - (local.get $11) + (local.get $23) + (local.get $8) ) (i32.const 1) ) @@ -4800,19 +4788,19 @@ (if (i32.eq (i32.load8_s - (local.get $31) + (local.get $32) ) (i32.const 45) ) (block - (local.set $15 + (local.set $22 (f64.neg - (local.get $15) + (local.get $22) ) ) - (local.set $22 + (local.set $14 (f64.neg - (local.get $22) + (local.get $14) ) ) ) @@ -4822,7 +4810,7 @@ (local.get $5) (local.tee $12 (i32.sub - (local.get $24) + (local.get $23) (local.get $12) ) ) @@ -4831,7 +4819,7 @@ (f64.eq (f64.add (local.get $22) - (local.get $15) + (local.get $14) ) (local.get $22) ) @@ -4840,7 +4828,7 @@ (local.get $5) (local.tee $6 (i32.add - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -4898,7 +4886,7 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $21) + (local.get $19) (local.get $4) ) (i32.const 2) @@ -4916,7 +4904,7 @@ (i32.const 10) ) ) - (local.set $11 + (local.set $8 (i32.const 10) ) (loop $while-in88 @@ -4929,9 +4917,9 @@ (br_if $while-in88 (i32.ge_u (local.get $12) - (local.tee $11 + (local.tee $8 (i32.mul - (local.get $11) + (local.get $8) (i32.const 10) ) ) @@ -4940,7 +4928,7 @@ ) ) ) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 @@ -4953,34 +4941,34 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $10) (i32.gt_u - (local.get $8) + (local.get $10) (local.get $4) ) ) ) (block (result i32) - (local.set $11 + (local.set $8 (local.get $4) ) (local.set $12 (local.get $6) ) - (local.get $8) + (local.get $10) ) ) ) - (local.set $8 + (local.set $23 (loop $while-in90 (result i32) (block $while-out89 (result i32) (if (i32.le_u (local.get $4) - (local.get $11) + (local.get $8) ) (block - (local.set $24 + (local.set $27 (i32.const 0) ) (br $while-out89 @@ -4990,7 +4978,7 @@ ) (if (result i32) (i32.load - (local.tee $6 + (local.tee $5 (i32.add (local.get $4) (i32.const -4) @@ -4998,14 +4986,14 @@ ) ) (block (result i32) - (local.set $24 + (local.set $27 (i32.const 1) ) (local.get $4) ) (block (local.set $4 - (local.get $6) + (local.get $5) ) (br $while-in90) ) @@ -5015,7 +5003,7 @@ ) (local.set $4 (if (result i32) - (local.get $32) + (local.get $37) (block $do-once91 (result i32) (local.set $6 (if (result i32) @@ -5023,9 +5011,9 @@ (i32.gt_s (local.tee $4 (i32.add - (local.get $17) + (local.get $18) (i32.xor - (local.get $37) + (local.get $38) (i32.const 1) ) ) @@ -5038,7 +5026,7 @@ ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.sub (i32.add (local.get $4) @@ -5048,49 +5036,44 @@ ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -1) ) ) (block (result i32) - (local.set $17 + (local.set $18 (i32.add (local.get $4) (i32.const -1) ) ) (i32.add - (local.get $18) + (local.get $17) (i32.const -2) ) ) ) ) - (if - (local.tee $4 - (i32.and - (local.get $10) - (i32.const 8) - ) - ) - (block - (local.set $21 - (local.get $4) - ) - (br $do-once91 - (local.get $17) + (drop + (br_if $do-once91 + (local.get $18) + (local.tee $10 + (i32.and + (local.get $11) + (i32.const 8) + ) ) ) ) (if - (local.get $24) + (local.get $27) (block $do-once93 (if (i32.eqz - (local.tee $18 + (local.tee $10 (i32.load (i32.add - (local.get $8) + (local.get $23) (i32.const -4) ) ) @@ -5106,7 +5089,7 @@ (local.set $4 (if (result i32) (i32.rem_u - (local.get $18) + (local.get $10) (i32.const 10) ) (block @@ -5133,7 +5116,7 @@ (br_if $while-in96 (i32.eqz (i32.rem_u - (local.get $18) + (local.get $10) (local.tee $5 (i32.mul (local.get $5) @@ -5154,8 +5137,8 @@ (i32.mul (i32.shr_s (i32.sub - (local.get $8) - (local.get $21) + (local.get $23) + (local.get $19) ) (i32.const 2) ) @@ -5173,11 +5156,11 @@ (i32.const 102) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5194,17 +5177,17 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.const 0) ) (select - (local.get $17) + (local.get $18) (local.tee $4 (select (i32.const 0) @@ -5224,7 +5207,7 @@ ) ) (i32.lt_s - (local.get $17) + (local.get $18) (local.get $4) ) ) @@ -5232,16 +5215,16 @@ ) ) (block (result i32) - (local.set $21 + (local.set $10 (i32.and - (local.get $10) + (local.get $11) (i32.const 8) ) ) (local.set $6 - (local.get $18) + (local.get $17) ) - (local.get $17) + (local.get $18) ) ) ) @@ -5254,11 +5237,11 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.tee $12 (i32.add (if (result i32) - (local.tee $17 + (local.tee $19 (i32.eq (i32.or (local.get $6) @@ -5268,7 +5251,7 @@ ) ) (block (result i32) - (local.set $18 + (local.set $17 (i32.const 0) ) (select @@ -5284,7 +5267,7 @@ (if (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.tee $5 (call $_fmt_u (local.tee $5 @@ -5326,7 +5309,7 @@ (br_if $while-in98 (i32.lt_s (i32.sub - (local.get $27) + (local.get $28) (local.get $5) ) (i32.const 2) @@ -5351,7 +5334,7 @@ ) ) (i32.store8 - (local.tee $18 + (local.tee $17 (i32.add (local.get $5) (i32.const -2) @@ -5360,8 +5343,8 @@ (local.get $6) ) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) ) ) @@ -5374,10 +5357,10 @@ (local.get $4) ) (i32.ne - (local.tee $32 + (local.tee $18 (i32.or (local.get $4) - (local.get $21) + (local.get $10) ) ) (i32.const 0) @@ -5385,7 +5368,7 @@ ) ) ) - (local.get $10) + (local.get $11) ) (if (i32.eqz @@ -5397,7 +5380,7 @@ ) ) (call $___fwritex - (local.get $31) + (local.get $32) (local.get $26) (local.get $0) ) @@ -5405,23 +5388,23 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (if - (local.get $17) + (local.get $19) (block (local.set $5 - (local.tee $11 + (local.tee $8 (select (local.get $7) - (local.get $11) + (local.get $8) (i32.gt_u - (local.get $11) + (local.get $8) (local.get $7) ) ) @@ -5434,20 +5417,20 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) (block $do-once103 (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (br_if $do-once103 (i32.ne (local.get $6) - (local.get $30) + (local.get $31) ) ) (i32.store8 @@ -5462,7 +5445,7 @@ (br_if $do-once103 (i32.le_u (local.get $6) - (local.get $23) + (local.get $21) ) ) (loop $while-in106 @@ -5478,7 +5461,7 @@ (br_if $while-in106 (i32.gt_u (local.get $6) - (local.get $23) + (local.get $21) ) ) ) @@ -5497,7 +5480,7 @@ (call $___fwritex (local.get $6) (i32.sub - (local.get $41) + (local.get $42) (local.get $6) ) (local.get $0) @@ -5522,7 +5505,7 @@ ) ) (if - (local.get $32) + (local.get $18) (if (i32.eqz (i32.and @@ -5547,7 +5530,7 @@ (i32.and (i32.lt_u (local.get $6) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5563,10 +5546,10 @@ (local.get $6) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $23) + (local.get $21) ) (loop $while-in112 (i32.store8 @@ -5581,7 +5564,7 @@ (br_if $while-in112 (i32.gt_u (local.get $5) - (local.get $23) + (local.get $21) ) ) ) @@ -5623,7 +5606,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $23) ) (i32.gt_s (local.get $4) @@ -5648,14 +5631,14 @@ ) ) (block $do-once99 - (local.set $8 + (local.set $19 (select - (local.get $8) + (local.get $23) (i32.add - (local.get $11) + (local.get $8) (i32.const 4) ) - (local.get $24) + (local.get $27) ) ) (call $_pad @@ -5668,13 +5651,13 @@ (i32.const -1) ) (block (result i32) - (local.set $17 + (local.set $10 (i32.eqz - (local.get $21) + (local.get $10) ) ) (local.set $5 - (local.get $11) + (local.get $8) ) (local.set $6 (local.get $4) @@ -5688,10 +5671,10 @@ (local.get $5) ) (i32.const 0) - (local.get $30) + (local.get $31) ) ) - (local.get $30) + (local.get $31) ) (block (i32.store8 @@ -5707,7 +5690,7 @@ (if (i32.eq (local.get $5) - (local.get $11) + (local.get $8) ) (block (if @@ -5744,7 +5727,7 @@ (local.get $6) (i32.const 1) ) - (local.get $17) + (local.get $10) ) ) ) @@ -5758,7 +5741,7 @@ (br_if $do-once115 (i32.le_u (local.get $4) - (local.get $23) + (local.get $21) ) ) (loop $while-in118 @@ -5774,7 +5757,7 @@ (br_if $while-in118 (i32.gt_u (local.get $4) - (local.get $23) + (local.get $21) ) ) ) @@ -5783,7 +5766,7 @@ ) (local.set $7 (i32.sub - (local.get $41) + (local.get $42) (local.get $4) ) ) @@ -5818,7 +5801,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $19) ) (i32.gt_s (local.tee $6 @@ -5850,10 +5833,10 @@ ) ) (call $___fwritex - (local.get $18) + (local.get $17) (i32.sub - (local.get $27) - (local.get $18) + (local.get $28) + (local.get $17) ) (local.get $0) ) @@ -5862,19 +5845,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $12) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) + (local.get $15) (local.get $12) (i32.lt_s (local.get $12) - (local.get $14) + (local.get $15) ) ) ) @@ -5882,17 +5865,17 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.tee $6 + (local.get $15) + (local.tee $4 (i32.add - (local.tee $8 + (local.tee $6 (select (i32.const 0) (local.get $26) (local.tee $5 (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) ) ) @@ -5910,7 +5893,7 @@ (local.tee $7 (i32.ne (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) (i32.const 0) @@ -5930,18 +5913,18 @@ (i32.and (if (result i32) (i32.and - (local.tee $4 + (local.tee $7 (i32.load (local.get $0) ) ) (i32.const 32) ) - (local.get $4) + (local.get $7) (block (result i32) (call $___fwritex - (local.get $31) - (local.get $8) + (local.get $32) + (local.get $6) (local.get $0) ) (i32.load @@ -5961,19 +5944,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $4) (i32.lt_s - (local.get $6) - (local.get $14) + (local.get $4) + (local.get $15) ) ) ) @@ -5983,26 +5966,26 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) - (local.set $11 + (local.set $8 (local.get $5) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 - (local.get $25) + (local.get $24) ) ) (local.set $8 (i32.and - (local.get $18) + (local.get $17) (i32.const 32) ) ) @@ -6014,7 +5997,7 @@ (local.get $13) ) ) - (local.tee $10 + (local.tee $11 (i32.load offset=4 (local.get $13) ) @@ -6022,7 +6005,7 @@ ) (block (result i32) (local.set $7 - (local.get $25) + (local.get $24) ) (local.set $6 (loop $while-in123 (result i32) @@ -6051,11 +6034,11 @@ (local.tee $6 (call $_bitshift64Lshr (local.get $6) - (local.get $10) + (local.get $11) (i32.const 4) ) ) - (local.tee $10 + (local.tee $11 (global.get $tempRet0) ) ) @@ -6083,16 +6066,16 @@ ) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) ) (block (result i32) - (local.set $8 + (local.set $10 (i32.add (i32.shr_s - (local.get $18) + (local.get $17) (i32.const 4) ) (i32.const 4091) @@ -6104,9 +6087,9 @@ ) (block (result i32) (local.set $6 - (local.get $25) + (local.get $24) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (i32.const 0) @@ -6119,15 +6102,15 @@ (call $_fmt_u (local.get $4) (local.get $6) - (local.get $25) + (local.get $24) ) ) (local.set $4 - (local.get $10) + (local.get $11) ) (br $__rjti$8) ) - (local.set $18 + (local.set $17 (i32.eqz (local.tee $12 (call $_memchr @@ -6137,10 +6120,10 @@ ) ) ) - (local.set $10 + (local.set $11 (local.get $7) ) - (local.set $11 + (local.set $8 (select (local.get $5) (i32.sub @@ -6149,13 +6132,13 @@ (local.get $6) ) ) - (local.get $18) + (local.get $17) ) ) (local.set $7 (i32.const 0) ) - (local.set $8 + (local.set $10 (i32.const 4091) ) (br $__rjto$8 @@ -6165,7 +6148,7 @@ (local.get $5) ) (local.get $12) - (local.get $18) + (local.get $17) ) ) ) @@ -6245,9 +6228,9 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $14) + (local.get $15) (local.get $4) - (local.get $10) + (local.get $11) ) (if (result i32) (local.get $4) @@ -6327,7 +6310,7 @@ ) ) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6336,17 +6319,17 @@ ) (local.set $9 (select - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) (i32.gt_s - (local.get $14) - (local.get $6) + (local.get $15) + (local.get $5) ) ) ) (br $label$continue$L1) ) - (local.set $10 + (local.set $11 (select (i32.and (local.get $4) @@ -6362,7 +6345,7 @@ (if (result i32) (i32.or (local.get $5) - (local.tee $4 + (local.tee $8 (i32.or (i32.ne (i32.load @@ -6380,24 +6363,21 @@ ) ) (block (result i32) - (local.set $11 + (local.set $8 (select (local.get $5) (local.tee $6 (i32.add - (i32.xor - (i32.and - (local.get $4) - (i32.const 1) - ) - (i32.const 1) - ) (i32.sub - (local.get $38) + (local.get $39) (local.tee $4 (local.get $6) ) ) + (i32.xor + (local.get $8) + (i32.const 1) + ) ) ) (i32.gt_s @@ -6406,14 +6386,14 @@ ) ) ) - (local.get $25) + (local.get $24) ) (block (result i32) - (local.set $11 + (local.set $8 (i32.const 0) ) (local.tee $4 - (local.get $25) + (local.get $24) ) ) ) @@ -6421,9 +6401,9 @@ (local.get $4) ) ) - (local.get $11) + (local.get $8) (i32.lt_s - (local.get $11) + (local.get $8) (local.get $12) ) ) @@ -6431,15 +6411,15 @@ (local.get $7) ) ) - (local.get $14) + (local.get $15) (i32.lt_s - (local.get $14) - (local.get $5) + (local.get $15) + (local.get $6) ) ) ) - (local.get $5) - (local.get $10) + (local.get $6) + (local.get $11) ) (if (i32.eqz @@ -6451,7 +6431,7 @@ ) ) (call $___fwritex - (local.get $8) + (local.get $10) (local.get $7) (local.get $0) ) @@ -6459,17 +6439,17 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 65536) ) ) (call $_pad (local.get $0) (i32.const 48) - (local.get $11) + (local.get $8) (local.get $12) (i32.const 0) ) @@ -6491,10 +6471,10 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $6) (local.get $5) + (local.get $6) (i32.xor - (local.get $10) + (local.get $11) (i32.const 8192) ) ) @@ -6502,7 +6482,7 @@ (local.get $9) ) (local.set $9 - (local.get $6) + (local.get $5) ) (br $label$continue$L1) ) @@ -6515,7 +6495,7 @@ ) (local.set $16 (if (result i32) - (local.get $19) + (local.get $25) (block (result i32) (local.set $0 (i32.const 1) @@ -6608,7 +6588,7 @@ ) ) (global.set $STACKTOP - (local.get $28) + (local.get $29) ) (local.get $16) ) diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm index dbf763a92..349fddb52 100644 --- a/test/memorygrowth.fromasm +++ b/test/memorygrowth.fromasm @@ -103,14 +103,7 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local.set $25 + (local.set $18 (global.get $r) ) (global.set $r @@ -119,1245 +112,1210 @@ (i32.const 16) ) ) - (local.set $13 - (local.get $25) - ) - (local.set $3 - (if (result i32) - (i32.lt_u - (local.get $0) - (i32.const 245) - ) - (block (result i32) - (if - (i32.and - (local.tee $1 - (i32.shr_u - (local.tee $4 - (i32.load - (i32.const 1208) - ) + (if + (i32.lt_u + (local.get $0) + (i32.const 245) + ) + (block + (if + (i32.and + (local.tee $10 + (i32.shr_u + (local.tee $12 + (i32.load + (i32.const 1208) ) - (local.tee $0 - (i32.shr_u - (local.tee $2 - (select - (i32.const 16) - (i32.and - (i32.add - (local.get $0) - (i32.const 11) - ) - (i32.const -8) - ) - (i32.lt_u + ) + (local.tee $2 + (i32.shr_u + (local.tee $4 + (select + (i32.const 16) + (i32.and + (i32.add (local.get $0) (i32.const 11) ) + (i32.const -8) + ) + (i32.lt_u + (local.get $0) + (i32.const 11) ) ) - (i32.const 3) ) + (i32.const 3) ) ) ) - (i32.const 3) ) - (block - (local.set $1 - (local.tee $6 + (i32.const 3) + ) + (block + (local.set $0 + (i32.load + (local.tee $2 (i32.add - (i32.shl - (local.tee $3 - (i32.add - (local.get $0) - (i32.xor - (i32.and - (local.get $1) - (i32.const 1) + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $2) + (i32.xor + (i32.and + (local.get $10) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) ) - (i32.const 1) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.get $6) - (local.tee $8 - (i32.load - (local.tee $2 - (i32.add - (local.tee $14 - (i32.load offset=8 - (local.get $1) - ) - ) - (i32.const 8) - ) - ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) ) + (i32.const -1) ) + (local.get $12) ) - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) + ) + (block + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (local.get $4) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $8) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $4) + (i32.load offset=12 + (local.get $0) ) - (call $qa) ) - (local.set $0 - (local.get $8) - ) - (if - (i32.eq - (local.get $14) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $0) + (local.get $1) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $1) - (local.get $8) - ) + (i32.store offset=8 + (local.get $1) + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.tee $8 - (i32.shl - (local.get $3) - (i32.const 3) - ) + ) + (i32.store offset=4 + (local.get $4) + (i32.or + (local.tee $0 + (i32.shl + (local.get $3) + (i32.const 3) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $2) + (i32.const 1) ) ) - ) - (if (result i32) - (i32.gt_u + (global.set $r + (local.get $18) + ) + (return (local.get $2) - (local.tee $18 - (i32.load - (i32.const 1216) - ) + ) + ) + ) + (if + (i32.gt_u + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1216) ) ) - (block (result i32) - (if - (local.get $1) - (block - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $8 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.tee $6 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $8 - (i32.shl - (i32.const 2) - (local.get $0) - ) + ) + (block + (if + (local.get $10) + (block + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.shl + (i32.const 2) + (local.get $2) ) ) - (local.get $8) - ) - (i32.shl - (local.get $1) - (local.get $0) ) + (local.get $1) + ) + (i32.shl + (local.get $10) + (local.get $2) ) ) ) - (local.get $6) ) - (i32.const -1) + (local.get $1) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $8 - (i32.and - (i32.shr_u - (local.tee $7 - (i32.shr_u - (local.get $8) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $7 - (i32.and - (i32.shr_u - (local.tee $10 - (i32.shr_u - (local.get $7) - (local.get $8) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $10 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $10) - (local.get $7) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $5) + (local.get $2) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $8 - (local.tee $3 + ) + (local.set $1 + (i32.load + (local.tee $6 (i32.add - (i32.shl - (local.tee $16 - (i32.add - (i32.or - (local.tee $3 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.shr_u - (local.get $3) - (local.get $10) + (local.tee $2 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $5 + (i32.add + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $7) + (local.get $5) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $5) + (i32.or + (local.get $2) + (i32.or + (local.get $1) + (local.get $3) + ) + ) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $10) - (i32.or - (local.get $7) - (i32.or - (local.get $6) - (local.get $8) + (i32.shr_u + (local.get $7) + (local.get $6) + ) ) ) + (i32.const 3) ) - ) - (i32.shr_u - (local.get $14) - (local.get $3) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.tee $6 - (i32.load - (local.tee $7 - (i32.add - (local.tee $10 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) + ) + (if + (i32.eq + (local.get $1) + (local.get $3) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $5) ) + (i32.const -1) ) + (local.get $12) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $16) - ) - (i32.const -1) - ) - (local.get $4) + (local.set $13 + (local.get $0) + ) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) ) ) - (local.set $34 - (local.get $18) - ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $1) ) - (call $qa) - ) - (local.set $0 - (local.get $6) ) - (if - (i32.eq - (local.get $10) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $3) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $8) - (local.get $6) - ) - (local.set $34 - (i32.load - (i32.const 1216) - ) + (i32.store offset=8 + (local.get $3) + (local.get $1) + ) + (local.set $13 + (i32.load + (i32.const 1216) ) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $10) - (i32.or + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.store offset=4 + (local.tee $7 + (i32.add (local.get $2) - (i32.const 3) + (local.get $4) ) ) - (i32.store offset=4 - (local.tee $14 - (i32.add - (local.get $2) - (local.get $10) - ) - ) - (i32.or - (local.tee $6 - (i32.sub - (i32.shl - (local.get $16) - (i32.const 3) - ) - (local.get $2) + (i32.or + (local.tee $2 + (i32.sub + (i32.shl + (local.get $5) + (i32.const 3) ) + (local.get $4) ) - (i32.const 1) ) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $6) - (local.get $14) - ) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $7) ) - (if - (local.get $34) - (block - (local.set $3 - (i32.load - (i32.const 1228) - ) + (local.get $2) + ) + (if + (local.get $13) + (block + (local.set $3 + (i32.load + (i32.const 1228) ) - (local.set $4 - (i32.add - (i32.shl - (local.tee $18 - (i32.shr_u - (local.get $34) - (i32.const 3) - ) + ) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $13) + (i32.const 3) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 3) ) + (i32.const 1248) ) - (if - (i32.and - (local.tee $0 - (i32.load - (i32.const 1208) - ) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) ) - (local.tee $1 - (i32.shl - (i32.const 1) - (local.get $18) - ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) ) ) - (if - (i32.lt_u - (local.tee $0 - (i32.load - (local.tee $1 - (i32.add - (local.get $4) - (i32.const 8) - ) + ) + (if + (i32.lt_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $40 - (local.get $1) - ) - (local.set $35 - (local.get $0) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $0) - (local.get $1) - ) - ) - (local.set $40 - (i32.add - (local.get $4) - (i32.const 8) - ) + (local.set $20 + (local.get $1) ) - (local.set $35 + (local.set $8 (local.get $4) ) ) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $4) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $20 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $8 + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $14) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $7) + (i32.store + (local.get $20) + (local.get $3) + ) + (i32.store offset=12 + (local.get $8) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $8) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) ) + (i32.store + (i32.const 1216) + (local.get $2) + ) + (i32.store + (i32.const 1228) + (local.get $7) + ) + (global.set $r + (local.get $18) + ) + (return + (local.get $6) + ) ) - (if (result i32) - (local.tee $14 - (i32.load - (i32.const 1212) - ) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1212) ) - (block - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $14) - ) - (local.get $14) + ) + (block + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $6) - (local.get $14) - ) + ) + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.shr_u + (local.get $1) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $4) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $3 - (i32.and - (i32.shr_u - (local.tee $0 - (i32.shr_u - (local.get $3) - (local.get $4) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $0 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $18 - (i32.load - (i32.add - (i32.shl - (i32.add - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $0) - (local.get $3) - ) + ) + (local.set $7 + (i32.sub + (i32.and + (i32.load offset=4 + (local.tee $0 + (i32.load + (i32.add + (i32.shl + (i32.add + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $8) + (local.get $2) ) - (i32.const 1) ) (i32.const 1) ) + (i32.const 1) ) + ) + (i32.or + (local.get $2) (i32.or (local.get $3) (i32.or - (local.get $4) - (i32.or - (local.get $6) - (local.get $14) - ) + (local.get $0) + (local.get $1) ) ) ) - (i32.shr_u - (local.get $1) - (local.get $0) - ) ) - (i32.const 2) + (i32.shr_u + (local.get $8) + (local.get $7) + ) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (i32.const -8) ) - (local.get $2) - ) - ) - (local.set $3 - (local.tee $1 - (local.get $18) + (i32.const -8) ) + (local.get $4) ) - (loop $while-in - (block $while-out - (local.set $4 - (i32.lt_u - (local.tee $18 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.load offset=16 - (local.get $1) - ) - ) - (local.get $18) - (if (result i32) - (local.tee $4 - (i32.load offset=20 - (local.get $1) - ) - ) - (local.get $4) - (block - (local.set $6 - (local.get $0) - ) - (local.set $9 - (local.get $3) - ) - (br $while-out) - ) - ) - ) - ) - ) - (i32.const -8) - ) - (local.get $2) - ) - ) + ) + (local.set $9 + (local.get $0) + ) + (loop $while-in + (block $while-out + (if + (local.tee $1 + (i32.load offset=16 (local.get $0) ) ) (local.set $0 - (select - (local.get $18) - (local.get $0) - (local.get $4) - ) + (local.get $1) ) - (local.set $3 - (select - (local.get $1) - (local.get $3) - (local.get $4) + (if + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $0) + ) + ) + ) + (block + (local.set $8 + (local.get $9) + ) + (br $while-out) ) ) - (br $while-in) ) - ) - (if - (i32.lt_u - (local.get $9) - (local.tee $3 - (i32.load - (i32.const 1224) + (local.set $1 + (i32.lt_u + (local.tee $3 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) + ) + (local.get $4) + ) ) + (local.get $7) ) ) - (call $qa) + (local.set $7 + (select + (local.get $3) + (local.get $7) + (local.get $1) + ) + ) + (local.set $9 + (select + (local.get $0) + (local.get $9) + (local.get $1) + ) + ) + (br $while-in) ) - (if - (i32.ge_u - (local.get $9) - (local.tee $1 - (i32.add - (local.get $2) - (local.get $9) - ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $14 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (local.set $0 - (i32.load offset=24 - (local.get $9) + (call $qa) + ) + (if + (i32.ge_u + (local.get $8) + (local.tee $12 + (i32.add + (local.get $4) + (local.get $8) + ) ) ) - (if - (i32.eq - (local.tee $7 - (i32.load offset=12 - (local.get $9) - ) + (call $qa) + ) + (local.set $10 + (i32.load offset=24 + (local.get $8) + ) + ) + (if + (i32.eq + (local.get $8) + (local.tee $0 + (i32.load offset=12 + (local.get $8) ) - (local.get $9) ) - (block $do-once4 - (if - (local.tee $16 + ) + (block $do-once4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $9) + (local.get $8) (i32.const 20) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.tee $18 - (i32.load - (local.tee $4 - (i32.add - (local.get $9) - (i32.const 16) - ) - ) - ) - ) - ) - ) ) - (loop $while-in7 - (if - (local.tee $16 + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $18) - (i32.const 20) + (local.get $8) + (i32.const 16) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) - ) ) - (if - (local.tee $16 - (i32.load - (local.tee $10 - (i32.add - (local.get $18) - (i32.const 16) - ) + ) + ) + (loop $while-in7 + (if + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) + ) + (block + (local.set $0 + (local.get $2) ) + (local.set $1 + (local.get $3) + ) + (br $while-in7) ) ) (if - (i32.lt_u - (local.get $4) - (local.get $3) + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) ) - (call $qa) (block - (i32.store - (local.get $4) - (i32.const 0) + (local.set $0 + (local.get $2) ) - (local.set $23 - (local.get $18) + (local.set $1 + (local.get $3) ) + (br $while-in7) ) ) ) - (block - (if - (i32.lt_u - (local.tee $10 - (i32.load offset=8 - (local.get $9) - ) - ) - (local.get $3) - ) - (call $qa) + (if + (i32.lt_u + (local.get $1) + (local.get $14) ) - (local.set $8 - (local.get $10) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $5 + (local.get $0) + ) ) - (if - (i32.ne - (local.get $9) - (i32.load offset=12 + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 (local.get $8) ) ) - (call $qa) + (local.get $14) ) - (local.set $4 - (local.get $7) + (call $qa) + ) + (if + (i32.ne + (local.get $8) + (i32.load offset=12 + (local.get $1) + ) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=8 - (local.get $4) - ) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=8 + (local.get $0) ) - (block - (i32.store offset=12 - (local.get $8) - (local.get $7) - ) - (i32.store offset=8 - (local.get $4) - (local.get $10) - ) - (local.set $23 - (local.get $7) - ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $5 + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (if - (local.get $0) - (block $do-once8 - (if - (i32.eq - (i32.load - (local.tee $3 - (i32.add - (i32.shl - (local.tee $7 - (i32.load offset=28 - (local.get $9) - ) + ) + (if + (local.get $10) + (block $do-once8 + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) - (local.get $9) ) - (block - (i32.store - (local.get $3) - (local.get $23) + (local.get $8) + ) + (block + (i32.store + (local.get $1) + (local.get $5) + ) + (if + (i32.eqz + (local.get $5) ) - (if - (i32.eqz - (local.get $23) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $7) - ) - (i32.const -1) + (block + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (br $do-once8) ) + (br $do-once8) ) ) - (block - (if - (i32.lt_u - (local.get $0) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 1224) ) - (call $qa) - ) - (local.set $4 - (local.get $0) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $4) - (local.get $23) - ) - (i32.store offset=20 - (local.get $0) - (local.get $23) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=16 + (local.get $10) ) ) - (br_if $do-once8 - (i32.eqz - (local.get $23) - ) + (i32.store offset=16 + (local.get $10) + (local.get $5) + ) + (i32.store offset=20 + (local.get $10) + (local.get $5) + ) + ) + (br_if $do-once8 + (i32.eqz + (local.get $5) ) ) ) - (if - (i32.lt_u - (local.get $23) - (local.tee $7 - (i32.load - (i32.const 1224) - ) + ) + (if + (i32.lt_u + (local.get $5) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (i32.store offset=24 - (local.get $23) - (local.get $0) + (call $qa) + ) + (i32.store offset=24 + (local.get $5) + (local.get $10) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $8) + ) ) (if - (local.tee $3 - (i32.load offset=16 - (local.get $9) - ) + (i32.lt_u + (local.get $0) + (local.get $1) ) - (if - (i32.lt_u - (local.get $3) - (local.get $7) + (call $qa) + (block + (i32.store offset=16 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=16 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $8) + ) + ) (if - (local.tee $3 - (i32.load offset=20 - (local.get $9) + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) ) - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) - ) + (call $qa) + (block + (i32.store offset=20 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=20 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) ) ) - (if - (i32.lt_u - (local.get $6) - (i32.const 16) - ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.tee $0 - (i32.add - (local.get $2) - (local.get $6) - ) + ) + (if + (i32.lt_u + (local.get $7) + (i32.const 16) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.tee $0 + (i32.add + (local.get $4) + (local.get $7) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) - (local.get $9) + (local.get $8) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) + (i32.const 1) ) ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $2) - (i32.const 3) - ) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.get $4) + (i32.const 3) ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $6) - (i32.const 1) - ) + ) + (i32.store offset=4 + (local.get $12) + (i32.or + (local.get $7) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $1) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $7) + (local.get $12) + ) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1216) ) - (local.get $6) ) - (if - (local.tee $3 + (block + (local.set $3 (i32.load - (i32.const 1216) + (i32.const 1228) ) ) - (block - (local.set $0 - (i32.load - (i32.const 1228) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 1248) ) - (local.set $3 - (i32.add + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 (i32.shl - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) - ) - (i32.const 3) + (i32.const 1) + (local.get $1) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (local.tee $4 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $10 (i32.load - (i32.const 1208) - ) - ) - ) - (if - (i32.lt_u - (local.tee $10 - (i32.load - (local.tee $4 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $41 - (local.get $4) - ) - (local.set $27 - (local.get $10) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $4) - (local.get $10) - ) - ) - (local.set $41 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.set $21 + (local.get $1) ) - (local.set $27 - (local.get $3) + (local.set $6 + (local.get $4) ) ) ) - (i32.store - (local.get $41) - (local.get $0) - ) - (i32.store offset=12 - (local.get $27) - (local.get $0) - ) - (i32.store offset=8 - (local.get $0) - (local.get $27) - ) - (i32.store offset=12 - (local.get $0) - (local.get $3) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $21 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $6 + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $1) + (i32.store + (local.get $21) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $6) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $9) - (i32.const 8) + (i32.store + (i32.const 1216) + (local.get $7) + ) + (i32.store + (i32.const 1228) + (local.get $12) ) ) ) - (local.get $2) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $8) + (i32.const 8) + ) + ) ) ) - (local.get $2) ) ) + ) + (local.set $4 (if (result i32) (i32.gt_u (local.get $0) @@ -1365,9 +1323,9 @@ ) (i32.const -1) (block $do-once (result i32) - (local.set $0 + (local.set $8 (i32.and - (local.tee $3 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1377,123 +1335,124 @@ ) ) (if (result i32) - (local.tee $10 + (local.tee $39 (i32.load (i32.const 1212) ) ) (block (result i32) - (local.set $4 - (i32.sub - (i32.const 0) - (local.get $0) - ) - ) - (if - (local.tee $14 - (i32.load - (i32.add - (i32.shl - (local.tee $27 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $0) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $16 - (i32.shl - (local.get $7) - (local.tee $3 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) - ) + (local.set $21 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $8) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $0) + (local.tee $5 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $0) - (i32.add - (local.tee $14 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $16 - (i32.and - (i32.shr_u - (i32.add - (local.tee $18 - (i32.shl - (local.get $16) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) - ) - ) - (i32.or - (local.get $3) - (local.get $7) + ) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $8) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $13 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $6) + (local.get $0) ) ) + (i32.const 245760) ) - (i32.shr_u - (i32.shl - (local.get $18) - (local.get $16) - ) - (i32.const 15) - ) + (i32.const 16) ) + (i32.const 2) ) - (i32.const 7) + ) + (i32.or + (local.get $0) + (local.get $5) ) ) - (i32.const 1) ) - (i32.shl - (local.get $14) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $6) + (local.get $13) + ) + (i32.const 15) ) ) ) + (i32.const 7) ) - (i32.const 0) ) + (i32.const 1) ) + (i32.shl + (local.get $0) + (i32.const 1) + ) + ) + ) + ) + (i32.const 0) + ) + ) + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $8) + ) + ) + (if + (local.tee $6 + (i32.load + (i32.add + (i32.shl + (local.get $21) (i32.const 2) ) (i32.const 1512) @@ -1501,107 +1460,100 @@ ) ) (block $label$break$a - (local.set $16 - (local.get $4) - ) - (local.set $18 - (i32.const 0) - ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $0) + (local.get $8) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $27) + (local.get $21) (i32.const 1) ) ) (i32.eq - (local.get $27) + (local.get $21) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $14) + (local.set $5 + (i32.const 0) ) - (local.set $1 + (local.set $10 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $14 + (local.tee $13 (i32.sub - (local.tee $2 + (local.tee $25 (i32.and (i32.load offset=4 - (local.get $7) + (local.get $6) ) (i32.const -8) ) ) - (local.get $0) + (local.get $8) ) ) - (local.get $16) + (local.get $0) ) - (local.set $16 + (local.set $0 (if (result i32) (i32.eq - (local.get $0) - (local.get $2) + (local.get $8) + (local.get $25) ) (block - (local.set $30 - (local.get $14) + (local.set $4 + (local.get $13) ) - (local.set $28 - (local.get $7) + (local.set $12 + (local.get $6) ) - (local.set $31 - (local.get $7) + (local.set $2 + (local.get $6) ) - (local.set $7 + (local.set $9 (i32.const 90) ) (br $label$break$a) ) (block (result i32) - (local.set $6 - (local.get $7) + (local.set $5 + (local.get $6) ) - (local.get $14) + (local.get $13) ) ) ) ) - (local.set $2 + (local.set $13 (select - (local.get $18) - (local.tee $14 + (local.get $20) + (local.tee $13 (i32.load offset=20 - (local.get $7) + (local.get $6) ) ) (i32.or (i32.eqz - (local.get $14) + (local.get $13) ) (i32.eq - (local.get $14) - (local.tee $7 + (local.tee $6 (i32.load (i32.add (i32.add - (local.get $7) + (local.get $6) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $3) + (local.get $9) (i32.const 31) ) (i32.const 2) @@ -1609,40 +1561,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $14 + (local.tee $25 (i32.eqz - (local.get $7) + (local.get $6) ) ) (block (result i32) - (local.set $36 - (local.get $16) + (local.set $19 + (local.get $13) ) - (local.set $32 - (local.get $6) + (local.set $22 + (local.get $5) ) - (local.set $7 + (local.set $9 (i32.const 86) ) - (local.get $2) + (local.get $0) ) (block - (local.set $18 - (local.get $2) + (local.set $20 + (local.get $13) ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $3) + (local.get $9) (i32.xor - (i32.and - (local.get $14) - (i32.const 1) - ) + (local.get $25) (i32.const 1) ) ) @@ -1654,126 +1604,127 @@ ) ) (block - (local.set $36 - (local.get $4) + (local.set $10 + (local.get $0) ) - (local.set $7 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 86) ) - (if - (local.tee $2 - (if (result i32) + (block + (if + (i32.eqz (i32.or - (local.get $1) - (local.get $32) + (local.get $19) + (local.get $22) ) - (local.get $1) - (block (result i32) - (drop - (br_if $do-once - (local.get $0) - (i32.eqz - (local.tee $4 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.shl - (i32.const 2) - (local.get $27) - ) + ) + (block + (drop + (br_if $do-once + (local.get $8) + (i32.eqz + (local.tee $0 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.shl + (i32.const 2) + (local.get $21) ) ) - (local.get $14) ) - (local.get $10) + (local.get $0) ) + (local.get $39) ) ) ) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $4) - ) - (local.get $4) + ) + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $2 - (i32.shr_u - (local.get $14) - (local.get $4) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $6 + (i32.shr_u + (local.get $5) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $2 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $2) - (local.get $14) - ) + ) + (local.set $6 + (i32.and + (i32.shr_u + (local.tee $13 + (i32.shr_u + (local.get $6) + (local.get $5) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $1 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.shr_u - (local.get $1) - (local.get $2) - ) + ) + (local.set $13 + (i32.and + (i32.shr_u + (local.tee $19 + (i32.shr_u + (local.get $13) + (local.get $6) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) + ) + (local.set $19 (i32.load (i32.add (i32.shl (i32.add (i32.or - (local.tee $6 + (local.tee $20 (i32.and (i32.shr_u - (local.tee $3 + (local.tee $19 (i32.shr_u - (local.get $6) - (local.get $1) + (local.get $19) + (local.get $13) ) ) (i32.const 1) @@ -1782,19 +1733,19 @@ ) ) (i32.or - (local.get $1) + (local.get $13) (i32.or - (local.get $2) + (local.get $6) (i32.or - (local.get $4) - (local.get $14) + (local.get $0) + (local.get $5) ) ) ) ) (i32.shr_u - (local.get $3) - (local.get $6) + (local.get $19) + (local.get $20) ) ) (i32.const 2) @@ -1805,131 +1756,119 @@ ) ) ) - (block - (local.set $30 - (local.get $36) - ) - (local.set $28 - (local.get $2) - ) - (local.set $31 - (local.get $32) - ) - (local.set $7 - (i32.const 90) - ) - ) - (block - (local.set $17 - (local.get $36) + (if + (local.get $19) + (block + (local.set $4 + (local.get $10) + ) + (local.set $12 + (local.get $19) + ) + (local.set $2 + (local.get $22) + ) + (local.set $9 + (i32.const 90) + ) ) - (local.set $12 - (local.get $32) + (block + (local.set $15 + (local.get $10) + ) + (local.set $11 + (local.get $22) + ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 90) - ) - (local.set $17 - (loop $while-in16 (result i32) - (local.set $7 - (i32.const 0) + (if (result i32) + (block (result i32) + (if + (i32.eq + (local.get $9) + (i32.const 90) ) - (local.set $3 - (i32.lt_u - (local.tee $6 - (i32.sub - (i32.and - (i32.load offset=4 - (local.get $28) + (local.set $11 + (loop $while-in16 (result i32) + (local.set $9 + (i32.const 0) + ) + (local.set $0 + (i32.lt_u + (local.tee $5 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $12) + ) + (i32.const -8) + ) + (local.get $8) ) - (i32.const -8) ) - (local.get $0) + (local.get $4) ) ) - (local.get $30) - ) - ) - (local.set $1 - (select - (local.get $6) - (local.get $30) - (local.get $3) - ) - ) - (local.set $6 - (select - (local.get $28) - (local.get $31) - (local.get $3) - ) - ) - (if - (local.tee $3 - (i32.load offset=16 - (local.get $28) - ) - ) - (block - (local.set $30 - (local.get $1) - ) - (local.set $28 - (local.get $3) - ) - (local.set $31 - (local.get $6) + (local.set $4 + (select + (local.get $5) + (local.get $4) + (local.get $0) + ) ) - (br $while-in16) - ) - ) - (if (result i32) - (local.tee $28 - (i32.load offset=20 - (local.get $28) + (local.set $2 + (select + (local.get $12) + (local.get $2) + (local.get $0) + ) ) - ) - (block - (local.set $30 - (local.get $1) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $12) + ) + ) + (block + (local.set $12 + (local.get $0) + ) + (br $while-in16) + ) ) - (local.set $31 - (local.get $6) + (br_if $while-in16 + (local.tee $12 + (i32.load offset=20 + (local.get $12) + ) + ) ) - (br $while-in16) - ) - (block (result i32) - (local.set $12 - (local.get $6) + (local.set $15 + (local.get $4) ) - (local.get $1) + (local.get $2) ) ) ) + (local.get $11) ) - ) - (if (result i32) - (local.get $12) (if (result i32) (i32.lt_u - (local.get $17) + (local.get $15) (i32.sub (i32.load (i32.const 1216) ) - (local.get $0) + (local.get $8) ) ) (block (if (i32.lt_u - (local.get $12) - (local.tee $10 + (local.get $11) + (local.tee $7 (i32.load (i32.const 1224) ) @@ -1939,104 +1878,98 @@ ) (if (i32.ge_u - (local.get $12) - (local.tee $6 + (local.get $11) + (local.tee $2 (i32.add - (local.get $0) - (local.get $12) + (local.get $8) + (local.get $11) ) ) ) (call $qa) ) - (local.set $1 + (local.set $5 (i32.load offset=24 - (local.get $12) + (local.get $11) ) ) (if (i32.eq - (local.tee $3 + (local.get $11) + (local.tee $0 (i32.load offset=12 - (local.get $12) + (local.get $11) ) ) - (local.get $12) ) (block $do-once17 - (local.set $3 - (if (result i32) - (local.tee $4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $18 - (local.get $4) - ) - (local.get $2) - ) - (if (result i32) - (local.tee $18 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $14 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 16) ) ) ) ) - (local.get $14) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) @@ -2044,17 +1977,17 @@ ) (if (i32.lt_u - (local.get $3) - (local.get $10) + (local.get $1) + (local.get $7) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $1) (i32.const 0) ) - (local.set $21 - (local.get $18) + (local.set $16 + (local.get $0) ) ) ) @@ -2062,48 +1995,42 @@ (block (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $12) + (local.get $11) ) ) - (local.get $10) + (local.get $7) ) (call $qa) ) - (local.set $16 - (local.get $2) - ) (if (i32.ne - (local.get $12) + (local.get $11) (i32.load offset=12 - (local.get $2) + (local.get $1) ) ) (call $qa) ) - (local.set $4 - (local.get $3) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=8 - (local.get $3) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $4) - (local.get $2) + (local.get $0) + (local.get $1) ) - (local.set $21 - (local.get $3) + (local.set $16 + (local.get $0) ) ) (call $qa) @@ -2111,17 +2038,17 @@ ) ) (if - (local.get $1) + (local.get $5) (block $do-once21 (if (i32.eq (i32.load - (local.tee $10 + (local.tee $1 (i32.add (i32.shl - (local.tee $3 + (local.tee $0 (i32.load offset=28 - (local.get $12) + (local.get $11) ) ) (i32.const 2) @@ -2130,16 +2057,16 @@ ) ) ) - (local.get $12) + (local.get $11) ) (block (i32.store - (local.get $10) - (local.get $21) + (local.get $1) + (local.get $16) ) (if (i32.eqz - (local.get $21) + (local.get $16) ) (block (i32.store @@ -2151,7 +2078,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $0) ) (i32.const -1) ) @@ -2164,43 +2091,40 @@ (block (if (i32.lt_u - (local.get $1) + (local.get $5) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=16 - (local.get $1) + (local.get $5) ) ) (i32.store offset=16 - (local.get $2) - (local.get $21) + (local.get $5) + (local.get $16) ) (i32.store offset=20 - (local.get $1) - (local.get $21) + (local.get $5) + (local.get $16) ) ) (br_if $do-once21 (i32.eqz - (local.get $21) + (local.get $16) ) ) ) ) (if (i32.lt_u - (local.get $21) - (local.tee $3 + (local.get $16) + (local.tee $1 (i32.load (i32.const 1224) ) @@ -2209,42 +2133,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $21) - (local.get $1) + (local.get $16) + (local.get $5) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=16 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) - (local.get $3) + (local.get $0) + (local.get $1) ) (call $qa) (block (i32.store offset=16 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=20 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) + (local.get $0) (i32.load (i32.const 1224) ) @@ -2252,12 +2176,12 @@ (call $qa) (block (i32.store offset=20 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) @@ -2266,30 +2190,29 @@ ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 16) ) (block (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.tee $1 + (local.tee $0 (i32.add - (local.get $0) - (local.get $17) + (local.get $8) + (local.get $15) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $1) - (local.get $12) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $11) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2300,42 +2223,42 @@ ) (block $do-once25 (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.get $0) + (local.get $8) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $2) (i32.or - (local.get $17) + (local.get $15) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $17) + (local.get $2) + (local.get $15) ) - (local.get $17) + (local.get $15) ) - (local.set $10 + (local.set $1 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 3) ) ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $10) + (local.get $1) (i32.const 3) ) (i32.const 1248) @@ -2343,25 +2266,25 @@ ) (if (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $10) - ) - ) - (local.tee $3 + (local.tee $4 (i32.load (i32.const 1208) ) ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) ) (if (i32.lt_u - (local.tee $3 + (local.tee $4 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -2373,11 +2296,11 @@ ) (call $qa) (block - (local.set $9 - (local.get $2) + (local.set $29 + (local.get $1) ) - (local.set $8 - (local.get $3) + (local.set $14 + (local.get $4) ) ) ) @@ -2385,70 +2308,70 @@ (i32.store (i32.const 1208) (i32.or - (local.get $2) - (local.get $3) + (local.get $1) + (local.get $4) ) ) - (local.set $9 + (local.set $29 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $8 - (local.get $1) + (local.set $14 + (local.get $0) ) ) ) (i32.store - (local.get $9) - (local.get $6) + (local.get $29) + (local.get $2) ) (i32.store offset=12 - (local.get $8) - (local.get $6) + (local.get $14) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $8) + (local.get $2) + (local.get $14) ) (i32.store offset=12 - (local.get $6) - (local.get $1) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $14 + (local.set $1 (i32.add (i32.shl - (local.tee $16 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $17) + (local.get $15) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $2 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $3 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2468,21 +2391,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $17) + (local.get $15) (i32.add - (local.tee $14 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $2 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $10 + (local.tee $4 (i32.shl - (local.get $2) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2493,15 +2416,15 @@ ) ) (i32.or + (local.get $0) (local.get $1) - (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $10) - (local.get $2) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2513,7 +2436,7 @@ (i32.const 1) ) (i32.shl - (local.get $14) + (local.get $0) (i32.const 1) ) ) @@ -2528,29 +2451,29 @@ ) ) (i32.store offset=28 - (local.get $6) - (local.get $16) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $6) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $6) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $2 + (local.tee $4 (i32.load (i32.const 1212) ) ) - (local.tee $10 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $16) + (local.get $0) ) ) ) @@ -2559,71 +2482,71 @@ (i32.store (i32.const 1212) (i32.or - (local.get $2) - (local.get $10) + (local.get $3) + (local.get $4) ) ) (i32.store - (local.get $14) - (local.get $6) + (local.get $1) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $14) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $10 + (local.set $3 (i32.shl - (local.get $17) + (local.get $15) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $16) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $16) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $2 + (local.set $0 (i32.load - (local.get $14) + (local.get $1) ) ) (if (i32.eq - (local.tee $7 + (local.tee $9 (loop $while-in28 (result i32) (block $while-out27 (result i32) (if (i32.eq - (local.get $17) + (local.get $15) (i32.and (i32.load offset=4 - (local.get $2) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $19 - (local.get $2) + (local.set $30 + (local.get $0) ) (br $while-out27 (i32.const 148) @@ -2631,17 +2554,17 @@ ) ) (if (result i32) - (local.tee $3 + (local.tee $1 (i32.load - (local.tee $14 + (local.tee $4 (i32.add (i32.add - (local.get $2) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $10) + (local.get $3) (i32.const 31) ) (i32.const 2) @@ -2651,23 +2574,23 @@ ) ) (block - (local.set $10 + (local.set $3 (i32.shl - (local.get $10) + (local.get $3) (i32.const 1) ) ) - (local.set $2 - (local.get $3) + (local.set $0 + (local.get $1) ) (br $while-in28) ) (block (result i32) - (local.set $22 - (local.get $14) + (local.set $31 + (local.get $4) ) - (local.set $15 - (local.get $2) + (local.set $40 + (local.get $0) ) (i32.const 145) ) @@ -2679,7 +2602,7 @@ ) (if (i32.lt_u - (local.get $22) + (local.get $31) (i32.load (i32.const 1224) ) @@ -2687,123 +2610,120 @@ (call $qa) (block (i32.store - (local.get $22) - (local.get $6) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $15) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $19) - ) - (if - (i32.and - (i32.ge_u - (local.tee $10 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $3 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $30) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $3) + (local.tee $4 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $10) - (local.get $6) - ) - (i32.store offset=8 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $6) - (local.get $10) - ) - (i32.store offset=12 - (local.get $6) - (local.get $19) - ) - (i32.store offset=24 - (local.get $6) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $30) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) ) - (call $qa) ) + (call $qa) ) ) ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (return (i32.add - (local.get $12) + (local.get $11) (i32.const 8) ) ) ) - (local.get $0) + (local.get $8) ) - (local.get $0) + (local.get $8) ) ) - (local.get $0) + (local.get $8) ) ) ) ) ) - (block $folding-inner0 + (block $folding-inner1 (if (i32.ge_u - (local.tee $12 + (local.tee $2 (i32.load (i32.const 1216) ) ) - (local.get $3) + (local.get $4) ) (block - (local.set $15 + (local.set $0 (i32.load (i32.const 1228) ) ) (if (i32.gt_u - (local.tee $19 + (local.tee $1 (i32.sub - (local.get $12) - (local.get $3) + (local.get $2) + (local.get $4) ) ) (i32.const 15) @@ -2811,35 +2731,35 @@ (block (i32.store (i32.const 1228) - (local.tee $22 + (local.tee $3 (i32.add - (local.get $3) - (local.get $15) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 1216) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $22) + (local.get $3) (i32.or - (local.get $19) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $19) - (local.get $22) + (local.get $1) + (local.get $3) ) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $3) + (local.get $4) (i32.const 3) ) ) @@ -2854,1987 +2774,1914 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $12) + (local.get $2) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $12) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $2) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) ) ) ) - (br $folding-inner0) + (br $folding-inner1) ) ) - (if - (i32.gt_u - (local.tee $15 - (i32.load - (i32.const 1220) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1220) - (local.tee $19 - (i32.sub - (local.get $15) - (local.get $3) - ) + (local.set $0 + (local.get $18) + ) + (if + (i32.eqz + (i32.load + (i32.const 1680) ) ) - (i32.store - (i32.const 1232) - (local.tee $12 - (i32.add - (local.get $3) - (local.tee $15 - (i32.load - (i32.const 1232) - ) - ) - ) + (block + (i32.store + (i32.const 1688) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $19) - (i32.const 1) + (i32.store + (i32.const 1684) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $15) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1692) + (i32.const -1) ) - ) - (br $folding-inner0) - ) - ) - (if - (i32.eqz - (i32.load - (i32.const 1680) - ) - ) - (block - (i32.store - (i32.const 1688) - (i32.const 4096) - ) - (i32.store - (i32.const 1684) - (i32.const 4096) - ) - (i32.store - (i32.const 1692) - (i32.const -1) - ) - (i32.store - (i32.const 1696) - (i32.const -1) - ) - (i32.store - (i32.const 1700) - (i32.const 0) - ) - (i32.store - (i32.const 1652) - (i32.const 0) - ) - (i32.store - (local.get $13) - (local.tee $15 - (i32.xor - (i32.and - (local.get $13) - (i32.const -16) + (i32.store + (i32.const 1696) + (i32.const -1) + ) + (i32.store + (i32.const 1700) + (i32.const 0) + ) + (i32.store + (i32.const 1652) + (i32.const 0) + ) + (i32.store + (local.get $0) + (local.tee $0 + (i32.xor + (i32.and + (local.get $0) + (i32.const -16) + ) + (i32.const 1431655768) ) - (i32.const 1431655768) ) ) - ) - (i32.store - (i32.const 1680) - (local.get $15) + (i32.store + (i32.const 1680) + (local.get $0) + ) ) ) - ) - (local.set $15 - (i32.add - (local.get $3) - (i32.const 48) - ) - ) - (if - (i32.le_u - (local.tee $13 - (i32.and - (local.tee $12 - (i32.add - (local.tee $13 - (i32.load - (i32.const 1688) + (if + (i32.le_u + (local.tee $5 + (i32.and + (local.tee $10 + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) ) - ) - (local.tee $19 - (i32.add - (local.get $3) - (i32.const 47) + (local.tee $6 + (i32.add + (local.get $4) + (i32.const 47) + ) ) ) ) - ) - (local.tee $22 - (i32.sub - (i32.const 0) - (local.get $13) + (local.tee $12 + (i32.sub + (i32.const 0) + (local.get $0) + ) ) ) ) + (local.get $4) ) - (local.get $3) - ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) - ) - ) - (if - (local.tee $17 - (i32.load - (i32.const 1648) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) (if - (i32.or - (i32.le_u - (local.tee $8 - (i32.add - (local.get $13) - (local.tee $16 - (i32.load - (i32.const 1640) + (local.tee $0 + (i32.load + (i32.const 1648) + ) + ) + (if + (i32.or + (i32.le_u + (local.tee $8 + (i32.add + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 1640) + ) ) ) ) + (local.get $2) + ) + (i32.gt_u + (local.get $8) + (local.get $0) ) - (local.get $16) ) - (i32.gt_u - (local.get $8) - (local.get $17) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) + ) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) - ) - (if - (block (result i32) - (if - (i32.eq - (local.tee $7 - (if (result i32) - (i32.and - (i32.load - (i32.const 1652) - ) - (i32.const 4) + (if + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 1652) ) - (i32.const 188) - (block $label$break$b (result i32) - (if - (local.tee $17 - (i32.load - (i32.const 1232) - ) + (i32.const 4) + ) + (i32.const 188) + (block $label$break$b (result i32) + (if + (local.tee $2 + (i32.load + (i32.const 1232) ) - (block $label$break$c - (local.set $8 - (i32.const 1656) - ) - (loop $while-in32 - (block $while-out31 - (if - (i32.le_u - (local.tee $16 - (i32.load - (local.get $8) - ) + ) + (block $label$break$c + (local.set $14 + (i32.const 1656) + ) + (loop $while-in32 + (block $while-out31 + (if + (i32.le_u + (local.tee $8 + (i32.load + (local.get $14) ) - (local.get $17) ) - (if - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $8) - (i32.const 4) - ) + (local.get $2) + ) + (if + (i32.gt_u + (i32.add + (i32.load + (local.tee $0 + (i32.add + (local.get $14) + (i32.const 4) ) ) - (local.get $16) - ) - (local.get $17) - ) - (block - (local.set $0 - (local.get $8) ) - (local.set $4 - (local.get $9) - ) - (br $while-out31) + (local.get $8) ) + (local.get $2) ) - ) - (br_if $while-in32 - (local.tee $8 - (i32.load offset=8 - (local.get $8) + (block + (local.set $8 + (local.get $0) ) + (br $while-out31) ) ) - (local.set $7 - (i32.const 171) + ) + (br_if $while-in32 + (local.tee $14 + (i32.load offset=8 + (local.get $14) + ) ) - (br $label$break$c) ) + (local.set $9 + (i32.const 171) + ) + (br $label$break$c) ) - (if - (i32.lt_u - (local.tee $8 - (i32.and - (local.get $22) - (i32.sub - (local.get $12) - (i32.load - (i32.const 1220) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $12) + (i32.sub + (local.get $10) + (i32.load + (i32.const 1220) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $ta - (local.get $8) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $ta + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $0) - ) - (i32.load - (local.get $4) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $14) ) - (block - (local.set $20 - (local.get $9) - ) - (local.set $26 - (local.get $8) - ) - (br $label$break$b - (i32.const 191) - ) + (i32.load + (local.get $8) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $11 - (local.get $9) - ) - (local.set $5 - (local.get $8) + (local.set $3 + (local.get $0) ) (local.set $7 - (i32.const 181) + (local.get $2) ) + (br $label$break$b + (i32.const 191) + ) + ) + ) + (block + (local.set $24 + (local.get $0) + ) + (local.set $1 + (local.get $2) + ) + (local.set $9 + (i32.const 181) ) ) ) ) ) - (local.set $7 - (i32.const 171) - ) + ) + (local.set $9 + (i32.const 171) + ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 171) ) (if - (i32.eq - (local.get $7) - (i32.const 171) - ) - (if - (i32.ne - (local.tee $17 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $2 + (call $ta + (i32.const 0) ) - (i32.const -1) ) - (block $do-once33 - (local.set $2 - (if (result i32) - (i32.and - (local.tee $0 - (local.get $17) - ) - (local.tee $9 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1684) + (i32.const -1) + ) + (block $do-once33 + (local.set $8 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $2) + ) + (local.tee $10 + (i32.add + (local.tee $8 + (i32.load + (i32.const 1684) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $13) - (local.get $0) - ) - (i32.and - (i32.add + (i32.add + (i32.sub + (local.get $5) (local.get $0) - (local.get $9) ) - (i32.sub - (i32.const 0) - (local.get $8) + (i32.and + (i32.add + (local.get $0) + (local.get $10) + ) + (i32.sub + (i32.const 0) + (local.get $8) + ) ) ) + (local.get $5) ) - (local.get $13) ) - ) - (local.set $0 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1640) - ) + (local.tee $10 + (i32.load + (i32.const 1640) ) - (local.get $2) ) ) - (if - (i32.and - (i32.lt_u - (local.get $2) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $2) - (local.get $3) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (if - (local.tee $9 - (i32.load - (i32.const 1648) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (if + (local.tee $12 + (i32.load + (i32.const 1648) + ) + ) + (br_if $do-once33 + (i32.or + (i32.le_u + (local.get $8) + (local.get $10) + ) + (i32.gt_u + (local.get $8) + (local.get $12) ) ) - (br_if $do-once33 - (i32.or - (i32.le_u - (local.get $0) - (local.get $8) - ) - (i32.gt_u + ) + ) + (local.set $1 + (if (result i32) + (i32.eq + (local.get $2) + (local.tee $24 + (call $ta (local.get $0) - (local.get $9) ) ) ) - ) - (local.set $5 - (if (result i32) - (i32.eq - (local.get $17) - (local.tee $9 - (call $ta - (local.get $2) - ) - ) + (block + (local.set $3 + (local.get $2) ) - (block - (local.set $20 - (local.get $17) - ) - (local.set $26 - (local.get $2) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $0) ) - (block (result i32) - (local.set $11 - (local.get $9) - ) - (local.set $7 - (i32.const 181) - ) - (local.get $2) + (br $label$break$b + (i32.const 191) ) ) + (block (result i32) + (local.set $9 + (i32.const 181) + ) + (local.get $0) + ) ) ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 181) + ) + (if + (i32.eq + (local.get $9) + (i32.const 181) + ) + (block $label$break$d + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $1) + ) ) - (block $label$break$d - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $5) + (if + (i32.and + (i32.and + (i32.ne + (local.get $24) + (i32.const -1) + ) + (i32.lt_u + (local.get $1) + (i32.const 2147483647) + ) + ) + (i32.gt_u + (local.get $22) + (local.get $1) ) ) - (local.set $1 - (if (result i32) - (i32.and + (if + (i32.lt_u + (local.tee $0 (i32.and - (i32.ne - (local.get $11) - (i32.const -1) + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) + ) + (i32.sub + (local.get $6) + (local.get $1) + ) ) - (i32.lt_u - (local.get $5) - (i32.const 2147483647) + (i32.sub + (i32.const 0) + (local.get $0) ) ) - (i32.gt_u - (local.get $15) - (local.get $5) - ) ) + (i32.const 2147483647) + ) + (local.set $1 (if (result i32) - (i32.lt_u - (local.tee $0 - (i32.and - (i32.add - (local.tee $17 - (i32.load - (i32.const 1688) - ) - ) - (i32.sub - (local.get $19) - (local.get $5) - ) - ) - (i32.sub - (i32.const 0) - (local.get $17) - ) - ) + (i32.eq + (call $ta + (local.get $0) ) - (i32.const 2147483647) + (i32.const -1) ) - (if (result i32) - (i32.eq + (block + (drop (call $ta - (local.get $0) - ) - (i32.const -1) - ) - (block - (drop - (call $ta - (local.get $9) - ) + (local.get $2) ) - (br $label$break$d) - ) - (i32.add - (local.get $0) - (local.get $5) ) + (br $label$break$d) + ) + (i32.add + (local.get $0) + (local.get $1) ) - (local.get $5) ) - (local.get $5) ) ) - (if - (i32.ne - (local.get $11) - (i32.const -1) + ) + (if + (i32.ne + (local.get $24) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $24) ) - (block - (local.set $20 - (local.get $11) - ) - (local.set $26 - (local.get $1) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $1) + ) + (br $label$break$b + (i32.const 191) ) ) ) ) - (i32.store - (i32.const 1652) - (i32.or - (i32.load - (i32.const 1652) - ) - (i32.const 4) + ) + (i32.store + (i32.const 1652) + (i32.or + (i32.load + (i32.const 1652) ) + (i32.const 4) ) - (i32.const 188) ) + (i32.const 188) ) ) - (i32.const 188) + ) + (i32.const 188) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 2147483647) ) (if - (i32.lt_u - (local.get $13) - (i32.const 2147483647) - ) - (if + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $1 - (call $ta - (local.get $13) - ) - ) - (i32.const -1) - ) - (i32.ne - (local.tee $13 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $0 + (call $ta + (local.get $5) ) - (i32.const -1) ) + (i32.const -1) ) - (i32.lt_u - (local.get $1) - (local.get $13) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.sub - (local.get $13) - (local.get $1) + (i32.ne + (local.tee $1 + (call $ta + (i32.const 0) ) ) - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.const -1) ) - (block - (local.set $20 + ) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + ) + (if + (i32.gt_u + (local.tee $1 + (i32.sub (local.get $1) + (local.get $0) ) - (local.set $26 - (local.get $11) - ) - (local.set $7 - (i32.const 191) - ) + ) + (i32.add + (local.get $4) + (i32.const 40) + ) + ) + (block + (local.set $7 + (local.get $1) + ) + (local.set $9 + (i32.const 191) + ) + (local.set $3 + (local.get $0) ) ) ) ) ) + ) + (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 191) ) - ) - (block - (i32.store - (i32.const 1640) - (local.tee $11 - (i32.add - (local.get $26) - (i32.load - (i32.const 1640) + (block + (i32.store + (i32.const 1640) + (local.tee $0 + (i32.add + (local.get $7) + (i32.load + (i32.const 1640) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $11) - (i32.load - (i32.const 1644) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 1644) + ) ) - ) - (i32.store - (i32.const 1644) - (local.get $11) - ) - ) - (if - (local.tee $11 - (i32.load - (i32.const 1232) + (i32.store + (i32.const 1644) + (local.get $0) ) ) - (block $do-once38 - (local.set $5 - (i32.const 1656) + (if + (local.tee $6 + (i32.load + (i32.const 1232) + ) ) - (loop $do-in41 - (block $do-out40 - (if - (i32.eq - (i32.add - (local.tee $19 - (i32.load - (local.tee $13 - (i32.add - (local.get $5) - (i32.const 4) - ) + (block $do-once38 + (local.set $1 + (i32.const 1656) + ) + (loop $do-in41 + (block $do-out40 + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) ) ) - ) - (local.tee $1 - (i32.load - (local.get $5) + (local.tee $5 + (i32.load + (local.tee $2 + (i32.add + (local.get $1) + (i32.const 4) + ) + ) + ) ) ) + (local.get $3) ) - (local.get $20) - ) - (block - (local.set $48 - (local.get $1) - ) - (local.set $49 - (local.get $13) - ) - (local.set $50 - (local.get $19) - ) - (local.set $51 - (local.get $5) - ) - (local.set $7 - (i32.const 201) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $2) + ) + (local.set $43 + (local.get $5) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 201) + ) + (br $do-out40) ) - (br $do-out40) ) - ) - (br_if $do-in41 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $do-in41 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 201) - ) (if - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $51) - ) - (i32.const 8) - ) + (i32.eq + (local.get $9) + (i32.const 201) ) (if - (i32.and - (i32.lt_u - (local.get $11) - (local.get $20) - ) - (i32.ge_u - (local.get $11) - (local.get $48) + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) ) ) - (block - (i32.store - (local.get $49) - (i32.add - (local.get $26) - (local.get $50) + (if + (i32.and + (i32.lt_u + (local.get $6) + (local.get $3) + ) + (i32.ge_u + (local.get $6) + (local.get $41) ) ) - (local.set $5 - (i32.add - (local.tee $19 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $11) - (i32.const 8) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $7) + (local.get $43) + ) + ) + (local.set $0 + (i32.add + (local.get $6) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $6) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) ) - (local.get $11) ) - ) - (local.set $13 - (i32.add - (i32.load - (i32.const 1220) - ) - (i32.sub - (local.get $26) - (local.get $19) + (local.set $1 + (i32.add + (i32.load + (i32.const 1220) + ) + (i32.sub + (local.get $7) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store - (i32.const 1220) - (local.get $13) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $13) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $5) - (local.get $13) + (i32.store + (i32.const 1220) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) + (br $do-once38) ) - (br $do-once38) ) ) ) - ) - (local.set $6 - (if (result i32) + (if (i32.lt_u - (local.get $20) - (local.tee $13 + (local.get $3) + (local.tee $2 (i32.load (i32.const 1224) ) ) ) - (block (result i32) + (block (i32.store (i32.const 1224) - (local.get $20) + (local.get $3) + ) + (local.set $2 + (local.get $3) ) - (local.get $20) ) - (local.get $13) ) - ) - (local.set $13 - (i32.add - (local.get $20) - (local.get $26) + (local.set $0 + (i32.add + (local.get $3) + (local.get $7) + ) ) - ) - (local.set $5 - (i32.const 1656) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $13) - (i32.load - (local.get $5) - ) - ) - (block - (local.set $52 - (local.get $5) - ) - (local.set $37 - (local.get $5) + (local.set $1 + (i32.const 1656) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $7 - (i32.const 209) + (block + (local.set $45 + (local.get $1) + ) + (local.set $26 + (local.get $1) + ) + (local.set $9 + (i32.const 209) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) - ) - (local.set $29 - (i32.const 1656) + (local.set $23 + (i32.const 1656) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 209) - ) - (local.set $29 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $37) - ) - (i32.const 8) - ) - (i32.const 1656) - (block - (i32.store - (local.get $52) - (local.get $20) + (if + (i32.eq + (local.get $9) + (i32.const 209) + ) + (local.set $23 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $26) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $37) - (i32.add + (i32.const 1656) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 (local.get $26) - (i32.load offset=4 - (local.get $37) + (i32.add + (local.get $7) + (i32.load offset=4 + (local.get $26) + ) ) ) - ) - (local.set $19 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $20) - (i32.const 8) + (local.set $7 + (i32.add + (local.get $4) + (local.tee $10 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) - (local.get $20) ) - ) - (local.set $1 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $5 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) + (local.get $10) ) + (local.get $4) ) - (local.get $13) ) - ) - (local.set $5 - (i32.add - (local.get $3) - (local.get $19) - ) - ) - (local.set $15 - (i32.sub - (i32.sub - (local.get $1) - (local.get $19) + (i32.store offset=4 + (local.get $10) + (i32.or + (local.get $4) + (i32.const 3) ) - (local.get $3) ) - ) - (i32.store offset=4 - (local.get $19) - (i32.or - (local.get $3) - (i32.const 3) - ) - ) - (if - (i32.eq - (local.get $1) - (local.get $11) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1220) + (if + (i32.eq + (local.get $5) + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1220) + ) ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $7) ) - ) - ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 1228) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) - (local.get $1) ) - (block - (i32.store - (i32.const 1216) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1216) - ) - ) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 1228) ) - ) - (i32.store - (i32.const 1228) (local.get $5) ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (block + (i32.store + (i32.const 1216) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1216) + ) + ) + ) ) - ) - (i32.store - (i32.add - (local.get $2) - (local.get $5) + (i32.store + (i32.const 1228) + (local.get $7) ) - (local.get $2) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $2 - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $4 - (i32.and - (local.get $2) - (i32.const -8) + (i32.store + (i32.add + (local.get $0) + (local.get $7) + ) + (local.get $0) ) + (br $do-once44) ) - (local.set $0 - (i32.shr_u - (local.get $2) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $5) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$e - (if - (i32.lt_u - (local.get $2) - (i32.const 256) + (block (result i32) + (local.set $12 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $12 - (i32.load offset=12 - (local.get $1) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$e (if - (i32.ne - (local.tee $9 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $5) ) ) - (local.tee $22 - (i32.load offset=8 - (local.get $1) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $5) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 1248) + ) + ) + ) + (block $do-once47 + (if + (i32.lt_u + (local.get $4) + (local.get $2) + ) + (call $qa) + ) + (br_if $do-once47 + (i32.eq + (local.get $5) + (i32.load offset=12 + (local.get $4) + ) + ) + ) + (call $qa) ) ) - ) - (block $do-once47 (if - (i32.lt_u - (local.get $22) - (local.get $6) + (i32.eq + (local.get $1) + (local.get $4) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - (call $qa) ) - (br_if $do-once47 + (if (i32.eq + (local.get $0) (local.get $1) - (i32.load offset=12 - (local.get $22) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - ) - (call $qa) - ) - ) - (if - (i32.eq - (local.get $12) - (local.get $22) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) + (block $do-once49 + (if + (i32.lt_u + (local.get $1) + (local.get $2) + ) + (call $qa) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (if + (i32.eq + (local.get $5) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once49) ) - (i32.const -1) ) + (call $qa) ) ) - (br $label$break$e) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $12) - ) - (local.set $42 - (i32.add - (local.get $12) - (i32.const 8) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) ) ) - (block $do-once49 - (if - (i32.lt_u - (local.get $12) - (local.get $6) + (block + (local.set $6 + (i32.load offset=24 + (local.get $5) ) - (call $qa) ) (if (i32.eq - (local.get $1) - (i32.load - (local.tee $0 - (i32.add - (local.get $12) - (i32.const 8) - ) + (local.get $5) + (local.tee $0 + (i32.load offset=12 + (local.get $5) ) ) ) - (block - (local.set $42 - (local.get $0) - ) - (br $do-once49) - ) - ) - (call $qa) - ) - ) - (i32.store offset=12 - (local.get $22) - (local.get $12) - ) - (i32.store - (local.get $42) - (local.get $22) - ) - ) - (block - (local.set $9 - (i32.load offset=24 - (local.get $1) - ) - ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 - (local.get $1) - ) - ) - (local.get $1) - ) - (block $do-once51 - (local.set $0 - (if (result i32) - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.tee $17 - (i32.add - (local.get $1) - (i32.const 16) + (block $do-once51 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $5) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $2 - (local.get $16) + (local.set $1 + (local.get $4) ) - (local.get $8) - ) - (if (result i32) - (local.tee $21 - (i32.load - (local.get $17) + (br_if $do-once51 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (block (result i32) - (local.set $2 - (local.get $21) + ) + (loop $while-in54 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in54) ) - (local.get $17) ) - (br $do-once51) - ) - ) - ) - (loop $while-in54 - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 20) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) ) + (local.set $1 + (local.get $4) + ) + (br $while-in54) ) ) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.lt_u + (local.get $1) + (local.get $2) ) - (local.set $0 - (local.get $8) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $17 + (local.get $0) + ) ) - (br $while-in54) ) ) - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $5) ) ) + (local.get $2) ) + (call $qa) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.ne + (local.get $5) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $0 - (local.get $8) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=8 + (local.get $0) + ) ) - (br $while-in54) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $17 + (local.get $0) + ) + ) + (call $qa) ) ) ) - (if - (i32.lt_u - (local.get $0) + (br_if $label$break$e + (i32.eqz (local.get $6) ) - (call $qa) - (block + ) + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $5) + ) + ) + (i32.const 2) + ) + (i32.const 1512) + ) + ) + ) + (local.get $5) + ) + (block $do-once55 (i32.store - (local.get $0) - (i32.const 0) + (local.get $1) + (local.get $17) ) - (local.set $24 - (local.get $2) + (br_if $do-once55 + (local.get $17) ) + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $8 - (i32.load offset=8 - (local.get $1) + (block + (if + (i32.lt_u + (local.get $6) + (i32.load + (i32.const 1224) + ) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=16 + (local.get $6) + ) + ) + (i32.store offset=16 + (local.get $6) + (local.get $17) + ) + (i32.store offset=20 + (local.get $6) + (local.get $17) + ) + ) + (br_if $label$break$e + (i32.eqz + (local.get $17) ) ) - (local.get $6) ) - (call $qa) - ) - (local.set $3 - (local.get $8) ) (if - (i32.ne - (local.get $1) - (i32.load offset=12 - (local.get $3) + (i32.lt_u + (local.get $17) + (local.tee $1 + (i32.load + (i32.const 1224) + ) ) ) (call $qa) ) - (local.set $2 - (local.get $0) + (i32.store offset=24 + (local.get $17) + (local.get $6) ) (if - (i32.eq - (local.get $1) - (i32.load offset=8 - (local.get $0) + (local.tee $0 + (i32.load offset=16 + (local.get $5) ) ) - (block - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (i32.store offset=8 - (local.get $2) - (local.get $8) - ) - (local.set $24 + (if + (i32.lt_u (local.get $0) + (local.get $1) ) - ) - (call $qa) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $9) - ) - ) - (if - (i32.eq - (i32.load - (local.tee $22 - (i32.add - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) + (call $qa) + (block + (i32.store offset=16 + (local.get $17) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $17) ) - (i32.const 1512) ) ) ) - (local.get $1) - ) - (block $do-once55 - (i32.store - (local.get $22) - (local.get $24) - ) - (br_if $do-once55 - (local.get $24) - ) - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (br_if $label$break$e + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $5) ) - (i32.const -1) ) ) ) - (br $label$break$e) - ) - (block (if (i32.lt_u - (local.get $9) + (local.get $0) (i32.load (i32.const 1224) ) ) (call $qa) - ) - (local.set $0 - (local.get $9) - ) - (if - (i32.eq - (local.get $1) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $17) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $9) - (local.get $24) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $24) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $0 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) - ) - (i32.store offset=24 - (local.get $24) - (local.get $9) - ) - (local.set $2 - (local.get $1) - ) - (if - (local.tee $12 - (i32.load offset=16 - (local.get $1) - ) - ) - (if - (i32.lt_u - (local.get $12) - (local.get $0) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.tee $12 - (i32.load offset=20 - (local.get $2) + (i32.store offset=24 + (local.get $0) + (local.get $17) + ) ) ) ) ) - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) + ) + (local.set $5 + (i32.add + (local.get $5) + (local.get $12) ) ) + (i32.add + (local.get $8) + (local.get $12) + ) ) + (local.get $8) ) - (local.set $1 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $15 - (i32.add - (local.get $4) - (local.get $15) + ) + (i32.store offset=4 + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $5) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.and - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $4) + (i32.const 1) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $15) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $5) - (local.get $15) - ) - (local.get $15) - ) - (local.set $0 - (i32.shr_u - (local.get $15) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $7) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $15) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $2 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $0 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $0) + (local.get $1) + (i32.const 3) ) + (i32.const 1248) ) - (local.tee $12 - (i32.load - (i32.const 1208) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $9 - (i32.load - (local.tee $0 - (i32.add - (local.get $2) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (block + (local.set $33 + (local.get $1) + ) + (local.set $27 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $43 - (local.get $0) + (call $qa) + ) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) ) - (local.set $38 - (local.get $9) + ) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) ) - (br $do-once59) ) - ) - (call $qa) - ) - (block - (i32.store - (i32.const 1208) - (i32.or + (local.set $27 (local.get $0) - (local.get $12) - ) - ) - (local.set $43 - (i32.add - (local.get $2) - (i32.const 8) ) ) - (local.set $38 - (local.get $2) - ) ) + (i32.store + (local.get $33) + (local.get $7) + ) + (i32.store offset=12 + (local.get $27) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $27) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $43) - (local.get $5) - ) - (i32.store offset=12 - (local.get $38) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $38) - ) - (i32.store offset=12 - (local.get $5) - (local.get $2) - ) - (br $do-once44) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $4 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $15) - (i32.const 8) - ) - ) + (local.set $1 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $15) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $9 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $0) - (local.tee $12 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $15) - (i32.add - (local.tee $8 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $4) - (local.get $9) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $9) - (local.get $12) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $4) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $2) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $8) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $5) - (local.get $4) - ) - (i32.store offset=20 - (local.get $5) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $5) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $4) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $7) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $3 + (i32.load + (i32.const 1212) + ) ) - ) - (local.tee $2 - (i32.load - (i32.const 1212) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $2) - (local.get $8) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $2) + (local.get $3) + ) ) + (i32.store + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $1) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once44) ) - (i32.store - (local.get $0) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $0) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $5) - ) - (br $do-once44) ) - ) - (local.set $8 - (i32.shl - (local.get $15) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $4) - (i32.const 1) + (local.set $14 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $4) - (i32.const 31) ) ) ) - ) - (local.set $2 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $15) - (i32.and - (i32.load offset=4 - (local.get $2) + (if + (i32.eq + (local.tee $9 + (loop $while-in64 (result i32) + (block $while-out63 (result i32) + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) ) - ) - (block - (local.set $44 - (local.get $2) - ) - (br $while-out63 - (i32.const 279) + (block + (local.set $34 + (local.get $0) + ) + (br $while-out63 + (i32.const 279) + ) ) ) - ) - (if (result i32) - (local.tee $4 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 (i32.add - (local.get $2) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $8) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $14) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $8 - (i32.shl - (local.get $8) - (i32.const 1) + (block + (local.set $14 + (i32.shl + (local.get $14) + (i32.const 1) + ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) ) - (local.set $2 - (local.get $4) - ) - (br $while-in64) - ) - (block (result i32) - (local.set $45 - (local.get $0) - ) - (local.set $53 - (local.get $2) + (block (result i32) + (local.set $35 + (local.get $3) + ) + (local.set $46 + (local.get $0) + ) + (i32.const 276) ) - (i32.const 276) ) ) ) ) + (i32.const 276) ) - (i32.const 276) - ) - (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $45) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $53) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $5) - (local.get $5) + (call $qa) + (block + (i32.store + (local.get $35) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $46) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 279) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 279) ) (if (i32.and (i32.ge_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) (local.tee $4 @@ -4850,23 +4697,23 @@ ) (block (i32.store offset=12 - (local.get $8) - (local.get $5) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $5) + (local.get $7) ) (i32.store offset=8 - (local.get $5) - (local.get $8) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $44) + (local.get $7) + (local.get $34) ) (i32.store offset=24 - (local.get $5) + (local.get $7) (i32.const 0) ) ) @@ -4876,676 +4723,659 @@ ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $19) - (i32.const 8) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $10) + (i32.const 8) + ) ) ) ) ) ) - ) - (loop $while-in66 - (block $while-out65 - (if - (i32.le_u - (local.tee $5 - (i32.load - (local.get $29) - ) - ) - (local.get $11) - ) + (loop $while-in66 + (block $while-out65 (if - (i32.gt_u - (local.tee $15 - (i32.add - (i32.load offset=4 - (local.get $29) - ) - (local.get $5) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $23) ) ) - (local.get $11) + (local.get $6) ) - (block - (local.set $2 - (local.get $15) + (br_if $while-out65 + (i32.gt_u + (local.tee $0 + (i32.add + (i32.load offset=4 + (local.get $23) + ) + (local.get $0) + ) + ) + (local.get $6) ) - (br $while-out65) ) ) - ) - (local.set $29 - (i32.load offset=8 - (local.get $29) + (local.set $23 + (i32.load offset=8 + (local.get $23) + ) ) + (br $while-in66) ) - (br $while-in66) ) - ) - (local.set $5 - (i32.add - (local.tee $4 - (local.tee $19 - (select - (local.get $11) - (local.tee $5 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $15 - (i32.add - (local.tee $19 - (i32.add - (local.get $2) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 1232) + (local.tee $1 + (i32.add + (local.get $3) + (local.tee $2 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $15) - (i32.const 7) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $19) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $5) - (local.tee $15 - (i32.add - (local.get $11) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 + (i32.store + (i32.const 1220) + (local.tee $2 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $2) + ) + ) + ) + (i32.store offset=4 + (local.get $1) + (i32.or + (local.get $2) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) + (local.get $1) + (local.get $2) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) + ) + (i32.store offset=4 + (local.tee $2 + (select + (local.get $6) + (local.tee $1 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $2 + (i32.add + (local.tee $1 + (i32.add + (local.get $0) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $2) + (i32.const 7) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and (local.get $1) - (i32.const 7) + ) + ) + (i32.lt_u + (local.get $1) + (local.tee $8 + (i32.add + (local.get $6) + (i32.const 16) + ) ) ) ) - (local.get $20) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 1220) - (local.tee $8 - (i32.sub - (i32.add - (local.get $26) - (i32.const -40) - ) - (local.get $13) + (i32.store offset=8 + (local.get $2) + (i32.load + (i32.const 1656) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $8) - (i32.const 1) + (i32.store offset=12 + (local.get $2) + (i32.load + (i32.const 1660) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $8) + (i32.store offset=16 + (local.get $2) + (i32.load + (i32.const 1664) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=20 + (local.get $2) + (i32.load + (i32.const 1668) + ) ) - ) - (local.set $0 - (local.get $19) - ) - (i32.store offset=4 - (local.get $0) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $4) - (i32.load + (i32.store (i32.const 1656) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $4) - (i32.load + (i32.store (i32.const 1660) + (local.get $7) ) - ) - (i32.store offset=16 - (local.get $4) - (i32.load - (i32.const 1664) - ) - ) - (i32.store offset=20 - (local.get $4) - (i32.load + (i32.store (i32.const 1668) + (i32.const 0) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1664) - (local.get $5) - ) - (local.set $5 - (i32.add - (local.get $0) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $5 - (i32.add - (local.get $5) - (i32.const 4) - ) + (i32.const 1664) + (i32.add + (local.get $2) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $5) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $2) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $11) - (local.get $19) - ) - (block - (i32.store offset=4 - (local.get $0) - (i32.and - (i32.load offset=4 - (local.get $0) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.tee $5 - (i32.sub - (local.get $19) - (local.get $11) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $0) ) ) - (i32.store - (local.get $19) - (local.get $5) - ) - (local.set $1 - (i32.shr_u - (local.get $5) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $2) + (local.get $6) ) - (if - (i32.lt_u - (local.get $5) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) + ) + (i32.const -2) + ) ) - (block - (local.set $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) + (i32.store offset=4 + (local.get $6) + (i32.or + (local.tee $5 + (i32.sub + (local.get $2) + (local.get $6) ) - (i32.const 1248) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $4 + ) + (i32.store + (local.get $2) + (local.get $5) + ) + (local.set $1 + (i32.shr_u + (local.get $5) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) (local.get $1) + (i32.const 3) ) - ) - (local.tee $2 - (i32.load - (i32.const 1208) - ) + (i32.const 1248) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $13) - (i32.const 8) + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (call $qa) + (block + (local.set $36 + (local.get $1) + ) + (local.set $28 + (local.get $3) + ) ) ) - (call $qa) (block - (local.set $46 - (local.get $4) - ) - (local.set $39 - (local.get $2) + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $3) + ) ) - ) - ) - (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $2) - (local.get $4) + (local.set $36 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $46 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $28 + (local.get $0) ) ) - (local.set $39 - (local.get $13) - ) ) + (i32.store + (local.get $36) + (local.get $6) + ) + (i32.store offset=12 + (local.get $28) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $28) + ) + (i32.store offset=12 + (local.get $6) + (local.get $0) + ) + (br $do-once38) ) - (i32.store - (local.get $46) - (local.get $11) - ) - (i32.store offset=12 - (local.get $39) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $39) - ) - (i32.store offset=12 - (local.get $11) - (local.get $13) - ) - (br $do-once38) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $2 - (if (result i32) - (local.tee $13 - (i32.shr_u - (local.get $5) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $5) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $5) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $13 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $13) - (local.tee $2 - (i32.and - (i32.shr_u - (i32.add - (local.get $13) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $5) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $4) - (local.get $13) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) + ) + (i32.or + (local.get $0) + (local.get $1) ) ) - (i32.or + ) + (i32.shr_u + (i32.shl + (local.get $3) (local.get $2) - (local.get $13) ) + (i32.const 15) ) ) - (i32.shr_u - (i32.shl - (local.get $1) - (local.get $4) - ) - (i32.const 15) - ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $11) - (local.get $2) - ) - (i32.store offset=20 - (local.get $11) - (i32.const 0) - ) - (i32.store - (local.get $15) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $4 - (i32.load - (i32.const 1212) + (i32.store offset=28 + (local.get $6) + (local.get $0) + ) + (i32.store offset=20 + (local.get $6) + (i32.const 0) + ) + (i32.store + (local.get $8) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $1 + (i32.load + (i32.const 1212) + ) + ) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) - (local.tee $1 - (i32.shl - (i32.const 1) + ) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $1) (local.get $2) ) ) - ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $1) - (local.get $4) + (i32.store + (local.get $3) + (local.get $6) ) + (i32.store offset=24 + (local.get $6) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) + (br $do-once38) ) - (i32.store - (local.get $0) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $0) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $11) - ) - (br $do-once38) ) - ) - (local.set $1 - (i32.shl - (local.get $5) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $2) - (i32.const 1) + (local.set $1 + (i32.shl + (local.get $5) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $2) - (i32.const 31) ) ) ) - ) - (local.set $4 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $3) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $5) - (i32.and - (i32.load offset=4 - (local.get $4) + (if + (i32.eq + (local.tee $9 + (loop $while-in70 (result i32) + (block $while-out69 (result i32) + (if + (i32.eq + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) ) - ) - (block - (local.set $33 - (local.get $4) - ) - (br $while-out69 - (i32.const 305) + (block + (local.set $37 + (local.get $0) + ) + (br $while-out69 + (i32.const 305) + ) ) ) - ) - (if (result i32) - (local.tee $2 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $3 + (i32.load + (local.tee $2 (i32.add - (local.get $4) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $1) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $1) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $1 - (i32.shl - (local.get $1) - (i32.const 1) + (block + (local.set $1 + (i32.shl + (local.get $1) + (i32.const 1) + ) ) + (local.set $0 + (local.get $3) + ) + (br $while-in70) ) - (local.set $4 - (local.get $2) - ) - (br $while-in70) - ) - (block (result i32) - (local.set $47 - (local.get $0) - ) - (local.set $54 - (local.get $4) + (block (result i32) + (local.set $38 + (local.get $2) + ) + (local.set $47 + (local.get $0) + ) + (i32.const 302) ) - (i32.const 302) ) ) ) ) + (i32.const 302) ) - (i32.const 302) - ) - (if - (i32.lt_u - (local.get $47) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $47) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $54) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $11) - (local.get $11) + (call $qa) + (block + (i32.store + (local.get $38) + (local.get $6) + ) + (i32.store offset=24 + (local.get $6) + (local.get $47) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 305) - ) - (block - (local.set $0 - (local.get $33) + (if + (i32.eq + (local.get $9) + (i32.const 305) ) (if (i32.and (i32.ge_u (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) - (local.tee $5 + (local.tee $3 (i32.load (i32.const 1224) ) @@ -5553,28 +5383,28 @@ ) (i32.ge_u (local.get $0) - (local.get $5) + (local.get $3) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $11) + (local.get $6) ) (i32.store offset=8 (local.get $0) - (local.get $11) + (local.get $6) ) (i32.store offset=8 - (local.get $11) + (local.get $6) (local.get $1) ) (i32.store offset=12 - (local.get $11) - (local.get $33) + (local.get $6) + (local.get $37) ) (i32.store offset=24 - (local.get $11) + (local.get $6) (i32.const 0) ) ) @@ -5585,219 +5415,208 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $1 - (i32.load - (i32.const 1224) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 1224) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $20) - (local.get $1) + (i32.store + (i32.const 1224) + (local.get $3) ) ) (i32.store - (i32.const 1224) - (local.get $20) + (i32.const 1656) + (local.get $3) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1244) - (i32.load - (i32.const 1680) + (i32.store + (i32.const 1660) + (local.get $7) ) - ) - (i32.store - (i32.const 1240) - (i32.const -1) - ) - (local.set $1 - (i32.const 0) - ) - (loop $do-in - (i32.store offset=12 - (local.tee $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) - ) - (i32.const 1248) - ) + (i32.store + (i32.const 1668) + (i32.const 0) + ) + (i32.store + (i32.const 1244) + (i32.load + (i32.const 1680) ) - (local.get $13) ) - (i32.store offset=8 - (local.get $13) - (local.get $13) + (i32.store + (i32.const 1240) + (i32.const -1) ) - (br_if $do-in - (i32.ne - (local.tee $1 + (local.set $1 + (i32.const 0) + ) + (loop $do-in + (i32.store offset=12 + (local.tee $0 (i32.add - (local.get $1) - (i32.const 1) + (i32.shl + (local.get $1) + (i32.const 3) + ) + (i32.const 1248) ) ) - (i32.const 32) + (local.get $0) ) - ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) - (i32.const 0) - (i32.and + (i32.store offset=8 + (local.get $0) + (local.get $0) + ) + (br_if $do-in + (i32.ne + (local.tee $1 + (i32.add (local.get $1) - (i32.const 7) + (i32.const 1) ) ) + (i32.const 32) ) - (local.get $20) ) ) - ) - (i32.store - (i32.const 1220) - (local.tee $5 - (i32.sub + (i32.store + (i32.const 1232) + (local.tee $0 (i32.add - (local.get $26) - (i32.const -40) + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) + ) + ) + ) ) - (local.get $13) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $5) - ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.load + (i32.store (i32.const 1220) + (local.tee $1 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $1) + ) + ) ) - ) - (local.get $3) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $33 - (i32.sub - (local.get $11) - (local.get $3) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 1232) - (local.tee $7 + (i32.store offset=4 (i32.add - (local.get $3) - (local.tee $11 - (i32.load - (i32.const 1232) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $7) - (i32.or - (local.get $33) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $11) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $Qa) + (i32.const 12) + ) + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) + ) + (i32.store + (i32.const 1220) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) ) (i32.store - (call $Qa) - (i32.const 12) + (i32.const 1232) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1232) + ) + ) + ) + ) ) - (global.set $r - (local.get $25) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) ) - (return - (i32.const 0) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (i32.add - (local.get $15) + (local.get $0) (i32.const 8) ) ) @@ -5820,7 +5639,6 @@ (local $16 i32) (local $17 i32) (local $18 i32) - (local $19 i32) (if (i32.eqz (local.get $0) @@ -5829,13 +5647,13 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) ) ) - (local.tee $14 + (local.tee $13 (i32.load (i32.const 1224) ) @@ -5845,9 +5663,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $10 (i32.and - (local.tee $5 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5862,12 +5680,12 @@ ) (call $qa) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $5) + (local.get $0) (i32.const -8) ) ) @@ -5875,64 +5693,61 @@ ) (if (i32.and - (local.get $5) + (local.get $0) (i32.const 1) ) (block (local.set $2 - (local.get $1) + (local.get $3) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once (local.set $9 (i32.load - (local.get $1) + (local.get $3) ) ) (if (i32.eqz - (local.get $0) + (local.get $10) ) (return) ) - (local.set $7 - (i32.add - (local.get $7) - (local.get $9) - ) - ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) + (local.get $3) (local.get $9) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 1228) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $3 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5941,43 +5756,43 @@ ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 1216) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $3) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $3 + (local.set $10 (i32.shr_u (local.get $9) (i32.const 3) @@ -5989,22 +5804,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $5 + (local.tee $1 (i32.add (i32.shl - (local.get $3) + (local.get $10) (i32.const 3) ) (i32.const 1248) @@ -6014,16 +5829,16 @@ (block (if (i32.lt_u - (local.get $9) - (local.get $14) + (local.get $4) + (local.get $13) ) (call $qa) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $qa) @@ -6032,8 +5847,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6045,99 +5860,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $10) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.eq - (local.get $0) - (local.get $5) + (local.get $1) + (local.get $2) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) (block (if (i32.lt_u - (local.get $0) - (local.get $14) + (local.get $2) + (local.get $13) ) (call $qa) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $5 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $5) + (local.set $5 + (local.get $1) ) (call $qa) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $3 + (local.tee $9 (i32.add (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6146,17 +5961,12 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load (local.get $5) ) @@ -6164,70 +5974,63 @@ ) ) ) - (if - (i32.lt_u - (local.tee $3 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) + (loop $while-in + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) - ) - (block (result i32) - (local.set $12 - (local.get $0) - ) - (local.get $5) + ) + ) + (block + (local.set $4 + (local.get $10) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) ) - (local.get $14) + (block + (local.set $4 + (local.get $10) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + ) + (if + (i32.lt_u + (local.get $5) + (local.get $13) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $5) (i32.const 0) ) - (local.set $4 - (local.get $12) + (local.set $7 + (local.get $4) ) ) ) @@ -6235,48 +6038,42 @@ (block (if (i32.lt_u - (local.tee $3 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) - (local.set $5 - (local.get $3) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $3) + (local.get $5) ) ) (call $qa) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 (local.get $5) - (local.get $0) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $3) + (local.get $4) + (local.get $5) ) - (local.set $4 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $qa) @@ -6284,17 +6081,17 @@ ) ) (if - (local.get $9) + (local.get $12) (block (if (i32.eq (i32.load - (local.tee $3 + (local.tee $5 (i32.add (i32.shl - (local.tee $0 + (local.tee $4 (i32.load offset=28 - (local.get $1) + (local.get $0) ) ) (i32.const 2) @@ -6303,16 +6100,16 @@ ) ) ) - (local.get $1) + (local.get $0) ) (block (i32.store - (local.get $3) - (local.get $4) + (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (i32.store @@ -6324,17 +6121,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6343,42 +6140,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $4) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $4) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6387,8 +6181,8 @@ ) (if (i32.lt_u - (local.get $4) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 1224) ) @@ -6397,45 +6191,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $4) - (local.get $9) - ) - (local.set $3 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u + (local.get $4) (local.get $5) - (local.get $0) ) (call $qa) (block (i32.store offset=16 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=20 - (local.get $3) + (local.get $0) ) ) (if (i32.lt_u - (local.get $5) + (local.get $4) (i32.load (i32.const 1224) ) @@ -6443,37 +6234,37 @@ (call $qa) (block (i32.store offset=20 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6482,19 +6273,16 @@ (if (i32.ge_u (local.get $2) - (local.get $8) + (local.get $6) ) (call $qa) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6502,639 +6290,622 @@ ) (call $qa) ) - (local.set $6 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 1232) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 1220) + ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $6) - (i32.const 1) + ) + (i32.store + (i32.const 1232) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (if + (i32.ne + (i32.load + (i32.const 1228) ) + (local.get $2) ) - (i32.store + (return) + ) + (i32.store + (i32.const 1228) + (i32.const 0) + ) + (i32.store + (i32.const 1216) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 1228) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 1216) + (local.tee $0 (i32.add - (local.get $2) - (local.get $6) + (local.get $1) + (i32.load + (i32.const 1216) + ) ) - (local.get $6) ) - (local.get $6) ) - (block (result i32) + (i32.store + (i32.const 1228) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) + ) + ) (if - (i32.eq - (i32.load - (i32.const 1232) + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) ) - (local.get $8) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1220) - ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) ) + (i32.const 1248) ) ) - (i32.store - (i32.const 1232) - (local.get $2) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) (if (i32.ne - (i32.load - (i32.const 1228) + (local.get $6) + (i32.load offset=12 + (local.get $3) ) - (local.get $2) ) - (return) - ) - (i32.store - (i32.const 1228) - (i32.const 0) - ) - (i32.store - (i32.const 1216) - (i32.const 0) + (call $qa) ) - (return) ) ) (if (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $8) + (local.get $1) + (local.get $3) ) (block (i32.store - (i32.const 1216) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1216) + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) ) + (i32.const -1) ) ) ) - (i32.store - (i32.const 1228) - (local.get $2) + (br $do-once4) + ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) - (i32.store - (i32.add - (local.get $2) - (local.get $4) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) ) - (local.get $4) + (local.set $14 + (local.get $0) + ) + (call $qa) ) - (return) ) ) - (local.set $4 - (i32.add - (local.get $6) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) + (i32.store offset=12 + (local.get $3) + (local.get $1) ) - (local.set $14 - (i32.shr_u - (local.get $1) - (i32.const 3) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) - (block $do-once4 - (if - (i32.lt_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $3 - (i32.load offset=12 - (local.get $8) - ) + (if + (i32.eq + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) ) - (if - (i32.ne - (local.tee $5 + ) + ) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 (i32.add - (i32.shl - (local.get $14) - (i32.const 3) + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) ) - (i32.const 1248) - ) - ) - (local.tee $12 - (i32.load offset=8 - (local.get $8) + (i32.const 4) ) ) ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $12) - ) + ) + (local.set $1 + (local.get $3) + ) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) - (call $qa) ) ) ) + ) + (loop $while-in9 (if - (i32.eq - (local.get $3) - (local.get $12) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $14) - ) - (i32.const -1) + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (br $do-once4) ) - ) - (if - (i32.eq - (local.get $3) - (local.get $5) - ) - (local.set $16 - (i32.add + (block + (local.set $0 + (local.get $4) + ) + (local.set $1 (local.get $3) - (i32.const 8) ) + (br $while-in9) ) - (block - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) ) ) - (call $qa) ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - ) - ) - (local.set $16 - (local.get $5) - ) - (call $qa) + ) + (block + (local.set $0 + (local.get $4) ) + (local.set $1 + (local.get $3) + ) + (br $while-in9) ) ) - (i32.store offset=12 - (local.get $12) - (local.get $3) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) - (i32.store - (local.get $16) - (local.get $12) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) ) ) - (block - (local.set $12 - (i32.load offset=24 - (local.get $8) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) + ) + ) + (i32.load + (i32.const 1224) ) ) - (if - (i32.eq - (local.get $8) - (local.tee $3 - (i32.load offset=12 - (local.get $8) - ) - ) + (call $qa) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $1) ) - (block $do-once6 - (local.set $6 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $5 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $5 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $qa) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl (local.tee $0 - (i32.load - (local.get $5) + (i32.load offset=28 + (local.get $6) ) ) - (local.get $0) - (br $do-once6) + (i32.const 2) ) + (i32.const 1512) ) ) - (loop $while-in9 - (if - (local.tee $10 + ) + (local.get $6) + ) + (block + (i32.store + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 1212) + (i32.and (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) + (i32.const 1212) ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) - ) - (br $while-in9) - ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $5) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $5) - (i32.const 0) - ) - (local.set $11 - (local.get $6) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 1224) ) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $6) + (i32.load offset=16 + (local.get $7) ) - (call $qa) ) - (local.set $6 - (local.get $0) + (i32.store offset=16 + (local.get $7) + (local.get $8) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $0) - ) - ) - (call $qa) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (local.set $1 - (local.get $3) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $6) - (local.get $3) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $3) - ) - ) - (call $qa) + ) + ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) ) + (call $qa) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) + ) + ) (if - (local.get $12) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + (call $qa) (block - (if - (i32.eq - (i32.load - (local.tee $7 - (i32.add - (i32.shl - (local.tee $3 - (i32.load offset=28 - (local.get $8) - ) - ) - (i32.const 2) - ) - (i32.const 1512) - ) - ) - ) - (local.get $8) - ) - (block - (i32.store - (local.get $7) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (local.set $0 - (local.get $12) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $12) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $11) - (local.tee $3 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) + (i32.store offset=16 + (local.get $8) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $12) - ) - (local.set $0 + (local.get $0) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $3) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $6) + ) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (call $qa) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 1228) ) + (local.get $2) + ) + (block (i32.store - (i32.add - (local.get $2) - (local.get $4) - ) - (local.get $4) - ) - (if (result i32) - (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $2) - ) - (block - (i32.store - (i32.const 1216) - (local.get $4) - ) - (return) - ) - (local.get $4) + (i32.const 1216) + (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) (i32.const 1248) @@ -7142,25 +6913,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 1208) ) ) - (local.tee $4 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7173,10 +6944,10 @@ (call $qa) (block (local.set $15 - (local.get $4) + (local.get $1) ) - (local.set $13 - (local.get $7) + (local.set $11 + (local.get $3) ) ) ) @@ -7184,18 +6955,18 @@ (i32.store (i32.const 1208) (i32.or - (local.get $4) - (local.get $7) + (local.get $1) + (local.get $3) ) ) (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $13 - (local.get $1) + (local.set $11 + (local.get $0) ) ) ) @@ -7204,50 +6975,50 @@ (local.get $2) ) (i32.store offset=12 - (local.get $13) + (local.get $11) (local.get $2) ) (i32.store offset=8 (local.get $2) - (local.get $13) + (local.get $11) ) (i32.store offset=12 (local.get $2) - (local.get $1) + (local.get $0) ) (return) ) ) - (local.set $4 + (local.set $3 (i32.add (i32.shl - (local.tee $6 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $13 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7267,21 +7038,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $4 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $15 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $7 + (local.tee $4 (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7292,15 +7063,15 @@ ) ) (i32.or - (local.get $1) - (local.get $13) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) (i32.const 15) ) @@ -7312,7 +7083,7 @@ (i32.const 1) ) (i32.shl - (local.get $4) + (local.get $0) (i32.const 1) ) ) @@ -7328,7 +7099,7 @@ ) (i32.store offset=28 (local.get $2) - (local.get $6) + (local.get $0) ) (i32.store offset=20 (local.get $2) @@ -7340,41 +7111,41 @@ ) (if (i32.and - (local.tee $7 - (i32.shl - (i32.const 1) - (local.get $6) - ) - ) - (local.tee $15 + (local.tee $4 (i32.load (i32.const 1212) ) ) + (local.tee $5 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $13 + (local.set $11 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $6) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $6) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load - (local.get $4) + (local.get $3) ) ) (if @@ -7384,17 +7155,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $17 - (local.get $1) + (local.set $16 + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7402,17 +7173,17 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $3 (i32.load - (local.tee $6 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $13) + (local.get $11) (i32.const 31) ) (i32.const 2) @@ -7422,23 +7193,23 @@ ) ) (block - (local.set $13 + (local.set $11 (i32.shl - (local.get $13) + (local.get $11) (i32.const 1) ) ) - (local.set $1 - (local.get $11) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) - (local.set $18 - (local.get $6) + (local.set $17 + (local.get $4) ) - (local.set $19 - (local.get $1) + (local.set $18 + (local.get $0) ) (i32.const 127) ) @@ -7450,7 +7221,7 @@ ) (if (i32.lt_u - (local.get $18) + (local.get $17) (i32.load (i32.const 1224) ) @@ -7458,12 +7229,12 @@ (call $qa) (block (i32.store - (local.get $18) + (local.get $17) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $19) + (local.get $18) ) (i32.store offset=12 (local.get $2) @@ -7480,53 +7251,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $17) - ) - (if - (i32.and - (i32.ge_u - (local.tee $13 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $13) - (local.get $2) - ) - (i32.store offset=8 - (local.get $0) - (local.get $2) - ) - (i32.store offset=8 - (local.get $2) - (local.get $13) - ) - (i32.store offset=12 - (local.get $2) - (local.get $17) - ) - (i32.store offset=24 - (local.get $2) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) ) - (call $qa) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $qa) ) ) ) @@ -7535,17 +7303,17 @@ (i32.store (i32.const 1212) (i32.or - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) ) (i32.store - (local.get $4) + (local.get $3) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $4) + (local.get $3) ) (i32.store offset=12 (local.get $2) @@ -7559,7 +7327,7 @@ ) (i32.store (i32.const 1240) - (local.tee $2 + (local.tee $0 (i32.add (i32.load (i32.const 1240) @@ -7570,14 +7338,14 @@ ) (local.set $0 (if (result i32) - (local.get $2) + (local.get $0) (return) (i32.const 1664) ) ) (loop $while-in17 (if - (local.tee $2 + (local.tee $0 (i32.load (local.get $0) ) @@ -7585,7 +7353,7 @@ (block (local.set $0 (i32.add - (local.get $2) + (local.get $0) (i32.const 8) ) ) @@ -7610,9 +7378,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $r) ) (global.set $r @@ -7623,129 +7389,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 1160) - ) - (block (result i32) - (call $ra - (i32.const 1) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $Pa - (call $ya - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $oa - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 1160) + ) + (block + (call $ra + (i32.const 1) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $Pa - (call $ya - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $oa + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7755,123 +7515,125 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $14 + (local.set $12 (local.get $1) ) - (local.set $15 - (local.get $3) + (local.set $13 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.gt_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (local.set $5 + (if (result i32) + (i32.gt_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) + ) + ) + ) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) + ) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) ) ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) - ) - ) - (local.set $3 - (i32.add - (local.get $3) - (i32.const -1) - ) - ) - ) - (block - (if - (i32.eq + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) - ) - ) - ) - (local.set $3 - (i32.const 2) - ) ) ) - (local.set $9 - (local.get $4) - ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) - (local.set $13 + (local.set $11 (if (result i32) (i32.eq (local.get $1) @@ -7881,9 +7643,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7893,11 +7655,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7930,26 +7692,26 @@ ) (if (result i32) (i32.eq - (local.get $15) + (local.get $13) (i32.const 2) ) (i32.const 0) (i32.sub (local.get $2) (i32.load offset=4 - (local.get $14) + (local.get $12) ) ) ) ) - (local.get $13) + (local.get $11) ) ) ) (global.set $r - (local.get $10) + (local.get $9) ) - (local.get $13) + (local.get $11) ) (func $Wa (; 16 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7957,14 +7719,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 1144) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7972,7 +7730,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7981,13 +7739,13 @@ (call $Xa (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7995,15 +7753,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$a (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -8031,9 +7789,6 @@ (br $label$break$a) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8061,7 +7816,7 @@ (i32.ne (i32.load8_s (i32.add - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8074,7 +7829,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8105,35 +7860,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 1144) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $jb - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8157,48 +7909,48 @@ (i32.const 1144) ) (block - (local.set $1 + (local.set $4 (i32.const 1144) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8209,28 +7961,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8238,35 +7979,36 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 1144) ) ) (func $_a (; 18 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (if (result i32) + (if (local.get $0) - (block $do-once (result i32) - (if - (i32.le_s - (i32.load offset=76 - (local.get $0) + (local.set $0 + (block $do-once (result i32) + (if + (i32.le_s + (i32.load offset=76 + (local.get $0) + ) + (i32.const -1) ) - (i32.const -1) - ) - (br $do-once - (call $$a - (local.get $0) + (br $do-once + (call $$a + (local.get $0) + ) ) ) - ) - (call $$a - (local.get $0) + (call $$a + (local.get $0) + ) ) ) - (block (result i32) + (block (local.set $0 (if (result i32) (i32.load @@ -8289,56 +8031,45 @@ (i32.const 1184) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) + (loop $while-in + (drop + (i32.load offset=76 + (local.get $1) + ) ) - (loop $while-in - (drop - (i32.load offset=76 - (local.get $2) + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - ) - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) ) - (local.set $1 - (i32.or - (call $$a - (local.get $2) - ) + ) + (local.set $0 + (i32.or + (call $$a (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $xa (i32.const 1188) ) - (local.get $1) ) ) + (local.get $0) ) (func $ab (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -8347,7 +8078,6 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) (local.set $3 (global.get $r) ) @@ -8363,18 +8093,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8384,13 +8111,13 @@ (call $Xa (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8404,45 +8131,42 @@ (local.get $6) (i32.const 4) ) - (local.set $1 - (block $do-once (result i32) - (local.set $1 - (local.get $0) + (block $do-once + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=20 + (local.get $0) + ) + ) + (local.get $5) ) (if - (i32.lt_u + (i32.ne (local.tee $2 - (i32.load offset=20 - (local.get $0) - ) - ) - (local.get $5) - ) - (if - (i32.ne - (i32.load8_s offset=75 - (local.get $0) - ) (i32.const 10) ) - (block - (i32.store offset=20 + (i32.load8_s offset=75 + (local.get $0) + ) + ) + (block + (i32.store offset=20 + (local.get $0) + (i32.add (local.get $1) - (i32.add - (local.get $2) - (i32.const 1) - ) - ) - (i32.store8 - (local.get $2) - (i32.const 10) - ) - (br $do-once - (i32.const 10) + (i32.const 1) ) ) + (i32.store8 + (local.get $1) + (i32.const 10) + ) + (br $do-once) ) ) + ) + (local.set $2 (if (result i32) (i32.eq (call_indirect (type $FUNCSIG$iiii) @@ -8472,12 +8196,11 @@ (global.set $r (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $$a (; 20 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) (if (i32.gt_u (i32.load offset=20 @@ -8526,17 +8249,14 @@ (i32.const 3) ) (block (result i32) - (local.set $1 - (local.get $0) - ) (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=4 (local.get $0) ) ) - (local.tee $3 + (local.tee $2 (i32.load offset=8 (local.get $0) ) @@ -8546,8 +8266,8 @@ (call_indirect (type $FUNCSIG$iiii) (local.get $0) (i32.sub + (local.get $1) (local.get $2) - (local.get $3) ) (i32.const 1) (i32.add @@ -8579,7 +8299,7 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.const 0) ) (i32.const 0) @@ -9168,7 +8888,7 @@ ) ) ) - (local.set $3 + (local.set $0 (call $Ra (local.get $0) (local.get $1) @@ -9178,7 +8898,7 @@ (global.set $r (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $Oa (; 29 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/memorygrowth.fromasm.clamp b/test/memorygrowth.fromasm.clamp index dbf763a92..349fddb52 100644 --- a/test/memorygrowth.fromasm.clamp +++ b/test/memorygrowth.fromasm.clamp @@ -103,14 +103,7 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local.set $25 + (local.set $18 (global.get $r) ) (global.set $r @@ -119,1245 +112,1210 @@ (i32.const 16) ) ) - (local.set $13 - (local.get $25) - ) - (local.set $3 - (if (result i32) - (i32.lt_u - (local.get $0) - (i32.const 245) - ) - (block (result i32) - (if - (i32.and - (local.tee $1 - (i32.shr_u - (local.tee $4 - (i32.load - (i32.const 1208) - ) + (if + (i32.lt_u + (local.get $0) + (i32.const 245) + ) + (block + (if + (i32.and + (local.tee $10 + (i32.shr_u + (local.tee $12 + (i32.load + (i32.const 1208) ) - (local.tee $0 - (i32.shr_u - (local.tee $2 - (select - (i32.const 16) - (i32.and - (i32.add - (local.get $0) - (i32.const 11) - ) - (i32.const -8) - ) - (i32.lt_u + ) + (local.tee $2 + (i32.shr_u + (local.tee $4 + (select + (i32.const 16) + (i32.and + (i32.add (local.get $0) (i32.const 11) ) + (i32.const -8) + ) + (i32.lt_u + (local.get $0) + (i32.const 11) ) ) - (i32.const 3) ) + (i32.const 3) ) ) ) - (i32.const 3) ) - (block - (local.set $1 - (local.tee $6 + (i32.const 3) + ) + (block + (local.set $0 + (i32.load + (local.tee $2 (i32.add - (i32.shl - (local.tee $3 - (i32.add - (local.get $0) - (i32.xor - (i32.and - (local.get $1) - (i32.const 1) + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $2) + (i32.xor + (i32.and + (local.get $10) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) ) - (i32.const 1) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.get $6) - (local.tee $8 - (i32.load - (local.tee $2 - (i32.add - (local.tee $14 - (i32.load offset=8 - (local.get $1) - ) - ) - (i32.const 8) - ) - ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) ) + (i32.const -1) ) + (local.get $12) ) - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) + ) + (block + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (local.get $4) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $8) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $4) + (i32.load offset=12 + (local.get $0) ) - (call $qa) ) - (local.set $0 - (local.get $8) - ) - (if - (i32.eq - (local.get $14) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $0) + (local.get $1) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $1) - (local.get $8) - ) + (i32.store offset=8 + (local.get $1) + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.tee $8 - (i32.shl - (local.get $3) - (i32.const 3) - ) + ) + (i32.store offset=4 + (local.get $4) + (i32.or + (local.tee $0 + (i32.shl + (local.get $3) + (i32.const 3) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $2) + (i32.const 1) ) ) - ) - (if (result i32) - (i32.gt_u + (global.set $r + (local.get $18) + ) + (return (local.get $2) - (local.tee $18 - (i32.load - (i32.const 1216) - ) + ) + ) + ) + (if + (i32.gt_u + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1216) ) ) - (block (result i32) - (if - (local.get $1) - (block - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $8 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.tee $6 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $8 - (i32.shl - (i32.const 2) - (local.get $0) - ) + ) + (block + (if + (local.get $10) + (block + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.shl + (i32.const 2) + (local.get $2) ) ) - (local.get $8) - ) - (i32.shl - (local.get $1) - (local.get $0) ) + (local.get $1) + ) + (i32.shl + (local.get $10) + (local.get $2) ) ) ) - (local.get $6) ) - (i32.const -1) + (local.get $1) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $8 - (i32.and - (i32.shr_u - (local.tee $7 - (i32.shr_u - (local.get $8) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $7 - (i32.and - (i32.shr_u - (local.tee $10 - (i32.shr_u - (local.get $7) - (local.get $8) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $10 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $10) - (local.get $7) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $5) + (local.get $2) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $8 - (local.tee $3 + ) + (local.set $1 + (i32.load + (local.tee $6 (i32.add - (i32.shl - (local.tee $16 - (i32.add - (i32.or - (local.tee $3 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.shr_u - (local.get $3) - (local.get $10) + (local.tee $2 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $5 + (i32.add + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $7) + (local.get $5) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $5) + (i32.or + (local.get $2) + (i32.or + (local.get $1) + (local.get $3) + ) + ) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $10) - (i32.or - (local.get $7) - (i32.or - (local.get $6) - (local.get $8) + (i32.shr_u + (local.get $7) + (local.get $6) + ) ) ) + (i32.const 3) ) - ) - (i32.shr_u - (local.get $14) - (local.get $3) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.tee $6 - (i32.load - (local.tee $7 - (i32.add - (local.tee $10 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) + ) + (if + (i32.eq + (local.get $1) + (local.get $3) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $5) ) + (i32.const -1) ) + (local.get $12) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $16) - ) - (i32.const -1) - ) - (local.get $4) + (local.set $13 + (local.get $0) + ) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) ) ) - (local.set $34 - (local.get $18) - ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $1) ) - (call $qa) - ) - (local.set $0 - (local.get $6) ) - (if - (i32.eq - (local.get $10) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $3) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $8) - (local.get $6) - ) - (local.set $34 - (i32.load - (i32.const 1216) - ) + (i32.store offset=8 + (local.get $3) + (local.get $1) + ) + (local.set $13 + (i32.load + (i32.const 1216) ) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $10) - (i32.or + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.store offset=4 + (local.tee $7 + (i32.add (local.get $2) - (i32.const 3) + (local.get $4) ) ) - (i32.store offset=4 - (local.tee $14 - (i32.add - (local.get $2) - (local.get $10) - ) - ) - (i32.or - (local.tee $6 - (i32.sub - (i32.shl - (local.get $16) - (i32.const 3) - ) - (local.get $2) + (i32.or + (local.tee $2 + (i32.sub + (i32.shl + (local.get $5) + (i32.const 3) ) + (local.get $4) ) - (i32.const 1) ) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $6) - (local.get $14) - ) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $7) ) - (if - (local.get $34) - (block - (local.set $3 - (i32.load - (i32.const 1228) - ) + (local.get $2) + ) + (if + (local.get $13) + (block + (local.set $3 + (i32.load + (i32.const 1228) ) - (local.set $4 - (i32.add - (i32.shl - (local.tee $18 - (i32.shr_u - (local.get $34) - (i32.const 3) - ) + ) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $13) + (i32.const 3) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 3) ) + (i32.const 1248) ) - (if - (i32.and - (local.tee $0 - (i32.load - (i32.const 1208) - ) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) ) - (local.tee $1 - (i32.shl - (i32.const 1) - (local.get $18) - ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) ) ) - (if - (i32.lt_u - (local.tee $0 - (i32.load - (local.tee $1 - (i32.add - (local.get $4) - (i32.const 8) - ) + ) + (if + (i32.lt_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $40 - (local.get $1) - ) - (local.set $35 - (local.get $0) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $0) - (local.get $1) - ) - ) - (local.set $40 - (i32.add - (local.get $4) - (i32.const 8) - ) + (local.set $20 + (local.get $1) ) - (local.set $35 + (local.set $8 (local.get $4) ) ) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $4) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $20 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $8 + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $14) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $7) + (i32.store + (local.get $20) + (local.get $3) + ) + (i32.store offset=12 + (local.get $8) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $8) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) ) + (i32.store + (i32.const 1216) + (local.get $2) + ) + (i32.store + (i32.const 1228) + (local.get $7) + ) + (global.set $r + (local.get $18) + ) + (return + (local.get $6) + ) ) - (if (result i32) - (local.tee $14 - (i32.load - (i32.const 1212) - ) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1212) ) - (block - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $14) - ) - (local.get $14) + ) + (block + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $6) - (local.get $14) - ) + ) + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.shr_u + (local.get $1) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $4) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $3 - (i32.and - (i32.shr_u - (local.tee $0 - (i32.shr_u - (local.get $3) - (local.get $4) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $0 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $18 - (i32.load - (i32.add - (i32.shl - (i32.add - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $0) - (local.get $3) - ) + ) + (local.set $7 + (i32.sub + (i32.and + (i32.load offset=4 + (local.tee $0 + (i32.load + (i32.add + (i32.shl + (i32.add + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $8) + (local.get $2) ) - (i32.const 1) ) (i32.const 1) ) + (i32.const 1) ) + ) + (i32.or + (local.get $2) (i32.or (local.get $3) (i32.or - (local.get $4) - (i32.or - (local.get $6) - (local.get $14) - ) + (local.get $0) + (local.get $1) ) ) ) - (i32.shr_u - (local.get $1) - (local.get $0) - ) ) - (i32.const 2) + (i32.shr_u + (local.get $8) + (local.get $7) + ) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (i32.const -8) ) - (local.get $2) - ) - ) - (local.set $3 - (local.tee $1 - (local.get $18) + (i32.const -8) ) + (local.get $4) ) - (loop $while-in - (block $while-out - (local.set $4 - (i32.lt_u - (local.tee $18 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.load offset=16 - (local.get $1) - ) - ) - (local.get $18) - (if (result i32) - (local.tee $4 - (i32.load offset=20 - (local.get $1) - ) - ) - (local.get $4) - (block - (local.set $6 - (local.get $0) - ) - (local.set $9 - (local.get $3) - ) - (br $while-out) - ) - ) - ) - ) - ) - (i32.const -8) - ) - (local.get $2) - ) - ) + ) + (local.set $9 + (local.get $0) + ) + (loop $while-in + (block $while-out + (if + (local.tee $1 + (i32.load offset=16 (local.get $0) ) ) (local.set $0 - (select - (local.get $18) - (local.get $0) - (local.get $4) - ) + (local.get $1) ) - (local.set $3 - (select - (local.get $1) - (local.get $3) - (local.get $4) + (if + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $0) + ) + ) + ) + (block + (local.set $8 + (local.get $9) + ) + (br $while-out) ) ) - (br $while-in) ) - ) - (if - (i32.lt_u - (local.get $9) - (local.tee $3 - (i32.load - (i32.const 1224) + (local.set $1 + (i32.lt_u + (local.tee $3 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) + ) + (local.get $4) + ) ) + (local.get $7) ) ) - (call $qa) + (local.set $7 + (select + (local.get $3) + (local.get $7) + (local.get $1) + ) + ) + (local.set $9 + (select + (local.get $0) + (local.get $9) + (local.get $1) + ) + ) + (br $while-in) ) - (if - (i32.ge_u - (local.get $9) - (local.tee $1 - (i32.add - (local.get $2) - (local.get $9) - ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $14 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (local.set $0 - (i32.load offset=24 - (local.get $9) + (call $qa) + ) + (if + (i32.ge_u + (local.get $8) + (local.tee $12 + (i32.add + (local.get $4) + (local.get $8) + ) ) ) - (if - (i32.eq - (local.tee $7 - (i32.load offset=12 - (local.get $9) - ) + (call $qa) + ) + (local.set $10 + (i32.load offset=24 + (local.get $8) + ) + ) + (if + (i32.eq + (local.get $8) + (local.tee $0 + (i32.load offset=12 + (local.get $8) ) - (local.get $9) ) - (block $do-once4 - (if - (local.tee $16 + ) + (block $do-once4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $9) + (local.get $8) (i32.const 20) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.tee $18 - (i32.load - (local.tee $4 - (i32.add - (local.get $9) - (i32.const 16) - ) - ) - ) - ) - ) - ) ) - (loop $while-in7 - (if - (local.tee $16 + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $18) - (i32.const 20) + (local.get $8) + (i32.const 16) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) - ) ) - (if - (local.tee $16 - (i32.load - (local.tee $10 - (i32.add - (local.get $18) - (i32.const 16) - ) + ) + ) + (loop $while-in7 + (if + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) + ) + (block + (local.set $0 + (local.get $2) ) + (local.set $1 + (local.get $3) + ) + (br $while-in7) ) ) (if - (i32.lt_u - (local.get $4) - (local.get $3) + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) ) - (call $qa) (block - (i32.store - (local.get $4) - (i32.const 0) + (local.set $0 + (local.get $2) ) - (local.set $23 - (local.get $18) + (local.set $1 + (local.get $3) ) + (br $while-in7) ) ) ) - (block - (if - (i32.lt_u - (local.tee $10 - (i32.load offset=8 - (local.get $9) - ) - ) - (local.get $3) - ) - (call $qa) + (if + (i32.lt_u + (local.get $1) + (local.get $14) ) - (local.set $8 - (local.get $10) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $5 + (local.get $0) + ) ) - (if - (i32.ne - (local.get $9) - (i32.load offset=12 + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 (local.get $8) ) ) - (call $qa) + (local.get $14) ) - (local.set $4 - (local.get $7) + (call $qa) + ) + (if + (i32.ne + (local.get $8) + (i32.load offset=12 + (local.get $1) + ) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=8 - (local.get $4) - ) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=8 + (local.get $0) ) - (block - (i32.store offset=12 - (local.get $8) - (local.get $7) - ) - (i32.store offset=8 - (local.get $4) - (local.get $10) - ) - (local.set $23 - (local.get $7) - ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $5 + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (if - (local.get $0) - (block $do-once8 - (if - (i32.eq - (i32.load - (local.tee $3 - (i32.add - (i32.shl - (local.tee $7 - (i32.load offset=28 - (local.get $9) - ) + ) + (if + (local.get $10) + (block $do-once8 + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) - (local.get $9) ) - (block - (i32.store - (local.get $3) - (local.get $23) + (local.get $8) + ) + (block + (i32.store + (local.get $1) + (local.get $5) + ) + (if + (i32.eqz + (local.get $5) ) - (if - (i32.eqz - (local.get $23) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $7) - ) - (i32.const -1) + (block + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (br $do-once8) ) + (br $do-once8) ) ) - (block - (if - (i32.lt_u - (local.get $0) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 1224) ) - (call $qa) - ) - (local.set $4 - (local.get $0) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $4) - (local.get $23) - ) - (i32.store offset=20 - (local.get $0) - (local.get $23) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=16 + (local.get $10) ) ) - (br_if $do-once8 - (i32.eqz - (local.get $23) - ) + (i32.store offset=16 + (local.get $10) + (local.get $5) + ) + (i32.store offset=20 + (local.get $10) + (local.get $5) + ) + ) + (br_if $do-once8 + (i32.eqz + (local.get $5) ) ) ) - (if - (i32.lt_u - (local.get $23) - (local.tee $7 - (i32.load - (i32.const 1224) - ) + ) + (if + (i32.lt_u + (local.get $5) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (i32.store offset=24 - (local.get $23) - (local.get $0) + (call $qa) + ) + (i32.store offset=24 + (local.get $5) + (local.get $10) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $8) + ) ) (if - (local.tee $3 - (i32.load offset=16 - (local.get $9) - ) + (i32.lt_u + (local.get $0) + (local.get $1) ) - (if - (i32.lt_u - (local.get $3) - (local.get $7) + (call $qa) + (block + (i32.store offset=16 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=16 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $8) + ) + ) (if - (local.tee $3 - (i32.load offset=20 - (local.get $9) + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) ) - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) - ) + (call $qa) + (block + (i32.store offset=20 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=20 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) ) ) - (if - (i32.lt_u - (local.get $6) - (i32.const 16) - ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.tee $0 - (i32.add - (local.get $2) - (local.get $6) - ) + ) + (if + (i32.lt_u + (local.get $7) + (i32.const 16) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.tee $0 + (i32.add + (local.get $4) + (local.get $7) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) - (local.get $9) + (local.get $8) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) + (i32.const 1) ) ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $2) - (i32.const 3) - ) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.get $4) + (i32.const 3) ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $6) - (i32.const 1) - ) + ) + (i32.store offset=4 + (local.get $12) + (i32.or + (local.get $7) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $1) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $7) + (local.get $12) + ) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1216) ) - (local.get $6) ) - (if - (local.tee $3 + (block + (local.set $3 (i32.load - (i32.const 1216) + (i32.const 1228) ) ) - (block - (local.set $0 - (i32.load - (i32.const 1228) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 1248) ) - (local.set $3 - (i32.add + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 (i32.shl - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) - ) - (i32.const 3) + (i32.const 1) + (local.get $1) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (local.tee $4 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $10 (i32.load - (i32.const 1208) - ) - ) - ) - (if - (i32.lt_u - (local.tee $10 - (i32.load - (local.tee $4 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $41 - (local.get $4) - ) - (local.set $27 - (local.get $10) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $4) - (local.get $10) - ) - ) - (local.set $41 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.set $21 + (local.get $1) ) - (local.set $27 - (local.get $3) + (local.set $6 + (local.get $4) ) ) ) - (i32.store - (local.get $41) - (local.get $0) - ) - (i32.store offset=12 - (local.get $27) - (local.get $0) - ) - (i32.store offset=8 - (local.get $0) - (local.get $27) - ) - (i32.store offset=12 - (local.get $0) - (local.get $3) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $21 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $6 + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $1) + (i32.store + (local.get $21) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $6) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $9) - (i32.const 8) + (i32.store + (i32.const 1216) + (local.get $7) + ) + (i32.store + (i32.const 1228) + (local.get $12) ) ) ) - (local.get $2) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $8) + (i32.const 8) + ) + ) ) ) - (local.get $2) ) ) + ) + (local.set $4 (if (result i32) (i32.gt_u (local.get $0) @@ -1365,9 +1323,9 @@ ) (i32.const -1) (block $do-once (result i32) - (local.set $0 + (local.set $8 (i32.and - (local.tee $3 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1377,123 +1335,124 @@ ) ) (if (result i32) - (local.tee $10 + (local.tee $39 (i32.load (i32.const 1212) ) ) (block (result i32) - (local.set $4 - (i32.sub - (i32.const 0) - (local.get $0) - ) - ) - (if - (local.tee $14 - (i32.load - (i32.add - (i32.shl - (local.tee $27 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $0) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $16 - (i32.shl - (local.get $7) - (local.tee $3 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) - ) + (local.set $21 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $8) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $0) + (local.tee $5 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $0) - (i32.add - (local.tee $14 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $16 - (i32.and - (i32.shr_u - (i32.add - (local.tee $18 - (i32.shl - (local.get $16) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) - ) - ) - (i32.or - (local.get $3) - (local.get $7) + ) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $8) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $13 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $6) + (local.get $0) ) ) + (i32.const 245760) ) - (i32.shr_u - (i32.shl - (local.get $18) - (local.get $16) - ) - (i32.const 15) - ) + (i32.const 16) ) + (i32.const 2) ) - (i32.const 7) + ) + (i32.or + (local.get $0) + (local.get $5) ) ) - (i32.const 1) ) - (i32.shl - (local.get $14) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $6) + (local.get $13) + ) + (i32.const 15) ) ) ) + (i32.const 7) ) - (i32.const 0) ) + (i32.const 1) ) + (i32.shl + (local.get $0) + (i32.const 1) + ) + ) + ) + ) + (i32.const 0) + ) + ) + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $8) + ) + ) + (if + (local.tee $6 + (i32.load + (i32.add + (i32.shl + (local.get $21) (i32.const 2) ) (i32.const 1512) @@ -1501,107 +1460,100 @@ ) ) (block $label$break$a - (local.set $16 - (local.get $4) - ) - (local.set $18 - (i32.const 0) - ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $0) + (local.get $8) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $27) + (local.get $21) (i32.const 1) ) ) (i32.eq - (local.get $27) + (local.get $21) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $14) + (local.set $5 + (i32.const 0) ) - (local.set $1 + (local.set $10 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $14 + (local.tee $13 (i32.sub - (local.tee $2 + (local.tee $25 (i32.and (i32.load offset=4 - (local.get $7) + (local.get $6) ) (i32.const -8) ) ) - (local.get $0) + (local.get $8) ) ) - (local.get $16) + (local.get $0) ) - (local.set $16 + (local.set $0 (if (result i32) (i32.eq - (local.get $0) - (local.get $2) + (local.get $8) + (local.get $25) ) (block - (local.set $30 - (local.get $14) + (local.set $4 + (local.get $13) ) - (local.set $28 - (local.get $7) + (local.set $12 + (local.get $6) ) - (local.set $31 - (local.get $7) + (local.set $2 + (local.get $6) ) - (local.set $7 + (local.set $9 (i32.const 90) ) (br $label$break$a) ) (block (result i32) - (local.set $6 - (local.get $7) + (local.set $5 + (local.get $6) ) - (local.get $14) + (local.get $13) ) ) ) ) - (local.set $2 + (local.set $13 (select - (local.get $18) - (local.tee $14 + (local.get $20) + (local.tee $13 (i32.load offset=20 - (local.get $7) + (local.get $6) ) ) (i32.or (i32.eqz - (local.get $14) + (local.get $13) ) (i32.eq - (local.get $14) - (local.tee $7 + (local.tee $6 (i32.load (i32.add (i32.add - (local.get $7) + (local.get $6) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $3) + (local.get $9) (i32.const 31) ) (i32.const 2) @@ -1609,40 +1561,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $14 + (local.tee $25 (i32.eqz - (local.get $7) + (local.get $6) ) ) (block (result i32) - (local.set $36 - (local.get $16) + (local.set $19 + (local.get $13) ) - (local.set $32 - (local.get $6) + (local.set $22 + (local.get $5) ) - (local.set $7 + (local.set $9 (i32.const 86) ) - (local.get $2) + (local.get $0) ) (block - (local.set $18 - (local.get $2) + (local.set $20 + (local.get $13) ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $3) + (local.get $9) (i32.xor - (i32.and - (local.get $14) - (i32.const 1) - ) + (local.get $25) (i32.const 1) ) ) @@ -1654,126 +1604,127 @@ ) ) (block - (local.set $36 - (local.get $4) + (local.set $10 + (local.get $0) ) - (local.set $7 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 86) ) - (if - (local.tee $2 - (if (result i32) + (block + (if + (i32.eqz (i32.or - (local.get $1) - (local.get $32) + (local.get $19) + (local.get $22) ) - (local.get $1) - (block (result i32) - (drop - (br_if $do-once - (local.get $0) - (i32.eqz - (local.tee $4 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.shl - (i32.const 2) - (local.get $27) - ) + ) + (block + (drop + (br_if $do-once + (local.get $8) + (i32.eqz + (local.tee $0 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.shl + (i32.const 2) + (local.get $21) ) ) - (local.get $14) ) - (local.get $10) + (local.get $0) ) + (local.get $39) ) ) ) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $4) - ) - (local.get $4) + ) + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $2 - (i32.shr_u - (local.get $14) - (local.get $4) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $6 + (i32.shr_u + (local.get $5) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $2 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $2) - (local.get $14) - ) + ) + (local.set $6 + (i32.and + (i32.shr_u + (local.tee $13 + (i32.shr_u + (local.get $6) + (local.get $5) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $1 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.shr_u - (local.get $1) - (local.get $2) - ) + ) + (local.set $13 + (i32.and + (i32.shr_u + (local.tee $19 + (i32.shr_u + (local.get $13) + (local.get $6) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) + ) + (local.set $19 (i32.load (i32.add (i32.shl (i32.add (i32.or - (local.tee $6 + (local.tee $20 (i32.and (i32.shr_u - (local.tee $3 + (local.tee $19 (i32.shr_u - (local.get $6) - (local.get $1) + (local.get $19) + (local.get $13) ) ) (i32.const 1) @@ -1782,19 +1733,19 @@ ) ) (i32.or - (local.get $1) + (local.get $13) (i32.or - (local.get $2) + (local.get $6) (i32.or - (local.get $4) - (local.get $14) + (local.get $0) + (local.get $5) ) ) ) ) (i32.shr_u - (local.get $3) - (local.get $6) + (local.get $19) + (local.get $20) ) ) (i32.const 2) @@ -1805,131 +1756,119 @@ ) ) ) - (block - (local.set $30 - (local.get $36) - ) - (local.set $28 - (local.get $2) - ) - (local.set $31 - (local.get $32) - ) - (local.set $7 - (i32.const 90) - ) - ) - (block - (local.set $17 - (local.get $36) + (if + (local.get $19) + (block + (local.set $4 + (local.get $10) + ) + (local.set $12 + (local.get $19) + ) + (local.set $2 + (local.get $22) + ) + (local.set $9 + (i32.const 90) + ) ) - (local.set $12 - (local.get $32) + (block + (local.set $15 + (local.get $10) + ) + (local.set $11 + (local.get $22) + ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 90) - ) - (local.set $17 - (loop $while-in16 (result i32) - (local.set $7 - (i32.const 0) + (if (result i32) + (block (result i32) + (if + (i32.eq + (local.get $9) + (i32.const 90) ) - (local.set $3 - (i32.lt_u - (local.tee $6 - (i32.sub - (i32.and - (i32.load offset=4 - (local.get $28) + (local.set $11 + (loop $while-in16 (result i32) + (local.set $9 + (i32.const 0) + ) + (local.set $0 + (i32.lt_u + (local.tee $5 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $12) + ) + (i32.const -8) + ) + (local.get $8) ) - (i32.const -8) ) - (local.get $0) + (local.get $4) ) ) - (local.get $30) - ) - ) - (local.set $1 - (select - (local.get $6) - (local.get $30) - (local.get $3) - ) - ) - (local.set $6 - (select - (local.get $28) - (local.get $31) - (local.get $3) - ) - ) - (if - (local.tee $3 - (i32.load offset=16 - (local.get $28) - ) - ) - (block - (local.set $30 - (local.get $1) - ) - (local.set $28 - (local.get $3) - ) - (local.set $31 - (local.get $6) + (local.set $4 + (select + (local.get $5) + (local.get $4) + (local.get $0) + ) ) - (br $while-in16) - ) - ) - (if (result i32) - (local.tee $28 - (i32.load offset=20 - (local.get $28) + (local.set $2 + (select + (local.get $12) + (local.get $2) + (local.get $0) + ) ) - ) - (block - (local.set $30 - (local.get $1) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $12) + ) + ) + (block + (local.set $12 + (local.get $0) + ) + (br $while-in16) + ) ) - (local.set $31 - (local.get $6) + (br_if $while-in16 + (local.tee $12 + (i32.load offset=20 + (local.get $12) + ) + ) ) - (br $while-in16) - ) - (block (result i32) - (local.set $12 - (local.get $6) + (local.set $15 + (local.get $4) ) - (local.get $1) + (local.get $2) ) ) ) + (local.get $11) ) - ) - (if (result i32) - (local.get $12) (if (result i32) (i32.lt_u - (local.get $17) + (local.get $15) (i32.sub (i32.load (i32.const 1216) ) - (local.get $0) + (local.get $8) ) ) (block (if (i32.lt_u - (local.get $12) - (local.tee $10 + (local.get $11) + (local.tee $7 (i32.load (i32.const 1224) ) @@ -1939,104 +1878,98 @@ ) (if (i32.ge_u - (local.get $12) - (local.tee $6 + (local.get $11) + (local.tee $2 (i32.add - (local.get $0) - (local.get $12) + (local.get $8) + (local.get $11) ) ) ) (call $qa) ) - (local.set $1 + (local.set $5 (i32.load offset=24 - (local.get $12) + (local.get $11) ) ) (if (i32.eq - (local.tee $3 + (local.get $11) + (local.tee $0 (i32.load offset=12 - (local.get $12) + (local.get $11) ) ) - (local.get $12) ) (block $do-once17 - (local.set $3 - (if (result i32) - (local.tee $4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $18 - (local.get $4) - ) - (local.get $2) - ) - (if (result i32) - (local.tee $18 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $14 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 16) ) ) ) ) - (local.get $14) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) @@ -2044,17 +1977,17 @@ ) (if (i32.lt_u - (local.get $3) - (local.get $10) + (local.get $1) + (local.get $7) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $1) (i32.const 0) ) - (local.set $21 - (local.get $18) + (local.set $16 + (local.get $0) ) ) ) @@ -2062,48 +1995,42 @@ (block (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $12) + (local.get $11) ) ) - (local.get $10) + (local.get $7) ) (call $qa) ) - (local.set $16 - (local.get $2) - ) (if (i32.ne - (local.get $12) + (local.get $11) (i32.load offset=12 - (local.get $2) + (local.get $1) ) ) (call $qa) ) - (local.set $4 - (local.get $3) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=8 - (local.get $3) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $4) - (local.get $2) + (local.get $0) + (local.get $1) ) - (local.set $21 - (local.get $3) + (local.set $16 + (local.get $0) ) ) (call $qa) @@ -2111,17 +2038,17 @@ ) ) (if - (local.get $1) + (local.get $5) (block $do-once21 (if (i32.eq (i32.load - (local.tee $10 + (local.tee $1 (i32.add (i32.shl - (local.tee $3 + (local.tee $0 (i32.load offset=28 - (local.get $12) + (local.get $11) ) ) (i32.const 2) @@ -2130,16 +2057,16 @@ ) ) ) - (local.get $12) + (local.get $11) ) (block (i32.store - (local.get $10) - (local.get $21) + (local.get $1) + (local.get $16) ) (if (i32.eqz - (local.get $21) + (local.get $16) ) (block (i32.store @@ -2151,7 +2078,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $0) ) (i32.const -1) ) @@ -2164,43 +2091,40 @@ (block (if (i32.lt_u - (local.get $1) + (local.get $5) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=16 - (local.get $1) + (local.get $5) ) ) (i32.store offset=16 - (local.get $2) - (local.get $21) + (local.get $5) + (local.get $16) ) (i32.store offset=20 - (local.get $1) - (local.get $21) + (local.get $5) + (local.get $16) ) ) (br_if $do-once21 (i32.eqz - (local.get $21) + (local.get $16) ) ) ) ) (if (i32.lt_u - (local.get $21) - (local.tee $3 + (local.get $16) + (local.tee $1 (i32.load (i32.const 1224) ) @@ -2209,42 +2133,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $21) - (local.get $1) + (local.get $16) + (local.get $5) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=16 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) - (local.get $3) + (local.get $0) + (local.get $1) ) (call $qa) (block (i32.store offset=16 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=20 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) + (local.get $0) (i32.load (i32.const 1224) ) @@ -2252,12 +2176,12 @@ (call $qa) (block (i32.store offset=20 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) @@ -2266,30 +2190,29 @@ ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 16) ) (block (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.tee $1 + (local.tee $0 (i32.add - (local.get $0) - (local.get $17) + (local.get $8) + (local.get $15) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $1) - (local.get $12) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $11) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2300,42 +2223,42 @@ ) (block $do-once25 (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.get $0) + (local.get $8) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $2) (i32.or - (local.get $17) + (local.get $15) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $17) + (local.get $2) + (local.get $15) ) - (local.get $17) + (local.get $15) ) - (local.set $10 + (local.set $1 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 3) ) ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $10) + (local.get $1) (i32.const 3) ) (i32.const 1248) @@ -2343,25 +2266,25 @@ ) (if (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $10) - ) - ) - (local.tee $3 + (local.tee $4 (i32.load (i32.const 1208) ) ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) ) (if (i32.lt_u - (local.tee $3 + (local.tee $4 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -2373,11 +2296,11 @@ ) (call $qa) (block - (local.set $9 - (local.get $2) + (local.set $29 + (local.get $1) ) - (local.set $8 - (local.get $3) + (local.set $14 + (local.get $4) ) ) ) @@ -2385,70 +2308,70 @@ (i32.store (i32.const 1208) (i32.or - (local.get $2) - (local.get $3) + (local.get $1) + (local.get $4) ) ) - (local.set $9 + (local.set $29 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $8 - (local.get $1) + (local.set $14 + (local.get $0) ) ) ) (i32.store - (local.get $9) - (local.get $6) + (local.get $29) + (local.get $2) ) (i32.store offset=12 - (local.get $8) - (local.get $6) + (local.get $14) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $8) + (local.get $2) + (local.get $14) ) (i32.store offset=12 - (local.get $6) - (local.get $1) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $14 + (local.set $1 (i32.add (i32.shl - (local.tee $16 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $17) + (local.get $15) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $2 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $3 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2468,21 +2391,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $17) + (local.get $15) (i32.add - (local.tee $14 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $2 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $10 + (local.tee $4 (i32.shl - (local.get $2) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2493,15 +2416,15 @@ ) ) (i32.or + (local.get $0) (local.get $1) - (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $10) - (local.get $2) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2513,7 +2436,7 @@ (i32.const 1) ) (i32.shl - (local.get $14) + (local.get $0) (i32.const 1) ) ) @@ -2528,29 +2451,29 @@ ) ) (i32.store offset=28 - (local.get $6) - (local.get $16) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $6) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $6) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $2 + (local.tee $4 (i32.load (i32.const 1212) ) ) - (local.tee $10 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $16) + (local.get $0) ) ) ) @@ -2559,71 +2482,71 @@ (i32.store (i32.const 1212) (i32.or - (local.get $2) - (local.get $10) + (local.get $3) + (local.get $4) ) ) (i32.store - (local.get $14) - (local.get $6) + (local.get $1) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $14) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $10 + (local.set $3 (i32.shl - (local.get $17) + (local.get $15) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $16) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $16) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $2 + (local.set $0 (i32.load - (local.get $14) + (local.get $1) ) ) (if (i32.eq - (local.tee $7 + (local.tee $9 (loop $while-in28 (result i32) (block $while-out27 (result i32) (if (i32.eq - (local.get $17) + (local.get $15) (i32.and (i32.load offset=4 - (local.get $2) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $19 - (local.get $2) + (local.set $30 + (local.get $0) ) (br $while-out27 (i32.const 148) @@ -2631,17 +2554,17 @@ ) ) (if (result i32) - (local.tee $3 + (local.tee $1 (i32.load - (local.tee $14 + (local.tee $4 (i32.add (i32.add - (local.get $2) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $10) + (local.get $3) (i32.const 31) ) (i32.const 2) @@ -2651,23 +2574,23 @@ ) ) (block - (local.set $10 + (local.set $3 (i32.shl - (local.get $10) + (local.get $3) (i32.const 1) ) ) - (local.set $2 - (local.get $3) + (local.set $0 + (local.get $1) ) (br $while-in28) ) (block (result i32) - (local.set $22 - (local.get $14) + (local.set $31 + (local.get $4) ) - (local.set $15 - (local.get $2) + (local.set $40 + (local.get $0) ) (i32.const 145) ) @@ -2679,7 +2602,7 @@ ) (if (i32.lt_u - (local.get $22) + (local.get $31) (i32.load (i32.const 1224) ) @@ -2687,123 +2610,120 @@ (call $qa) (block (i32.store - (local.get $22) - (local.get $6) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $15) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $19) - ) - (if - (i32.and - (i32.ge_u - (local.tee $10 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $3 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $30) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $3) + (local.tee $4 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $10) - (local.get $6) - ) - (i32.store offset=8 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $6) - (local.get $10) - ) - (i32.store offset=12 - (local.get $6) - (local.get $19) - ) - (i32.store offset=24 - (local.get $6) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $30) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) ) - (call $qa) ) + (call $qa) ) ) ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (return (i32.add - (local.get $12) + (local.get $11) (i32.const 8) ) ) ) - (local.get $0) + (local.get $8) ) - (local.get $0) + (local.get $8) ) ) - (local.get $0) + (local.get $8) ) ) ) ) ) - (block $folding-inner0 + (block $folding-inner1 (if (i32.ge_u - (local.tee $12 + (local.tee $2 (i32.load (i32.const 1216) ) ) - (local.get $3) + (local.get $4) ) (block - (local.set $15 + (local.set $0 (i32.load (i32.const 1228) ) ) (if (i32.gt_u - (local.tee $19 + (local.tee $1 (i32.sub - (local.get $12) - (local.get $3) + (local.get $2) + (local.get $4) ) ) (i32.const 15) @@ -2811,35 +2731,35 @@ (block (i32.store (i32.const 1228) - (local.tee $22 + (local.tee $3 (i32.add - (local.get $3) - (local.get $15) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 1216) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $22) + (local.get $3) (i32.or - (local.get $19) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $19) - (local.get $22) + (local.get $1) + (local.get $3) ) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $3) + (local.get $4) (i32.const 3) ) ) @@ -2854,1987 +2774,1914 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $12) + (local.get $2) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $12) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $2) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) ) ) ) - (br $folding-inner0) + (br $folding-inner1) ) ) - (if - (i32.gt_u - (local.tee $15 - (i32.load - (i32.const 1220) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1220) - (local.tee $19 - (i32.sub - (local.get $15) - (local.get $3) - ) + (local.set $0 + (local.get $18) + ) + (if + (i32.eqz + (i32.load + (i32.const 1680) ) ) - (i32.store - (i32.const 1232) - (local.tee $12 - (i32.add - (local.get $3) - (local.tee $15 - (i32.load - (i32.const 1232) - ) - ) - ) + (block + (i32.store + (i32.const 1688) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $19) - (i32.const 1) + (i32.store + (i32.const 1684) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $15) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1692) + (i32.const -1) ) - ) - (br $folding-inner0) - ) - ) - (if - (i32.eqz - (i32.load - (i32.const 1680) - ) - ) - (block - (i32.store - (i32.const 1688) - (i32.const 4096) - ) - (i32.store - (i32.const 1684) - (i32.const 4096) - ) - (i32.store - (i32.const 1692) - (i32.const -1) - ) - (i32.store - (i32.const 1696) - (i32.const -1) - ) - (i32.store - (i32.const 1700) - (i32.const 0) - ) - (i32.store - (i32.const 1652) - (i32.const 0) - ) - (i32.store - (local.get $13) - (local.tee $15 - (i32.xor - (i32.and - (local.get $13) - (i32.const -16) + (i32.store + (i32.const 1696) + (i32.const -1) + ) + (i32.store + (i32.const 1700) + (i32.const 0) + ) + (i32.store + (i32.const 1652) + (i32.const 0) + ) + (i32.store + (local.get $0) + (local.tee $0 + (i32.xor + (i32.and + (local.get $0) + (i32.const -16) + ) + (i32.const 1431655768) ) - (i32.const 1431655768) ) ) - ) - (i32.store - (i32.const 1680) - (local.get $15) + (i32.store + (i32.const 1680) + (local.get $0) + ) ) ) - ) - (local.set $15 - (i32.add - (local.get $3) - (i32.const 48) - ) - ) - (if - (i32.le_u - (local.tee $13 - (i32.and - (local.tee $12 - (i32.add - (local.tee $13 - (i32.load - (i32.const 1688) + (if + (i32.le_u + (local.tee $5 + (i32.and + (local.tee $10 + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) ) - ) - (local.tee $19 - (i32.add - (local.get $3) - (i32.const 47) + (local.tee $6 + (i32.add + (local.get $4) + (i32.const 47) + ) ) ) ) - ) - (local.tee $22 - (i32.sub - (i32.const 0) - (local.get $13) + (local.tee $12 + (i32.sub + (i32.const 0) + (local.get $0) + ) ) ) ) + (local.get $4) ) - (local.get $3) - ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) - ) - ) - (if - (local.tee $17 - (i32.load - (i32.const 1648) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) (if - (i32.or - (i32.le_u - (local.tee $8 - (i32.add - (local.get $13) - (local.tee $16 - (i32.load - (i32.const 1640) + (local.tee $0 + (i32.load + (i32.const 1648) + ) + ) + (if + (i32.or + (i32.le_u + (local.tee $8 + (i32.add + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 1640) + ) ) ) ) + (local.get $2) + ) + (i32.gt_u + (local.get $8) + (local.get $0) ) - (local.get $16) ) - (i32.gt_u - (local.get $8) - (local.get $17) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) + ) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) - ) - (if - (block (result i32) - (if - (i32.eq - (local.tee $7 - (if (result i32) - (i32.and - (i32.load - (i32.const 1652) - ) - (i32.const 4) + (if + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 1652) ) - (i32.const 188) - (block $label$break$b (result i32) - (if - (local.tee $17 - (i32.load - (i32.const 1232) - ) + (i32.const 4) + ) + (i32.const 188) + (block $label$break$b (result i32) + (if + (local.tee $2 + (i32.load + (i32.const 1232) ) - (block $label$break$c - (local.set $8 - (i32.const 1656) - ) - (loop $while-in32 - (block $while-out31 - (if - (i32.le_u - (local.tee $16 - (i32.load - (local.get $8) - ) + ) + (block $label$break$c + (local.set $14 + (i32.const 1656) + ) + (loop $while-in32 + (block $while-out31 + (if + (i32.le_u + (local.tee $8 + (i32.load + (local.get $14) ) - (local.get $17) ) - (if - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $8) - (i32.const 4) - ) + (local.get $2) + ) + (if + (i32.gt_u + (i32.add + (i32.load + (local.tee $0 + (i32.add + (local.get $14) + (i32.const 4) ) ) - (local.get $16) - ) - (local.get $17) - ) - (block - (local.set $0 - (local.get $8) ) - (local.set $4 - (local.get $9) - ) - (br $while-out31) + (local.get $8) ) + (local.get $2) ) - ) - (br_if $while-in32 - (local.tee $8 - (i32.load offset=8 - (local.get $8) + (block + (local.set $8 + (local.get $0) ) + (br $while-out31) ) ) - (local.set $7 - (i32.const 171) + ) + (br_if $while-in32 + (local.tee $14 + (i32.load offset=8 + (local.get $14) + ) ) - (br $label$break$c) ) + (local.set $9 + (i32.const 171) + ) + (br $label$break$c) ) - (if - (i32.lt_u - (local.tee $8 - (i32.and - (local.get $22) - (i32.sub - (local.get $12) - (i32.load - (i32.const 1220) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $12) + (i32.sub + (local.get $10) + (i32.load + (i32.const 1220) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $ta - (local.get $8) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $ta + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $0) - ) - (i32.load - (local.get $4) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $14) ) - (block - (local.set $20 - (local.get $9) - ) - (local.set $26 - (local.get $8) - ) - (br $label$break$b - (i32.const 191) - ) + (i32.load + (local.get $8) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $11 - (local.get $9) - ) - (local.set $5 - (local.get $8) + (local.set $3 + (local.get $0) ) (local.set $7 - (i32.const 181) + (local.get $2) ) + (br $label$break$b + (i32.const 191) + ) + ) + ) + (block + (local.set $24 + (local.get $0) + ) + (local.set $1 + (local.get $2) + ) + (local.set $9 + (i32.const 181) ) ) ) ) ) - (local.set $7 - (i32.const 171) - ) + ) + (local.set $9 + (i32.const 171) + ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 171) ) (if - (i32.eq - (local.get $7) - (i32.const 171) - ) - (if - (i32.ne - (local.tee $17 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $2 + (call $ta + (i32.const 0) ) - (i32.const -1) ) - (block $do-once33 - (local.set $2 - (if (result i32) - (i32.and - (local.tee $0 - (local.get $17) - ) - (local.tee $9 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1684) + (i32.const -1) + ) + (block $do-once33 + (local.set $8 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $2) + ) + (local.tee $10 + (i32.add + (local.tee $8 + (i32.load + (i32.const 1684) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $13) - (local.get $0) - ) - (i32.and - (i32.add + (i32.add + (i32.sub + (local.get $5) (local.get $0) - (local.get $9) ) - (i32.sub - (i32.const 0) - (local.get $8) + (i32.and + (i32.add + (local.get $0) + (local.get $10) + ) + (i32.sub + (i32.const 0) + (local.get $8) + ) ) ) + (local.get $5) ) - (local.get $13) ) - ) - (local.set $0 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1640) - ) + (local.tee $10 + (i32.load + (i32.const 1640) ) - (local.get $2) ) ) - (if - (i32.and - (i32.lt_u - (local.get $2) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $2) - (local.get $3) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (if - (local.tee $9 - (i32.load - (i32.const 1648) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (if + (local.tee $12 + (i32.load + (i32.const 1648) + ) + ) + (br_if $do-once33 + (i32.or + (i32.le_u + (local.get $8) + (local.get $10) + ) + (i32.gt_u + (local.get $8) + (local.get $12) ) ) - (br_if $do-once33 - (i32.or - (i32.le_u - (local.get $0) - (local.get $8) - ) - (i32.gt_u + ) + ) + (local.set $1 + (if (result i32) + (i32.eq + (local.get $2) + (local.tee $24 + (call $ta (local.get $0) - (local.get $9) ) ) ) - ) - (local.set $5 - (if (result i32) - (i32.eq - (local.get $17) - (local.tee $9 - (call $ta - (local.get $2) - ) - ) + (block + (local.set $3 + (local.get $2) ) - (block - (local.set $20 - (local.get $17) - ) - (local.set $26 - (local.get $2) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $0) ) - (block (result i32) - (local.set $11 - (local.get $9) - ) - (local.set $7 - (i32.const 181) - ) - (local.get $2) + (br $label$break$b + (i32.const 191) ) ) + (block (result i32) + (local.set $9 + (i32.const 181) + ) + (local.get $0) + ) ) ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 181) + ) + (if + (i32.eq + (local.get $9) + (i32.const 181) + ) + (block $label$break$d + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $1) + ) ) - (block $label$break$d - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $5) + (if + (i32.and + (i32.and + (i32.ne + (local.get $24) + (i32.const -1) + ) + (i32.lt_u + (local.get $1) + (i32.const 2147483647) + ) + ) + (i32.gt_u + (local.get $22) + (local.get $1) ) ) - (local.set $1 - (if (result i32) - (i32.and + (if + (i32.lt_u + (local.tee $0 (i32.and - (i32.ne - (local.get $11) - (i32.const -1) + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) + ) + (i32.sub + (local.get $6) + (local.get $1) + ) ) - (i32.lt_u - (local.get $5) - (i32.const 2147483647) + (i32.sub + (i32.const 0) + (local.get $0) ) ) - (i32.gt_u - (local.get $15) - (local.get $5) - ) ) + (i32.const 2147483647) + ) + (local.set $1 (if (result i32) - (i32.lt_u - (local.tee $0 - (i32.and - (i32.add - (local.tee $17 - (i32.load - (i32.const 1688) - ) - ) - (i32.sub - (local.get $19) - (local.get $5) - ) - ) - (i32.sub - (i32.const 0) - (local.get $17) - ) - ) + (i32.eq + (call $ta + (local.get $0) ) - (i32.const 2147483647) + (i32.const -1) ) - (if (result i32) - (i32.eq + (block + (drop (call $ta - (local.get $0) - ) - (i32.const -1) - ) - (block - (drop - (call $ta - (local.get $9) - ) + (local.get $2) ) - (br $label$break$d) - ) - (i32.add - (local.get $0) - (local.get $5) ) + (br $label$break$d) + ) + (i32.add + (local.get $0) + (local.get $1) ) - (local.get $5) ) - (local.get $5) ) ) - (if - (i32.ne - (local.get $11) - (i32.const -1) + ) + (if + (i32.ne + (local.get $24) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $24) ) - (block - (local.set $20 - (local.get $11) - ) - (local.set $26 - (local.get $1) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $1) + ) + (br $label$break$b + (i32.const 191) ) ) ) ) - (i32.store - (i32.const 1652) - (i32.or - (i32.load - (i32.const 1652) - ) - (i32.const 4) + ) + (i32.store + (i32.const 1652) + (i32.or + (i32.load + (i32.const 1652) ) + (i32.const 4) ) - (i32.const 188) ) + (i32.const 188) ) ) - (i32.const 188) + ) + (i32.const 188) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 2147483647) ) (if - (i32.lt_u - (local.get $13) - (i32.const 2147483647) - ) - (if + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $1 - (call $ta - (local.get $13) - ) - ) - (i32.const -1) - ) - (i32.ne - (local.tee $13 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $0 + (call $ta + (local.get $5) ) - (i32.const -1) ) + (i32.const -1) ) - (i32.lt_u - (local.get $1) - (local.get $13) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.sub - (local.get $13) - (local.get $1) + (i32.ne + (local.tee $1 + (call $ta + (i32.const 0) ) ) - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.const -1) ) - (block - (local.set $20 + ) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + ) + (if + (i32.gt_u + (local.tee $1 + (i32.sub (local.get $1) + (local.get $0) ) - (local.set $26 - (local.get $11) - ) - (local.set $7 - (i32.const 191) - ) + ) + (i32.add + (local.get $4) + (i32.const 40) + ) + ) + (block + (local.set $7 + (local.get $1) + ) + (local.set $9 + (i32.const 191) + ) + (local.set $3 + (local.get $0) ) ) ) ) ) + ) + (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 191) ) - ) - (block - (i32.store - (i32.const 1640) - (local.tee $11 - (i32.add - (local.get $26) - (i32.load - (i32.const 1640) + (block + (i32.store + (i32.const 1640) + (local.tee $0 + (i32.add + (local.get $7) + (i32.load + (i32.const 1640) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $11) - (i32.load - (i32.const 1644) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 1644) + ) ) - ) - (i32.store - (i32.const 1644) - (local.get $11) - ) - ) - (if - (local.tee $11 - (i32.load - (i32.const 1232) + (i32.store + (i32.const 1644) + (local.get $0) ) ) - (block $do-once38 - (local.set $5 - (i32.const 1656) + (if + (local.tee $6 + (i32.load + (i32.const 1232) + ) ) - (loop $do-in41 - (block $do-out40 - (if - (i32.eq - (i32.add - (local.tee $19 - (i32.load - (local.tee $13 - (i32.add - (local.get $5) - (i32.const 4) - ) + (block $do-once38 + (local.set $1 + (i32.const 1656) + ) + (loop $do-in41 + (block $do-out40 + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) ) ) - ) - (local.tee $1 - (i32.load - (local.get $5) + (local.tee $5 + (i32.load + (local.tee $2 + (i32.add + (local.get $1) + (i32.const 4) + ) + ) + ) ) ) + (local.get $3) ) - (local.get $20) - ) - (block - (local.set $48 - (local.get $1) - ) - (local.set $49 - (local.get $13) - ) - (local.set $50 - (local.get $19) - ) - (local.set $51 - (local.get $5) - ) - (local.set $7 - (i32.const 201) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $2) + ) + (local.set $43 + (local.get $5) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 201) + ) + (br $do-out40) ) - (br $do-out40) ) - ) - (br_if $do-in41 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $do-in41 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 201) - ) (if - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $51) - ) - (i32.const 8) - ) + (i32.eq + (local.get $9) + (i32.const 201) ) (if - (i32.and - (i32.lt_u - (local.get $11) - (local.get $20) - ) - (i32.ge_u - (local.get $11) - (local.get $48) + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) ) ) - (block - (i32.store - (local.get $49) - (i32.add - (local.get $26) - (local.get $50) + (if + (i32.and + (i32.lt_u + (local.get $6) + (local.get $3) + ) + (i32.ge_u + (local.get $6) + (local.get $41) ) ) - (local.set $5 - (i32.add - (local.tee $19 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $11) - (i32.const 8) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $7) + (local.get $43) + ) + ) + (local.set $0 + (i32.add + (local.get $6) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $6) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) ) - (local.get $11) ) - ) - (local.set $13 - (i32.add - (i32.load - (i32.const 1220) - ) - (i32.sub - (local.get $26) - (local.get $19) + (local.set $1 + (i32.add + (i32.load + (i32.const 1220) + ) + (i32.sub + (local.get $7) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store - (i32.const 1220) - (local.get $13) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $13) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $5) - (local.get $13) + (i32.store + (i32.const 1220) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) + (br $do-once38) ) - (br $do-once38) ) ) ) - ) - (local.set $6 - (if (result i32) + (if (i32.lt_u - (local.get $20) - (local.tee $13 + (local.get $3) + (local.tee $2 (i32.load (i32.const 1224) ) ) ) - (block (result i32) + (block (i32.store (i32.const 1224) - (local.get $20) + (local.get $3) + ) + (local.set $2 + (local.get $3) ) - (local.get $20) ) - (local.get $13) ) - ) - (local.set $13 - (i32.add - (local.get $20) - (local.get $26) + (local.set $0 + (i32.add + (local.get $3) + (local.get $7) + ) ) - ) - (local.set $5 - (i32.const 1656) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $13) - (i32.load - (local.get $5) - ) - ) - (block - (local.set $52 - (local.get $5) - ) - (local.set $37 - (local.get $5) + (local.set $1 + (i32.const 1656) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $7 - (i32.const 209) + (block + (local.set $45 + (local.get $1) + ) + (local.set $26 + (local.get $1) + ) + (local.set $9 + (i32.const 209) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) - ) - (local.set $29 - (i32.const 1656) + (local.set $23 + (i32.const 1656) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 209) - ) - (local.set $29 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $37) - ) - (i32.const 8) - ) - (i32.const 1656) - (block - (i32.store - (local.get $52) - (local.get $20) + (if + (i32.eq + (local.get $9) + (i32.const 209) + ) + (local.set $23 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $26) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $37) - (i32.add + (i32.const 1656) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 (local.get $26) - (i32.load offset=4 - (local.get $37) + (i32.add + (local.get $7) + (i32.load offset=4 + (local.get $26) + ) ) ) - ) - (local.set $19 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $20) - (i32.const 8) + (local.set $7 + (i32.add + (local.get $4) + (local.tee $10 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) - (local.get $20) ) - ) - (local.set $1 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $5 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) + (local.get $10) ) + (local.get $4) ) - (local.get $13) ) - ) - (local.set $5 - (i32.add - (local.get $3) - (local.get $19) - ) - ) - (local.set $15 - (i32.sub - (i32.sub - (local.get $1) - (local.get $19) + (i32.store offset=4 + (local.get $10) + (i32.or + (local.get $4) + (i32.const 3) ) - (local.get $3) ) - ) - (i32.store offset=4 - (local.get $19) - (i32.or - (local.get $3) - (i32.const 3) - ) - ) - (if - (i32.eq - (local.get $1) - (local.get $11) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1220) + (if + (i32.eq + (local.get $5) + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1220) + ) ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $7) ) - ) - ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 1228) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) - (local.get $1) ) - (block - (i32.store - (i32.const 1216) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1216) - ) - ) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 1228) ) - ) - (i32.store - (i32.const 1228) (local.get $5) ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (block + (i32.store + (i32.const 1216) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1216) + ) + ) + ) ) - ) - (i32.store - (i32.add - (local.get $2) - (local.get $5) + (i32.store + (i32.const 1228) + (local.get $7) ) - (local.get $2) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $2 - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $4 - (i32.and - (local.get $2) - (i32.const -8) + (i32.store + (i32.add + (local.get $0) + (local.get $7) + ) + (local.get $0) ) + (br $do-once44) ) - (local.set $0 - (i32.shr_u - (local.get $2) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $5) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$e - (if - (i32.lt_u - (local.get $2) - (i32.const 256) + (block (result i32) + (local.set $12 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $12 - (i32.load offset=12 - (local.get $1) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$e (if - (i32.ne - (local.tee $9 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $5) ) ) - (local.tee $22 - (i32.load offset=8 - (local.get $1) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $5) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 1248) + ) + ) + ) + (block $do-once47 + (if + (i32.lt_u + (local.get $4) + (local.get $2) + ) + (call $qa) + ) + (br_if $do-once47 + (i32.eq + (local.get $5) + (i32.load offset=12 + (local.get $4) + ) + ) + ) + (call $qa) ) ) - ) - (block $do-once47 (if - (i32.lt_u - (local.get $22) - (local.get $6) + (i32.eq + (local.get $1) + (local.get $4) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - (call $qa) ) - (br_if $do-once47 + (if (i32.eq + (local.get $0) (local.get $1) - (i32.load offset=12 - (local.get $22) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - ) - (call $qa) - ) - ) - (if - (i32.eq - (local.get $12) - (local.get $22) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) + (block $do-once49 + (if + (i32.lt_u + (local.get $1) + (local.get $2) + ) + (call $qa) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (if + (i32.eq + (local.get $5) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once49) ) - (i32.const -1) ) + (call $qa) ) ) - (br $label$break$e) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $12) - ) - (local.set $42 - (i32.add - (local.get $12) - (i32.const 8) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) ) ) - (block $do-once49 - (if - (i32.lt_u - (local.get $12) - (local.get $6) + (block + (local.set $6 + (i32.load offset=24 + (local.get $5) ) - (call $qa) ) (if (i32.eq - (local.get $1) - (i32.load - (local.tee $0 - (i32.add - (local.get $12) - (i32.const 8) - ) + (local.get $5) + (local.tee $0 + (i32.load offset=12 + (local.get $5) ) ) ) - (block - (local.set $42 - (local.get $0) - ) - (br $do-once49) - ) - ) - (call $qa) - ) - ) - (i32.store offset=12 - (local.get $22) - (local.get $12) - ) - (i32.store - (local.get $42) - (local.get $22) - ) - ) - (block - (local.set $9 - (i32.load offset=24 - (local.get $1) - ) - ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 - (local.get $1) - ) - ) - (local.get $1) - ) - (block $do-once51 - (local.set $0 - (if (result i32) - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.tee $17 - (i32.add - (local.get $1) - (i32.const 16) + (block $do-once51 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $5) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $2 - (local.get $16) + (local.set $1 + (local.get $4) ) - (local.get $8) - ) - (if (result i32) - (local.tee $21 - (i32.load - (local.get $17) + (br_if $do-once51 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (block (result i32) - (local.set $2 - (local.get $21) + ) + (loop $while-in54 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in54) ) - (local.get $17) ) - (br $do-once51) - ) - ) - ) - (loop $while-in54 - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 20) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) ) + (local.set $1 + (local.get $4) + ) + (br $while-in54) ) ) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.lt_u + (local.get $1) + (local.get $2) ) - (local.set $0 - (local.get $8) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $17 + (local.get $0) + ) ) - (br $while-in54) ) ) - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $5) ) ) + (local.get $2) ) + (call $qa) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.ne + (local.get $5) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $0 - (local.get $8) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=8 + (local.get $0) + ) ) - (br $while-in54) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $17 + (local.get $0) + ) + ) + (call $qa) ) ) ) - (if - (i32.lt_u - (local.get $0) + (br_if $label$break$e + (i32.eqz (local.get $6) ) - (call $qa) - (block + ) + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $5) + ) + ) + (i32.const 2) + ) + (i32.const 1512) + ) + ) + ) + (local.get $5) + ) + (block $do-once55 (i32.store - (local.get $0) - (i32.const 0) + (local.get $1) + (local.get $17) ) - (local.set $24 - (local.get $2) + (br_if $do-once55 + (local.get $17) ) + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $8 - (i32.load offset=8 - (local.get $1) + (block + (if + (i32.lt_u + (local.get $6) + (i32.load + (i32.const 1224) + ) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=16 + (local.get $6) + ) + ) + (i32.store offset=16 + (local.get $6) + (local.get $17) + ) + (i32.store offset=20 + (local.get $6) + (local.get $17) + ) + ) + (br_if $label$break$e + (i32.eqz + (local.get $17) ) ) - (local.get $6) ) - (call $qa) - ) - (local.set $3 - (local.get $8) ) (if - (i32.ne - (local.get $1) - (i32.load offset=12 - (local.get $3) + (i32.lt_u + (local.get $17) + (local.tee $1 + (i32.load + (i32.const 1224) + ) ) ) (call $qa) ) - (local.set $2 - (local.get $0) + (i32.store offset=24 + (local.get $17) + (local.get $6) ) (if - (i32.eq - (local.get $1) - (i32.load offset=8 - (local.get $0) + (local.tee $0 + (i32.load offset=16 + (local.get $5) ) ) - (block - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (i32.store offset=8 - (local.get $2) - (local.get $8) - ) - (local.set $24 + (if + (i32.lt_u (local.get $0) + (local.get $1) ) - ) - (call $qa) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $9) - ) - ) - (if - (i32.eq - (i32.load - (local.tee $22 - (i32.add - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) + (call $qa) + (block + (i32.store offset=16 + (local.get $17) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $17) ) - (i32.const 1512) ) ) ) - (local.get $1) - ) - (block $do-once55 - (i32.store - (local.get $22) - (local.get $24) - ) - (br_if $do-once55 - (local.get $24) - ) - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (br_if $label$break$e + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $5) ) - (i32.const -1) ) ) ) - (br $label$break$e) - ) - (block (if (i32.lt_u - (local.get $9) + (local.get $0) (i32.load (i32.const 1224) ) ) (call $qa) - ) - (local.set $0 - (local.get $9) - ) - (if - (i32.eq - (local.get $1) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $17) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $9) - (local.get $24) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $24) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $0 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) - ) - (i32.store offset=24 - (local.get $24) - (local.get $9) - ) - (local.set $2 - (local.get $1) - ) - (if - (local.tee $12 - (i32.load offset=16 - (local.get $1) - ) - ) - (if - (i32.lt_u - (local.get $12) - (local.get $0) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.tee $12 - (i32.load offset=20 - (local.get $2) + (i32.store offset=24 + (local.get $0) + (local.get $17) + ) ) ) ) ) - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) + ) + (local.set $5 + (i32.add + (local.get $5) + (local.get $12) ) ) + (i32.add + (local.get $8) + (local.get $12) + ) ) + (local.get $8) ) - (local.set $1 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $15 - (i32.add - (local.get $4) - (local.get $15) + ) + (i32.store offset=4 + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $5) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.and - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $4) + (i32.const 1) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $15) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $5) - (local.get $15) - ) - (local.get $15) - ) - (local.set $0 - (i32.shr_u - (local.get $15) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $7) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $15) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $2 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $0 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $0) + (local.get $1) + (i32.const 3) ) + (i32.const 1248) ) - (local.tee $12 - (i32.load - (i32.const 1208) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $9 - (i32.load - (local.tee $0 - (i32.add - (local.get $2) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (block + (local.set $33 + (local.get $1) + ) + (local.set $27 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $43 - (local.get $0) + (call $qa) + ) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) ) - (local.set $38 - (local.get $9) + ) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) ) - (br $do-once59) ) - ) - (call $qa) - ) - (block - (i32.store - (i32.const 1208) - (i32.or + (local.set $27 (local.get $0) - (local.get $12) - ) - ) - (local.set $43 - (i32.add - (local.get $2) - (i32.const 8) ) ) - (local.set $38 - (local.get $2) - ) ) + (i32.store + (local.get $33) + (local.get $7) + ) + (i32.store offset=12 + (local.get $27) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $27) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $43) - (local.get $5) - ) - (i32.store offset=12 - (local.get $38) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $38) - ) - (i32.store offset=12 - (local.get $5) - (local.get $2) - ) - (br $do-once44) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $4 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $15) - (i32.const 8) - ) - ) + (local.set $1 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $15) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $9 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $0) - (local.tee $12 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $15) - (i32.add - (local.tee $8 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $4) - (local.get $9) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $9) - (local.get $12) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $4) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $2) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $8) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $5) - (local.get $4) - ) - (i32.store offset=20 - (local.get $5) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $5) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $4) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $7) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $3 + (i32.load + (i32.const 1212) + ) ) - ) - (local.tee $2 - (i32.load - (i32.const 1212) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $2) - (local.get $8) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $2) + (local.get $3) + ) ) + (i32.store + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $1) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once44) ) - (i32.store - (local.get $0) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $0) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $5) - ) - (br $do-once44) ) - ) - (local.set $8 - (i32.shl - (local.get $15) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $4) - (i32.const 1) + (local.set $14 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $4) - (i32.const 31) ) ) ) - ) - (local.set $2 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $15) - (i32.and - (i32.load offset=4 - (local.get $2) + (if + (i32.eq + (local.tee $9 + (loop $while-in64 (result i32) + (block $while-out63 (result i32) + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) ) - ) - (block - (local.set $44 - (local.get $2) - ) - (br $while-out63 - (i32.const 279) + (block + (local.set $34 + (local.get $0) + ) + (br $while-out63 + (i32.const 279) + ) ) ) - ) - (if (result i32) - (local.tee $4 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 (i32.add - (local.get $2) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $8) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $14) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $8 - (i32.shl - (local.get $8) - (i32.const 1) + (block + (local.set $14 + (i32.shl + (local.get $14) + (i32.const 1) + ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) ) - (local.set $2 - (local.get $4) - ) - (br $while-in64) - ) - (block (result i32) - (local.set $45 - (local.get $0) - ) - (local.set $53 - (local.get $2) + (block (result i32) + (local.set $35 + (local.get $3) + ) + (local.set $46 + (local.get $0) + ) + (i32.const 276) ) - (i32.const 276) ) ) ) ) + (i32.const 276) ) - (i32.const 276) - ) - (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $45) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $53) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $5) - (local.get $5) + (call $qa) + (block + (i32.store + (local.get $35) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $46) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 279) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 279) ) (if (i32.and (i32.ge_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) (local.tee $4 @@ -4850,23 +4697,23 @@ ) (block (i32.store offset=12 - (local.get $8) - (local.get $5) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $5) + (local.get $7) ) (i32.store offset=8 - (local.get $5) - (local.get $8) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $44) + (local.get $7) + (local.get $34) ) (i32.store offset=24 - (local.get $5) + (local.get $7) (i32.const 0) ) ) @@ -4876,676 +4723,659 @@ ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $19) - (i32.const 8) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $10) + (i32.const 8) + ) ) ) ) ) ) - ) - (loop $while-in66 - (block $while-out65 - (if - (i32.le_u - (local.tee $5 - (i32.load - (local.get $29) - ) - ) - (local.get $11) - ) + (loop $while-in66 + (block $while-out65 (if - (i32.gt_u - (local.tee $15 - (i32.add - (i32.load offset=4 - (local.get $29) - ) - (local.get $5) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $23) ) ) - (local.get $11) + (local.get $6) ) - (block - (local.set $2 - (local.get $15) + (br_if $while-out65 + (i32.gt_u + (local.tee $0 + (i32.add + (i32.load offset=4 + (local.get $23) + ) + (local.get $0) + ) + ) + (local.get $6) ) - (br $while-out65) ) ) - ) - (local.set $29 - (i32.load offset=8 - (local.get $29) + (local.set $23 + (i32.load offset=8 + (local.get $23) + ) ) + (br $while-in66) ) - (br $while-in66) ) - ) - (local.set $5 - (i32.add - (local.tee $4 - (local.tee $19 - (select - (local.get $11) - (local.tee $5 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $15 - (i32.add - (local.tee $19 - (i32.add - (local.get $2) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 1232) + (local.tee $1 + (i32.add + (local.get $3) + (local.tee $2 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $15) - (i32.const 7) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $19) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $5) - (local.tee $15 - (i32.add - (local.get $11) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 + (i32.store + (i32.const 1220) + (local.tee $2 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $2) + ) + ) + ) + (i32.store offset=4 + (local.get $1) + (i32.or + (local.get $2) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) + (local.get $1) + (local.get $2) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) + ) + (i32.store offset=4 + (local.tee $2 + (select + (local.get $6) + (local.tee $1 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $2 + (i32.add + (local.tee $1 + (i32.add + (local.get $0) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $2) + (i32.const 7) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and (local.get $1) - (i32.const 7) + ) + ) + (i32.lt_u + (local.get $1) + (local.tee $8 + (i32.add + (local.get $6) + (i32.const 16) + ) ) ) ) - (local.get $20) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 1220) - (local.tee $8 - (i32.sub - (i32.add - (local.get $26) - (i32.const -40) - ) - (local.get $13) + (i32.store offset=8 + (local.get $2) + (i32.load + (i32.const 1656) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $8) - (i32.const 1) + (i32.store offset=12 + (local.get $2) + (i32.load + (i32.const 1660) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $8) + (i32.store offset=16 + (local.get $2) + (i32.load + (i32.const 1664) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=20 + (local.get $2) + (i32.load + (i32.const 1668) + ) ) - ) - (local.set $0 - (local.get $19) - ) - (i32.store offset=4 - (local.get $0) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $4) - (i32.load + (i32.store (i32.const 1656) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $4) - (i32.load + (i32.store (i32.const 1660) + (local.get $7) ) - ) - (i32.store offset=16 - (local.get $4) - (i32.load - (i32.const 1664) - ) - ) - (i32.store offset=20 - (local.get $4) - (i32.load + (i32.store (i32.const 1668) + (i32.const 0) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1664) - (local.get $5) - ) - (local.set $5 - (i32.add - (local.get $0) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $5 - (i32.add - (local.get $5) - (i32.const 4) - ) + (i32.const 1664) + (i32.add + (local.get $2) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $5) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $2) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $11) - (local.get $19) - ) - (block - (i32.store offset=4 - (local.get $0) - (i32.and - (i32.load offset=4 - (local.get $0) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.tee $5 - (i32.sub - (local.get $19) - (local.get $11) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $0) ) ) - (i32.store - (local.get $19) - (local.get $5) - ) - (local.set $1 - (i32.shr_u - (local.get $5) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $2) + (local.get $6) ) - (if - (i32.lt_u - (local.get $5) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) + ) + (i32.const -2) + ) ) - (block - (local.set $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) + (i32.store offset=4 + (local.get $6) + (i32.or + (local.tee $5 + (i32.sub + (local.get $2) + (local.get $6) ) - (i32.const 1248) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $4 + ) + (i32.store + (local.get $2) + (local.get $5) + ) + (local.set $1 + (i32.shr_u + (local.get $5) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) (local.get $1) + (i32.const 3) ) - ) - (local.tee $2 - (i32.load - (i32.const 1208) - ) + (i32.const 1248) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $13) - (i32.const 8) + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (call $qa) + (block + (local.set $36 + (local.get $1) + ) + (local.set $28 + (local.get $3) + ) ) ) - (call $qa) (block - (local.set $46 - (local.get $4) - ) - (local.set $39 - (local.get $2) + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $3) + ) ) - ) - ) - (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $2) - (local.get $4) + (local.set $36 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $46 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $28 + (local.get $0) ) ) - (local.set $39 - (local.get $13) - ) ) + (i32.store + (local.get $36) + (local.get $6) + ) + (i32.store offset=12 + (local.get $28) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $28) + ) + (i32.store offset=12 + (local.get $6) + (local.get $0) + ) + (br $do-once38) ) - (i32.store - (local.get $46) - (local.get $11) - ) - (i32.store offset=12 - (local.get $39) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $39) - ) - (i32.store offset=12 - (local.get $11) - (local.get $13) - ) - (br $do-once38) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $2 - (if (result i32) - (local.tee $13 - (i32.shr_u - (local.get $5) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $5) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $5) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $13 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $13) - (local.tee $2 - (i32.and - (i32.shr_u - (i32.add - (local.get $13) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $5) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $4) - (local.get $13) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) + ) + (i32.or + (local.get $0) + (local.get $1) ) ) - (i32.or + ) + (i32.shr_u + (i32.shl + (local.get $3) (local.get $2) - (local.get $13) ) + (i32.const 15) ) ) - (i32.shr_u - (i32.shl - (local.get $1) - (local.get $4) - ) - (i32.const 15) - ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $11) - (local.get $2) - ) - (i32.store offset=20 - (local.get $11) - (i32.const 0) - ) - (i32.store - (local.get $15) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $4 - (i32.load - (i32.const 1212) + (i32.store offset=28 + (local.get $6) + (local.get $0) + ) + (i32.store offset=20 + (local.get $6) + (i32.const 0) + ) + (i32.store + (local.get $8) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $1 + (i32.load + (i32.const 1212) + ) + ) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) - (local.tee $1 - (i32.shl - (i32.const 1) + ) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $1) (local.get $2) ) ) - ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $1) - (local.get $4) + (i32.store + (local.get $3) + (local.get $6) ) + (i32.store offset=24 + (local.get $6) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) + (br $do-once38) ) - (i32.store - (local.get $0) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $0) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $11) - ) - (br $do-once38) ) - ) - (local.set $1 - (i32.shl - (local.get $5) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $2) - (i32.const 1) + (local.set $1 + (i32.shl + (local.get $5) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $2) - (i32.const 31) ) ) ) - ) - (local.set $4 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $3) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $5) - (i32.and - (i32.load offset=4 - (local.get $4) + (if + (i32.eq + (local.tee $9 + (loop $while-in70 (result i32) + (block $while-out69 (result i32) + (if + (i32.eq + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) ) - ) - (block - (local.set $33 - (local.get $4) - ) - (br $while-out69 - (i32.const 305) + (block + (local.set $37 + (local.get $0) + ) + (br $while-out69 + (i32.const 305) + ) ) ) - ) - (if (result i32) - (local.tee $2 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $3 + (i32.load + (local.tee $2 (i32.add - (local.get $4) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $1) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $1) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $1 - (i32.shl - (local.get $1) - (i32.const 1) + (block + (local.set $1 + (i32.shl + (local.get $1) + (i32.const 1) + ) ) + (local.set $0 + (local.get $3) + ) + (br $while-in70) ) - (local.set $4 - (local.get $2) - ) - (br $while-in70) - ) - (block (result i32) - (local.set $47 - (local.get $0) - ) - (local.set $54 - (local.get $4) + (block (result i32) + (local.set $38 + (local.get $2) + ) + (local.set $47 + (local.get $0) + ) + (i32.const 302) ) - (i32.const 302) ) ) ) ) + (i32.const 302) ) - (i32.const 302) - ) - (if - (i32.lt_u - (local.get $47) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $47) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $54) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $11) - (local.get $11) + (call $qa) + (block + (i32.store + (local.get $38) + (local.get $6) + ) + (i32.store offset=24 + (local.get $6) + (local.get $47) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 305) - ) - (block - (local.set $0 - (local.get $33) + (if + (i32.eq + (local.get $9) + (i32.const 305) ) (if (i32.and (i32.ge_u (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) - (local.tee $5 + (local.tee $3 (i32.load (i32.const 1224) ) @@ -5553,28 +5383,28 @@ ) (i32.ge_u (local.get $0) - (local.get $5) + (local.get $3) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $11) + (local.get $6) ) (i32.store offset=8 (local.get $0) - (local.get $11) + (local.get $6) ) (i32.store offset=8 - (local.get $11) + (local.get $6) (local.get $1) ) (i32.store offset=12 - (local.get $11) - (local.get $33) + (local.get $6) + (local.get $37) ) (i32.store offset=24 - (local.get $11) + (local.get $6) (i32.const 0) ) ) @@ -5585,219 +5415,208 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $1 - (i32.load - (i32.const 1224) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 1224) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $20) - (local.get $1) + (i32.store + (i32.const 1224) + (local.get $3) ) ) (i32.store - (i32.const 1224) - (local.get $20) + (i32.const 1656) + (local.get $3) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1244) - (i32.load - (i32.const 1680) + (i32.store + (i32.const 1660) + (local.get $7) ) - ) - (i32.store - (i32.const 1240) - (i32.const -1) - ) - (local.set $1 - (i32.const 0) - ) - (loop $do-in - (i32.store offset=12 - (local.tee $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) - ) - (i32.const 1248) - ) + (i32.store + (i32.const 1668) + (i32.const 0) + ) + (i32.store + (i32.const 1244) + (i32.load + (i32.const 1680) ) - (local.get $13) ) - (i32.store offset=8 - (local.get $13) - (local.get $13) + (i32.store + (i32.const 1240) + (i32.const -1) ) - (br_if $do-in - (i32.ne - (local.tee $1 + (local.set $1 + (i32.const 0) + ) + (loop $do-in + (i32.store offset=12 + (local.tee $0 (i32.add - (local.get $1) - (i32.const 1) + (i32.shl + (local.get $1) + (i32.const 3) + ) + (i32.const 1248) ) ) - (i32.const 32) + (local.get $0) ) - ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) - (i32.const 0) - (i32.and + (i32.store offset=8 + (local.get $0) + (local.get $0) + ) + (br_if $do-in + (i32.ne + (local.tee $1 + (i32.add (local.get $1) - (i32.const 7) + (i32.const 1) ) ) + (i32.const 32) ) - (local.get $20) ) ) - ) - (i32.store - (i32.const 1220) - (local.tee $5 - (i32.sub + (i32.store + (i32.const 1232) + (local.tee $0 (i32.add - (local.get $26) - (i32.const -40) + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) + ) + ) + ) ) - (local.get $13) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $5) - ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.load + (i32.store (i32.const 1220) + (local.tee $1 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $1) + ) + ) ) - ) - (local.get $3) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $33 - (i32.sub - (local.get $11) - (local.get $3) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 1232) - (local.tee $7 + (i32.store offset=4 (i32.add - (local.get $3) - (local.tee $11 - (i32.load - (i32.const 1232) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $7) - (i32.or - (local.get $33) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $11) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $Qa) + (i32.const 12) + ) + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) + ) + (i32.store + (i32.const 1220) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) ) (i32.store - (call $Qa) - (i32.const 12) + (i32.const 1232) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1232) + ) + ) + ) + ) ) - (global.set $r - (local.get $25) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) ) - (return - (i32.const 0) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (i32.add - (local.get $15) + (local.get $0) (i32.const 8) ) ) @@ -5820,7 +5639,6 @@ (local $16 i32) (local $17 i32) (local $18 i32) - (local $19 i32) (if (i32.eqz (local.get $0) @@ -5829,13 +5647,13 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) ) ) - (local.tee $14 + (local.tee $13 (i32.load (i32.const 1224) ) @@ -5845,9 +5663,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $10 (i32.and - (local.tee $5 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5862,12 +5680,12 @@ ) (call $qa) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $5) + (local.get $0) (i32.const -8) ) ) @@ -5875,64 +5693,61 @@ ) (if (i32.and - (local.get $5) + (local.get $0) (i32.const 1) ) (block (local.set $2 - (local.get $1) + (local.get $3) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once (local.set $9 (i32.load - (local.get $1) + (local.get $3) ) ) (if (i32.eqz - (local.get $0) + (local.get $10) ) (return) ) - (local.set $7 - (i32.add - (local.get $7) - (local.get $9) - ) - ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) + (local.get $3) (local.get $9) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 1228) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $3 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5941,43 +5756,43 @@ ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 1216) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $3) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $3 + (local.set $10 (i32.shr_u (local.get $9) (i32.const 3) @@ -5989,22 +5804,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $5 + (local.tee $1 (i32.add (i32.shl - (local.get $3) + (local.get $10) (i32.const 3) ) (i32.const 1248) @@ -6014,16 +5829,16 @@ (block (if (i32.lt_u - (local.get $9) - (local.get $14) + (local.get $4) + (local.get $13) ) (call $qa) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $qa) @@ -6032,8 +5847,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6045,99 +5860,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $10) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.eq - (local.get $0) - (local.get $5) + (local.get $1) + (local.get $2) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) (block (if (i32.lt_u - (local.get $0) - (local.get $14) + (local.get $2) + (local.get $13) ) (call $qa) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $5 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $5) + (local.set $5 + (local.get $1) ) (call $qa) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $3 + (local.tee $9 (i32.add (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6146,17 +5961,12 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load (local.get $5) ) @@ -6164,70 +5974,63 @@ ) ) ) - (if - (i32.lt_u - (local.tee $3 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) + (loop $while-in + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) - ) - (block (result i32) - (local.set $12 - (local.get $0) - ) - (local.get $5) + ) + ) + (block + (local.set $4 + (local.get $10) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + (if + (local.tee $10 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) ) - (local.get $14) + (block + (local.set $4 + (local.get $10) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + ) + (if + (i32.lt_u + (local.get $5) + (local.get $13) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $5) (i32.const 0) ) - (local.set $4 - (local.get $12) + (local.set $7 + (local.get $4) ) ) ) @@ -6235,48 +6038,42 @@ (block (if (i32.lt_u - (local.tee $3 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) - (local.set $5 - (local.get $3) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $3) + (local.get $5) ) ) (call $qa) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 (local.get $5) - (local.get $0) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $3) + (local.get $4) + (local.get $5) ) - (local.set $4 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $qa) @@ -6284,17 +6081,17 @@ ) ) (if - (local.get $9) + (local.get $12) (block (if (i32.eq (i32.load - (local.tee $3 + (local.tee $5 (i32.add (i32.shl - (local.tee $0 + (local.tee $4 (i32.load offset=28 - (local.get $1) + (local.get $0) ) ) (i32.const 2) @@ -6303,16 +6100,16 @@ ) ) ) - (local.get $1) + (local.get $0) ) (block (i32.store - (local.get $3) - (local.get $4) + (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (i32.store @@ -6324,17 +6121,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6343,42 +6140,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $4) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $4) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6387,8 +6181,8 @@ ) (if (i32.lt_u - (local.get $4) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 1224) ) @@ -6397,45 +6191,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $4) - (local.get $9) - ) - (local.set $3 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u + (local.get $4) (local.get $5) - (local.get $0) ) (call $qa) (block (i32.store offset=16 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=20 - (local.get $3) + (local.get $0) ) ) (if (i32.lt_u - (local.get $5) + (local.get $4) (i32.load (i32.const 1224) ) @@ -6443,37 +6234,37 @@ (call $qa) (block (i32.store offset=20 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6482,19 +6273,16 @@ (if (i32.ge_u (local.get $2) - (local.get $8) + (local.get $6) ) (call $qa) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6502,639 +6290,622 @@ ) (call $qa) ) - (local.set $6 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 1232) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 1220) + ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $6) - (i32.const 1) + ) + (i32.store + (i32.const 1232) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (if + (i32.ne + (i32.load + (i32.const 1228) ) + (local.get $2) ) - (i32.store + (return) + ) + (i32.store + (i32.const 1228) + (i32.const 0) + ) + (i32.store + (i32.const 1216) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 1228) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 1216) + (local.tee $0 (i32.add - (local.get $2) - (local.get $6) + (local.get $1) + (i32.load + (i32.const 1216) + ) ) - (local.get $6) ) - (local.get $6) ) - (block (result i32) + (i32.store + (i32.const 1228) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) + ) + ) (if - (i32.eq - (i32.load - (i32.const 1232) + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) ) - (local.get $8) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1220) - ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) ) + (i32.const 1248) ) ) - (i32.store - (i32.const 1232) - (local.get $2) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) (if (i32.ne - (i32.load - (i32.const 1228) + (local.get $6) + (i32.load offset=12 + (local.get $3) ) - (local.get $2) ) - (return) - ) - (i32.store - (i32.const 1228) - (i32.const 0) - ) - (i32.store - (i32.const 1216) - (i32.const 0) + (call $qa) ) - (return) ) ) (if (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $8) + (local.get $1) + (local.get $3) ) (block (i32.store - (i32.const 1216) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1216) + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) ) + (i32.const -1) ) ) ) - (i32.store - (i32.const 1228) - (local.get $2) + (br $do-once4) + ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) - (i32.store - (i32.add - (local.get $2) - (local.get $4) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) ) - (local.get $4) + (local.set $14 + (local.get $0) + ) + (call $qa) ) - (return) ) ) - (local.set $4 - (i32.add - (local.get $6) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) + (i32.store offset=12 + (local.get $3) + (local.get $1) ) - (local.set $14 - (i32.shr_u - (local.get $1) - (i32.const 3) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) - (block $do-once4 - (if - (i32.lt_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $3 - (i32.load offset=12 - (local.get $8) - ) + (if + (i32.eq + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) ) - (if - (i32.ne - (local.tee $5 + ) + ) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 (i32.add - (i32.shl - (local.get $14) - (i32.const 3) + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) ) - (i32.const 1248) - ) - ) - (local.tee $12 - (i32.load offset=8 - (local.get $8) + (i32.const 4) ) ) ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $12) - ) + ) + (local.set $1 + (local.get $3) + ) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) - (call $qa) ) ) ) + ) + (loop $while-in9 (if - (i32.eq - (local.get $3) - (local.get $12) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $14) - ) - (i32.const -1) + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (br $do-once4) ) - ) - (if - (i32.eq - (local.get $3) - (local.get $5) - ) - (local.set $16 - (i32.add + (block + (local.set $0 + (local.get $4) + ) + (local.set $1 (local.get $3) - (i32.const 8) ) + (br $while-in9) ) - (block - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) ) ) - (call $qa) ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - ) - ) - (local.set $16 - (local.get $5) - ) - (call $qa) + ) + (block + (local.set $0 + (local.get $4) ) + (local.set $1 + (local.get $3) + ) + (br $while-in9) ) ) - (i32.store offset=12 - (local.get $12) - (local.get $3) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) - (i32.store - (local.get $16) - (local.get $12) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) ) ) - (block - (local.set $12 - (i32.load offset=24 - (local.get $8) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) + ) + ) + (i32.load + (i32.const 1224) ) ) - (if - (i32.eq - (local.get $8) - (local.tee $3 - (i32.load offset=12 - (local.get $8) - ) - ) + (call $qa) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $1) ) - (block $do-once6 - (local.set $6 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $5 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $5 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $qa) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl (local.tee $0 - (i32.load - (local.get $5) + (i32.load offset=28 + (local.get $6) ) ) - (local.get $0) - (br $do-once6) + (i32.const 2) ) + (i32.const 1512) ) ) - (loop $while-in9 - (if - (local.tee $10 + ) + (local.get $6) + ) + (block + (i32.store + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 1212) + (i32.and (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) + (i32.const 1212) ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) - ) - (br $while-in9) - ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $5) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $5) - (i32.const 0) - ) - (local.set $11 - (local.get $6) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 1224) ) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $6) + (i32.load offset=16 + (local.get $7) ) - (call $qa) ) - (local.set $6 - (local.get $0) + (i32.store offset=16 + (local.get $7) + (local.get $8) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $0) - ) - ) - (call $qa) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (local.set $1 - (local.get $3) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $6) - (local.get $3) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $3) - ) - ) - (call $qa) + ) + ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) ) + (call $qa) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) + ) + ) (if - (local.get $12) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + (call $qa) (block - (if - (i32.eq - (i32.load - (local.tee $7 - (i32.add - (i32.shl - (local.tee $3 - (i32.load offset=28 - (local.get $8) - ) - ) - (i32.const 2) - ) - (i32.const 1512) - ) - ) - ) - (local.get $8) - ) - (block - (i32.store - (local.get $7) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (local.set $0 - (local.get $12) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $12) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $11) - (local.tee $3 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) + (i32.store offset=16 + (local.get $8) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $12) - ) - (local.set $0 + (local.get $0) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $3) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $6) + ) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (call $qa) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 1228) ) + (local.get $2) + ) + (block (i32.store - (i32.add - (local.get $2) - (local.get $4) - ) - (local.get $4) - ) - (if (result i32) - (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $2) - ) - (block - (i32.store - (i32.const 1216) - (local.get $4) - ) - (return) - ) - (local.get $4) + (i32.const 1216) + (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) (i32.const 1248) @@ -7142,25 +6913,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 1208) ) ) - (local.tee $4 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7173,10 +6944,10 @@ (call $qa) (block (local.set $15 - (local.get $4) + (local.get $1) ) - (local.set $13 - (local.get $7) + (local.set $11 + (local.get $3) ) ) ) @@ -7184,18 +6955,18 @@ (i32.store (i32.const 1208) (i32.or - (local.get $4) - (local.get $7) + (local.get $1) + (local.get $3) ) ) (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $13 - (local.get $1) + (local.set $11 + (local.get $0) ) ) ) @@ -7204,50 +6975,50 @@ (local.get $2) ) (i32.store offset=12 - (local.get $13) + (local.get $11) (local.get $2) ) (i32.store offset=8 (local.get $2) - (local.get $13) + (local.get $11) ) (i32.store offset=12 (local.get $2) - (local.get $1) + (local.get $0) ) (return) ) ) - (local.set $4 + (local.set $3 (i32.add (i32.shl - (local.tee $6 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $13 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7267,21 +7038,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $4 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $15 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $7 + (local.tee $4 (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7292,15 +7063,15 @@ ) ) (i32.or - (local.get $1) - (local.get $13) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) (i32.const 15) ) @@ -7312,7 +7083,7 @@ (i32.const 1) ) (i32.shl - (local.get $4) + (local.get $0) (i32.const 1) ) ) @@ -7328,7 +7099,7 @@ ) (i32.store offset=28 (local.get $2) - (local.get $6) + (local.get $0) ) (i32.store offset=20 (local.get $2) @@ -7340,41 +7111,41 @@ ) (if (i32.and - (local.tee $7 - (i32.shl - (i32.const 1) - (local.get $6) - ) - ) - (local.tee $15 + (local.tee $4 (i32.load (i32.const 1212) ) ) + (local.tee $5 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $13 + (local.set $11 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $6) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $6) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load - (local.get $4) + (local.get $3) ) ) (if @@ -7384,17 +7155,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $17 - (local.get $1) + (local.set $16 + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7402,17 +7173,17 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $3 (i32.load - (local.tee $6 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $13) + (local.get $11) (i32.const 31) ) (i32.const 2) @@ -7422,23 +7193,23 @@ ) ) (block - (local.set $13 + (local.set $11 (i32.shl - (local.get $13) + (local.get $11) (i32.const 1) ) ) - (local.set $1 - (local.get $11) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) - (local.set $18 - (local.get $6) + (local.set $17 + (local.get $4) ) - (local.set $19 - (local.get $1) + (local.set $18 + (local.get $0) ) (i32.const 127) ) @@ -7450,7 +7221,7 @@ ) (if (i32.lt_u - (local.get $18) + (local.get $17) (i32.load (i32.const 1224) ) @@ -7458,12 +7229,12 @@ (call $qa) (block (i32.store - (local.get $18) + (local.get $17) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $19) + (local.get $18) ) (i32.store offset=12 (local.get $2) @@ -7480,53 +7251,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $17) - ) - (if - (i32.and - (i32.ge_u - (local.tee $13 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $13) - (local.get $2) - ) - (i32.store offset=8 - (local.get $0) - (local.get $2) - ) - (i32.store offset=8 - (local.get $2) - (local.get $13) - ) - (i32.store offset=12 - (local.get $2) - (local.get $17) - ) - (i32.store offset=24 - (local.get $2) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) ) - (call $qa) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $qa) ) ) ) @@ -7535,17 +7303,17 @@ (i32.store (i32.const 1212) (i32.or - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) ) (i32.store - (local.get $4) + (local.get $3) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $4) + (local.get $3) ) (i32.store offset=12 (local.get $2) @@ -7559,7 +7327,7 @@ ) (i32.store (i32.const 1240) - (local.tee $2 + (local.tee $0 (i32.add (i32.load (i32.const 1240) @@ -7570,14 +7338,14 @@ ) (local.set $0 (if (result i32) - (local.get $2) + (local.get $0) (return) (i32.const 1664) ) ) (loop $while-in17 (if - (local.tee $2 + (local.tee $0 (i32.load (local.get $0) ) @@ -7585,7 +7353,7 @@ (block (local.set $0 (i32.add - (local.get $2) + (local.get $0) (i32.const 8) ) ) @@ -7610,9 +7378,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $r) ) (global.set $r @@ -7623,129 +7389,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 1160) - ) - (block (result i32) - (call $ra - (i32.const 1) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $Pa - (call $ya - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $oa - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 1160) + ) + (block + (call $ra + (i32.const 1) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $Pa - (call $ya - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $oa + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7755,123 +7515,125 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $14 + (local.set $12 (local.get $1) ) - (local.set $15 - (local.get $3) + (local.set $13 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.gt_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (local.set $5 + (if (result i32) + (i32.gt_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) + ) + ) + ) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) + ) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) ) ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) - ) - ) - (local.set $3 - (i32.add - (local.get $3) - (i32.const -1) - ) - ) - ) - (block - (if - (i32.eq + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) - ) - ) - ) - (local.set $3 - (i32.const 2) - ) ) ) - (local.set $9 - (local.get $4) - ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) - (local.set $13 + (local.set $11 (if (result i32) (i32.eq (local.get $1) @@ -7881,9 +7643,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7893,11 +7655,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7930,26 +7692,26 @@ ) (if (result i32) (i32.eq - (local.get $15) + (local.get $13) (i32.const 2) ) (i32.const 0) (i32.sub (local.get $2) (i32.load offset=4 - (local.get $14) + (local.get $12) ) ) ) ) - (local.get $13) + (local.get $11) ) ) ) (global.set $r - (local.get $10) + (local.get $9) ) - (local.get $13) + (local.get $11) ) (func $Wa (; 16 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7957,14 +7719,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 1144) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7972,7 +7730,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7981,13 +7739,13 @@ (call $Xa (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7995,15 +7753,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$a (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -8031,9 +7789,6 @@ (br $label$break$a) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8061,7 +7816,7 @@ (i32.ne (i32.load8_s (i32.add - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8074,7 +7829,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8105,35 +7860,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 1144) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $jb - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8157,48 +7909,48 @@ (i32.const 1144) ) (block - (local.set $1 + (local.set $4 (i32.const 1144) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8209,28 +7961,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8238,35 +7979,36 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 1144) ) ) (func $_a (; 18 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (if (result i32) + (if (local.get $0) - (block $do-once (result i32) - (if - (i32.le_s - (i32.load offset=76 - (local.get $0) + (local.set $0 + (block $do-once (result i32) + (if + (i32.le_s + (i32.load offset=76 + (local.get $0) + ) + (i32.const -1) ) - (i32.const -1) - ) - (br $do-once - (call $$a - (local.get $0) + (br $do-once + (call $$a + (local.get $0) + ) ) ) - ) - (call $$a - (local.get $0) + (call $$a + (local.get $0) + ) ) ) - (block (result i32) + (block (local.set $0 (if (result i32) (i32.load @@ -8289,56 +8031,45 @@ (i32.const 1184) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) + (loop $while-in + (drop + (i32.load offset=76 + (local.get $1) + ) ) - (loop $while-in - (drop - (i32.load offset=76 - (local.get $2) + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - ) - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) ) - (local.set $1 - (i32.or - (call $$a - (local.get $2) - ) + ) + (local.set $0 + (i32.or + (call $$a (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $xa (i32.const 1188) ) - (local.get $1) ) ) + (local.get $0) ) (func $ab (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -8347,7 +8078,6 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) (local.set $3 (global.get $r) ) @@ -8363,18 +8093,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8384,13 +8111,13 @@ (call $Xa (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8404,45 +8131,42 @@ (local.get $6) (i32.const 4) ) - (local.set $1 - (block $do-once (result i32) - (local.set $1 - (local.get $0) + (block $do-once + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=20 + (local.get $0) + ) + ) + (local.get $5) ) (if - (i32.lt_u + (i32.ne (local.tee $2 - (i32.load offset=20 - (local.get $0) - ) - ) - (local.get $5) - ) - (if - (i32.ne - (i32.load8_s offset=75 - (local.get $0) - ) (i32.const 10) ) - (block - (i32.store offset=20 + (i32.load8_s offset=75 + (local.get $0) + ) + ) + (block + (i32.store offset=20 + (local.get $0) + (i32.add (local.get $1) - (i32.add - (local.get $2) - (i32.const 1) - ) - ) - (i32.store8 - (local.get $2) - (i32.const 10) - ) - (br $do-once - (i32.const 10) + (i32.const 1) ) ) + (i32.store8 + (local.get $1) + (i32.const 10) + ) + (br $do-once) ) ) + ) + (local.set $2 (if (result i32) (i32.eq (call_indirect (type $FUNCSIG$iiii) @@ -8472,12 +8196,11 @@ (global.set $r (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $$a (; 20 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) (if (i32.gt_u (i32.load offset=20 @@ -8526,17 +8249,14 @@ (i32.const 3) ) (block (result i32) - (local.set $1 - (local.get $0) - ) (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=4 (local.get $0) ) ) - (local.tee $3 + (local.tee $2 (i32.load offset=8 (local.get $0) ) @@ -8546,8 +8266,8 @@ (call_indirect (type $FUNCSIG$iiii) (local.get $0) (i32.sub + (local.get $1) (local.get $2) - (local.get $3) ) (i32.const 1) (i32.add @@ -8579,7 +8299,7 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.const 0) ) (i32.const 0) @@ -9168,7 +8888,7 @@ ) ) ) - (local.set $3 + (local.set $0 (call $Ra (local.get $0) (local.get $1) @@ -9178,7 +8898,7 @@ (global.set $r (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $Oa (; 29 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise index 8d12816bb..bf7be5678 100644 --- a/test/memorygrowth.fromasm.imprecise +++ b/test/memorygrowth.fromasm.imprecise @@ -101,14 +101,7 @@ (local $45 i32) (local $46 i32) (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local.set $25 + (local.set $18 (global.get $r) ) (global.set $r @@ -117,1245 +110,1210 @@ (i32.const 16) ) ) - (local.set $13 - (local.get $25) - ) - (local.set $3 - (if (result i32) - (i32.lt_u - (local.get $0) - (i32.const 245) - ) - (block (result i32) - (if - (i32.and - (local.tee $1 - (i32.shr_u - (local.tee $4 - (i32.load - (i32.const 1208) - ) + (if + (i32.lt_u + (local.get $0) + (i32.const 245) + ) + (block + (if + (i32.and + (local.tee $10 + (i32.shr_u + (local.tee $12 + (i32.load + (i32.const 1208) ) - (local.tee $0 - (i32.shr_u - (local.tee $2 - (select - (i32.const 16) - (i32.and - (i32.add - (local.get $0) - (i32.const 11) - ) - (i32.const -8) - ) - (i32.lt_u + ) + (local.tee $2 + (i32.shr_u + (local.tee $4 + (select + (i32.const 16) + (i32.and + (i32.add (local.get $0) (i32.const 11) ) + (i32.const -8) + ) + (i32.lt_u + (local.get $0) + (i32.const 11) ) ) - (i32.const 3) ) + (i32.const 3) ) ) ) - (i32.const 3) ) - (block - (local.set $1 - (local.tee $6 + (i32.const 3) + ) + (block + (local.set $0 + (i32.load + (local.tee $2 (i32.add - (i32.shl - (local.tee $3 - (i32.add - (local.get $0) - (i32.xor - (i32.and - (local.get $1) - (i32.const 1) + (local.tee $4 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $3 + (i32.add + (local.get $2) + (i32.xor + (i32.and + (local.get $10) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (i32.const 3) ) - (i32.const 1) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.get $6) - (local.tee $8 - (i32.load - (local.tee $2 - (i32.add - (local.tee $14 - (i32.load offset=8 - (local.get $1) - ) - ) - (i32.const 8) - ) - ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) ) + (i32.const -1) ) + (local.get $12) ) - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) + ) + (block + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (local.get $4) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $8) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $4) + (i32.load offset=12 + (local.get $0) ) - (call $qa) ) - (local.set $0 - (local.get $8) - ) - (if - (i32.eq - (local.get $14) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $0) + (local.get $1) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $1) - (local.get $8) - ) + (i32.store offset=8 + (local.get $1) + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $14) - (i32.or - (local.tee $8 - (i32.shl - (local.get $3) - (i32.const 3) - ) + ) + (i32.store offset=4 + (local.get $4) + (i32.or + (local.tee $0 + (i32.shl + (local.get $3) + (i32.const 3) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add - (local.get $8) - (local.get $14) + (local.get $0) + (local.get $4) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $2) + (i32.const 1) ) ) - ) - (if (result i32) - (i32.gt_u + (global.set $r + (local.get $18) + ) + (return (local.get $2) - (local.tee $18 - (i32.load - (i32.const 1216) - ) + ) + ) + ) + (if + (i32.gt_u + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1216) ) ) - (block (result i32) - (if - (local.get $1) - (block - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $8 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.tee $6 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $8 - (i32.shl - (i32.const 2) - (local.get $0) - ) + ) + (block + (if + (local.get $10) + (block + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.shl + (i32.const 2) + (local.get $2) ) ) - (local.get $8) - ) - (i32.shl - (local.get $1) - (local.get $0) ) + (local.get $1) + ) + (i32.shl + (local.get $10) + (local.get $2) ) ) ) - (local.get $6) ) - (i32.const -1) + (local.get $1) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $8 - (i32.and - (i32.shr_u - (local.tee $7 - (i32.shr_u - (local.get $8) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $7 - (i32.and - (i32.shr_u - (local.tee $10 - (i32.shr_u - (local.get $7) - (local.get $8) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $10 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $10) - (local.get $7) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $5) + (local.get $2) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $8 - (local.tee $3 + ) + (local.set $1 + (i32.load + (local.tee $6 (i32.add - (i32.shl - (local.tee $16 - (i32.add - (i32.or - (local.tee $3 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.shr_u - (local.get $3) - (local.get $10) + (local.tee $2 + (i32.load offset=8 + (local.tee $3 + (i32.add + (i32.shl + (local.tee $5 + (i32.add + (i32.or + (local.tee $6 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.shr_u + (local.get $7) + (local.get $5) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + (i32.or + (local.get $5) + (i32.or + (local.get $2) + (i32.or + (local.get $1) + (local.get $3) + ) + ) ) ) - (i32.const 1) - ) - (i32.const 1) - ) - ) - (i32.or - (local.get $10) - (i32.or - (local.get $7) - (i32.or - (local.get $6) - (local.get $8) + (i32.shr_u + (local.get $7) + (local.get $6) + ) ) ) + (i32.const 3) ) - ) - (i32.shr_u - (local.get $14) - (local.get $3) + (i32.const 1248) ) ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 8) ) ) ) - (if - (i32.eq - (local.tee $6 - (i32.load - (local.tee $7 - (i32.add - (local.tee $10 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.const 8) - ) + ) + (if + (i32.eq + (local.get $1) + (local.get $3) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.xor + (i32.shl + (i32.const 1) + (local.get $5) ) + (i32.const -1) ) + (local.get $12) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.xor - (i32.shl - (i32.const 1) - (local.get $16) - ) - (i32.const -1) - ) - (local.get $4) + (local.set $13 + (local.get $0) + ) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) ) ) - (local.set $34 - (local.get $18) - ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.get $6) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $2) + (i32.load offset=12 + (local.get $1) ) - (call $qa) - ) - (local.set $0 - (local.get $6) ) - (if - (i32.eq - (local.get $10) - (i32.load offset=12 - (local.get $0) - ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $3) ) - (block - (i32.store offset=12 - (local.get $0) - (local.get $3) - ) - (i32.store offset=8 - (local.get $8) - (local.get $6) - ) - (local.set $34 - (i32.load - (i32.const 1216) - ) + (i32.store offset=8 + (local.get $3) + (local.get $1) + ) + (local.set $13 + (i32.load + (i32.const 1216) ) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (local.get $10) - (i32.or + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $4) + (i32.const 3) + ) + ) + (i32.store offset=4 + (local.tee $7 + (i32.add (local.get $2) - (i32.const 3) + (local.get $4) ) ) - (i32.store offset=4 - (local.tee $14 - (i32.add - (local.get $2) - (local.get $10) - ) - ) - (i32.or - (local.tee $6 - (i32.sub - (i32.shl - (local.get $16) - (i32.const 3) - ) - (local.get $2) + (i32.or + (local.tee $2 + (i32.sub + (i32.shl + (local.get $5) + (i32.const 3) ) + (local.get $4) ) - (i32.const 1) ) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $6) - (local.get $14) - ) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $7) ) - (if - (local.get $34) - (block - (local.set $3 - (i32.load - (i32.const 1228) - ) + (local.get $2) + ) + (if + (local.get $13) + (block + (local.set $3 + (i32.load + (i32.const 1228) ) - (local.set $4 - (i32.add - (i32.shl - (local.tee $18 - (i32.shr_u - (local.get $34) - (i32.const 3) - ) + ) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $13) + (i32.const 3) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 3) ) + (i32.const 1248) ) - (if - (i32.and - (local.tee $0 - (i32.load - (i32.const 1208) - ) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) ) - (local.tee $1 - (i32.shl - (i32.const 1) - (local.get $18) - ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) ) ) - (if - (i32.lt_u - (local.tee $0 - (i32.load - (local.tee $1 - (i32.add - (local.get $4) - (i32.const 8) - ) + ) + (if + (i32.lt_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $40 - (local.get $1) - ) - (local.set $35 - (local.get $0) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $0) - (local.get $1) - ) - ) - (local.set $40 - (i32.add - (local.get $4) - (i32.const 8) - ) + (local.set $20 + (local.get $1) ) - (local.set $35 + (local.set $8 (local.get $4) ) ) ) - (i32.store - (local.get $40) - (local.get $3) - ) - (i32.store offset=12 - (local.get $35) - (local.get $3) - ) - (i32.store offset=8 - (local.get $3) - (local.get $35) - ) - (i32.store offset=12 - (local.get $3) - (local.get $4) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $20 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $8 + (local.get $0) + ) ) ) + (i32.store + (local.get $20) + (local.get $3) + ) + (i32.store offset=12 + (local.get $8) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $8) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $14) - ) - (global.set $r - (local.get $25) - ) - (return - (local.get $7) - ) + ) + (i32.store + (i32.const 1216) + (local.get $2) + ) + (i32.store + (i32.const 1228) + (local.get $7) + ) + (global.set $r + (local.get $18) + ) + (return + (local.get $6) ) ) - (if (result i32) - (local.tee $14 - (i32.load - (i32.const 1212) - ) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1212) ) - (block - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $14) - ) - (local.get $14) + ) + (block + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $6 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $6) - (local.get $14) - ) + ) + (local.set $1 + (i32.and + (i32.shr_u + (local.tee $3 + (i32.shr_u + (local.get $1) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $3 - (i32.shr_u - (local.get $4) - (local.get $6) - ) + ) + (local.set $3 + (i32.and + (i32.shr_u + (local.tee $2 + (i32.shr_u + (local.get $3) + (local.get $1) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $3 - (i32.and - (i32.shr_u - (local.tee $0 - (i32.shr_u - (local.get $3) - (local.get $4) - ) + ) + (local.set $2 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $2) + (local.get $3) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) - (local.set $0 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $18 - (i32.load - (i32.add - (i32.shl - (i32.add - (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $0) - (local.get $3) - ) + ) + (local.set $7 + (i32.sub + (i32.and + (i32.load offset=4 + (local.tee $0 + (i32.load + (i32.add + (i32.shl + (i32.add + (i32.or + (local.tee $7 + (i32.and + (i32.shr_u + (local.tee $8 + (i32.shr_u + (local.get $8) + (local.get $2) ) - (i32.const 1) ) (i32.const 1) ) + (i32.const 1) ) + ) + (i32.or + (local.get $2) (i32.or (local.get $3) (i32.or - (local.get $4) - (i32.or - (local.get $6) - (local.get $14) - ) + (local.get $0) + (local.get $1) ) ) ) - (i32.shr_u - (local.get $1) - (local.get $0) - ) ) - (i32.const 2) + (i32.shr_u + (local.get $8) + (local.get $7) + ) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (i32.const -8) ) - (local.get $2) - ) - ) - (local.set $3 - (local.tee $1 - (local.get $18) + (i32.const -8) ) + (local.get $4) ) - (loop $while-in - (block $while-out - (local.set $4 - (i32.lt_u - (local.tee $18 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $1 - (if (result i32) - (local.tee $18 - (i32.load offset=16 - (local.get $1) - ) - ) - (local.get $18) - (if (result i32) - (local.tee $4 - (i32.load offset=20 - (local.get $1) - ) - ) - (local.get $4) - (block - (local.set $6 - (local.get $0) - ) - (local.set $9 - (local.get $3) - ) - (br $while-out) - ) - ) - ) - ) - ) - (i32.const -8) - ) - (local.get $2) - ) - ) + ) + (local.set $9 + (local.get $0) + ) + (loop $while-in + (block $while-out + (if + (local.tee $1 + (i32.load offset=16 (local.get $0) ) ) (local.set $0 - (select - (local.get $18) - (local.get $0) - (local.get $4) - ) + (local.get $1) ) - (local.set $3 - (select - (local.get $1) - (local.get $3) - (local.get $4) + (if + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $0) + ) + ) + ) + (block + (local.set $8 + (local.get $9) + ) + (br $while-out) ) ) - (br $while-in) ) - ) - (if - (i32.lt_u - (local.get $9) - (local.tee $3 - (i32.load - (i32.const 1224) + (local.set $1 + (i32.lt_u + (local.tee $3 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) + ) + (local.get $4) + ) ) + (local.get $7) ) ) - (call $qa) + (local.set $7 + (select + (local.get $3) + (local.get $7) + (local.get $1) + ) + ) + (local.set $9 + (select + (local.get $0) + (local.get $9) + (local.get $1) + ) + ) + (br $while-in) ) - (if - (i32.ge_u - (local.get $9) - (local.tee $1 - (i32.add - (local.get $2) - (local.get $9) - ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $14 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (local.set $0 - (i32.load offset=24 - (local.get $9) + (call $qa) + ) + (if + (i32.ge_u + (local.get $8) + (local.tee $12 + (i32.add + (local.get $4) + (local.get $8) + ) ) ) - (if - (i32.eq - (local.tee $7 - (i32.load offset=12 - (local.get $9) - ) + (call $qa) + ) + (local.set $10 + (i32.load offset=24 + (local.get $8) + ) + ) + (if + (i32.eq + (local.get $8) + (local.tee $0 + (i32.load offset=12 + (local.get $8) ) - (local.get $9) ) - (block $do-once4 - (if - (local.tee $16 + ) + (block $do-once4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $9) + (local.get $8) (i32.const 20) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.tee $18 - (i32.load - (local.tee $4 - (i32.add - (local.get $9) - (i32.const 16) - ) - ) - ) - ) - ) - ) ) - (loop $while-in7 - (if - (local.tee $16 + (br_if $do-once4 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $10 + (local.tee $1 (i32.add - (local.get $18) - (i32.const 20) + (local.get $8) + (i32.const 16) ) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) - ) ) - (if - (local.tee $16 - (i32.load - (local.tee $10 - (i32.add - (local.get $18) - (i32.const 16) - ) + ) + ) + (loop $while-in7 + (if + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (block - (local.set $18 - (local.get $16) - ) - (local.set $4 - (local.get $10) - ) - (br $while-in7) + ) + (block + (local.set $0 + (local.get $2) ) + (local.set $1 + (local.get $3) + ) + (br $while-in7) ) ) (if - (i32.lt_u - (local.get $4) - (local.get $3) + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) ) - (call $qa) (block - (i32.store - (local.get $4) - (i32.const 0) + (local.set $0 + (local.get $2) ) - (local.set $23 - (local.get $18) + (local.set $1 + (local.get $3) ) + (br $while-in7) ) ) ) - (block - (if - (i32.lt_u - (local.tee $10 - (i32.load offset=8 - (local.get $9) - ) - ) - (local.get $3) - ) - (call $qa) + (if + (i32.lt_u + (local.get $1) + (local.get $14) ) - (local.set $8 - (local.get $10) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $5 + (local.get $0) + ) ) - (if - (i32.ne - (local.get $9) - (i32.load offset=12 + ) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 (local.get $8) ) ) - (call $qa) + (local.get $14) ) - (local.set $4 - (local.get $7) + (call $qa) + ) + (if + (i32.ne + (local.get $8) + (i32.load offset=12 + (local.get $1) + ) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=8 - (local.get $4) - ) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=8 + (local.get $0) ) - (block - (i32.store offset=12 - (local.get $8) - (local.get $7) - ) - (i32.store offset=8 - (local.get $4) - (local.get $10) - ) - (local.set $23 - (local.get $7) - ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $5 + (local.get $0) ) - (call $qa) ) + (call $qa) ) ) - (if - (local.get $0) - (block $do-once8 - (if - (i32.eq - (i32.load - (local.tee $3 - (i32.add - (i32.shl - (local.tee $7 - (i32.load offset=28 - (local.get $9) - ) + ) + (if + (local.get $10) + (block $do-once8 + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $8) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) - (local.get $9) ) - (block - (i32.store - (local.get $3) - (local.get $23) + (local.get $8) + ) + (block + (i32.store + (local.get $1) + (local.get $5) + ) + (if + (i32.eqz + (local.get $5) ) - (if - (i32.eqz - (local.get $23) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $7) - ) - (i32.const -1) + (block + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (br $do-once8) ) + (br $do-once8) ) ) - (block - (if - (i32.lt_u - (local.get $0) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 1224) ) - (call $qa) - ) - (local.set $4 - (local.get $0) ) - (if - (i32.eq - (local.get $9) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $4) - (local.get $23) - ) - (i32.store offset=20 - (local.get $0) - (local.get $23) + (call $qa) + ) + (if + (i32.eq + (local.get $8) + (i32.load offset=16 + (local.get $10) ) ) - (br_if $do-once8 - (i32.eqz - (local.get $23) - ) + (i32.store offset=16 + (local.get $10) + (local.get $5) + ) + (i32.store offset=20 + (local.get $10) + (local.get $5) + ) + ) + (br_if $do-once8 + (i32.eqz + (local.get $5) ) ) ) - (if - (i32.lt_u - (local.get $23) - (local.tee $7 - (i32.load - (i32.const 1224) - ) + ) + (if + (i32.lt_u + (local.get $5) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (i32.store offset=24 - (local.get $23) - (local.get $0) + (call $qa) + ) + (i32.store offset=24 + (local.get $5) + (local.get $10) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $8) + ) ) (if - (local.tee $3 - (i32.load offset=16 - (local.get $9) - ) + (i32.lt_u + (local.get $0) + (local.get $1) ) - (if - (i32.lt_u - (local.get $3) - (local.get $7) + (call $qa) + (block + (i32.store offset=16 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=16 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $8) + ) + ) (if - (local.tee $3 - (i32.load offset=20 - (local.get $9) + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) ) - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) - ) + (call $qa) + (block + (i32.store offset=20 + (local.get $5) + (local.get $0) ) - (call $qa) - (block - (i32.store offset=20 - (local.get $23) - (local.get $3) - ) - (i32.store offset=24 - (local.get $3) - (local.get $23) - ) + (i32.store offset=24 + (local.get $0) + (local.get $5) ) ) ) ) ) - (if - (i32.lt_u - (local.get $6) - (i32.const 16) - ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.tee $0 - (i32.add - (local.get $2) - (local.get $6) - ) + ) + (if + (i32.lt_u + (local.get $7) + (i32.const 16) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.tee $0 + (i32.add + (local.get $4) + (local.get $7) ) - (i32.const 3) ) + (i32.const 3) ) - (local.set $0 + ) + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) - (local.get $9) + (local.get $8) ) ) - (i32.store offset=4 - (local.get $0) - (i32.or - (i32.load offset=4 - (local.get $0) - ) - (i32.const 1) + (i32.or + (i32.load offset=4 + (local.get $0) ) + (i32.const 1) ) ) - (block - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $2) - (i32.const 3) - ) + ) + (block + (i32.store offset=4 + (local.get $8) + (i32.or + (local.get $4) + (i32.const 3) ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $6) - (i32.const 1) - ) + ) + (i32.store offset=4 + (local.get $12) + (i32.or + (local.get $7) + (i32.const 1) ) - (i32.store - (i32.add - (local.get $1) - (local.get $6) + ) + (i32.store + (i32.add + (local.get $7) + (local.get $12) + ) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load + (i32.const 1216) ) - (local.get $6) ) - (if - (local.tee $3 + (block + (local.set $3 (i32.load - (i32.const 1216) + (i32.const 1228) ) ) - (block - (local.set $0 - (i32.load - (i32.const 1228) + (local.set $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 1248) ) - (local.set $3 - (i32.add + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 (i32.shl - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 3) - ) - ) - (i32.const 3) + (i32.const 1) + (local.get $1) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (local.tee $4 - (i32.shl - (i32.const 1) - (local.get $7) - ) - ) - (local.tee $10 (i32.load - (i32.const 1208) - ) - ) - ) - (if - (i32.lt_u - (local.tee $10 - (i32.load - (local.tee $4 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (local.set $41 - (local.get $4) - ) - (local.set $27 - (local.get $10) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $4) - (local.get $10) - ) - ) - (local.set $41 - (i32.add - (local.get $3) - (i32.const 8) - ) + (local.set $21 + (local.get $1) ) - (local.set $27 - (local.get $3) + (local.set $6 + (local.get $4) ) ) ) - (i32.store - (local.get $41) - (local.get $0) - ) - (i32.store offset=12 - (local.get $27) - (local.get $0) - ) - (i32.store offset=8 - (local.get $0) - (local.get $27) - ) - (i32.store offset=12 - (local.get $0) - (local.get $3) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) + ) + ) + (local.set $21 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + (local.set $6 + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 1216) - (local.get $6) - ) - (i32.store - (i32.const 1228) - (local.get $1) + (i32.store + (local.get $21) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $3) + ) + (i32.store offset=8 + (local.get $3) + (local.get $6) + ) + (i32.store offset=12 + (local.get $3) + (local.get $0) + ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $9) - (i32.const 8) + (i32.store + (i32.const 1216) + (local.get $7) + ) + (i32.store + (i32.const 1228) + (local.get $12) ) ) ) - (local.get $2) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $8) + (i32.const 8) + ) + ) ) ) - (local.get $2) ) ) + ) + (local.set $4 (if (result i32) (i32.gt_u (local.get $0) @@ -1363,9 +1321,9 @@ ) (i32.const -1) (block $do-once (result i32) - (local.set $0 + (local.set $8 (i32.and - (local.tee $3 + (local.tee $0 (i32.add (local.get $0) (i32.const 11) @@ -1375,123 +1333,124 @@ ) ) (if (result i32) - (local.tee $10 + (local.tee $39 (i32.load (i32.const 1212) ) ) (block (result i32) - (local.set $4 - (i32.sub - (i32.const 0) - (local.get $0) - ) - ) - (if - (local.tee $14 - (i32.load - (i32.add - (i32.shl - (local.tee $27 - (if (result i32) - (local.tee $7 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $0) - (i32.const 16777215) - ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $16 - (i32.shl - (local.get $7) - (local.tee $3 - (i32.and - (i32.shr_u - (i32.add - (local.get $7) - (i32.const 1048320) - ) - (i32.const 16) - ) - (i32.const 8) - ) - ) - ) + (local.set $21 + (if (result i32) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) + ) + (if (result i32) + (i32.gt_u + (local.get $8) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $0) + (local.tee $5 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 4) ) ) - (i32.or - (i32.and - (i32.shr_u - (local.get $0) - (i32.add - (local.tee $14 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $16 - (i32.and - (i32.shr_u - (i32.add - (local.tee $18 - (i32.shl - (local.get $16) - (local.get $7) - ) - ) - (i32.const 245760) - ) - (i32.const 16) - ) - (i32.const 2) - ) - ) - (i32.or - (local.get $3) - (local.get $7) + ) + (i32.const 520192) + ) + (i32.const 16) + ) + (i32.const 4) + ) + ) + (i32.or + (i32.and + (i32.shr_u + (local.get $8) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $13 + (i32.and + (i32.shr_u + (i32.add + (local.tee $6 + (i32.shl + (local.get $6) + (local.get $0) ) ) + (i32.const 245760) ) - (i32.shr_u - (i32.shl - (local.get $18) - (local.get $16) - ) - (i32.const 15) - ) + (i32.const 16) ) + (i32.const 2) ) - (i32.const 7) + ) + (i32.or + (local.get $0) + (local.get $5) ) ) - (i32.const 1) ) - (i32.shl - (local.get $14) - (i32.const 1) + (i32.shr_u + (i32.shl + (local.get $6) + (local.get $13) + ) + (i32.const 15) ) ) ) + (i32.const 7) ) - (i32.const 0) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) + ) + ) + ) + (i32.const 0) + ) + ) + (local.set $0 + (i32.sub + (i32.const 0) + (local.get $8) + ) + ) + (if + (local.tee $6 + (i32.load + (i32.add + (i32.shl + (local.get $21) (i32.const 2) ) (i32.const 1512) @@ -1499,107 +1458,100 @@ ) ) (block $label$break$a - (local.set $16 - (local.get $4) - ) - (local.set $18 - (i32.const 0) - ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $0) + (local.get $8) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $27) + (local.get $21) (i32.const 1) ) ) (i32.eq - (local.get $27) + (local.get $21) (i32.const 31) ) ) ) ) - (local.set $7 - (local.get $14) + (local.set $5 + (i32.const 0) ) - (local.set $1 + (local.set $10 (loop $while-in14 (result i32) (if (i32.lt_u - (local.tee $14 + (local.tee $13 (i32.sub - (local.tee $2 + (local.tee $25 (i32.and (i32.load offset=4 - (local.get $7) + (local.get $6) ) (i32.const -8) ) ) - (local.get $0) + (local.get $8) ) ) - (local.get $16) + (local.get $0) ) - (local.set $16 + (local.set $0 (if (result i32) (i32.eq - (local.get $0) - (local.get $2) + (local.get $8) + (local.get $25) ) (block - (local.set $30 - (local.get $14) + (local.set $4 + (local.get $13) ) - (local.set $28 - (local.get $7) + (local.set $12 + (local.get $6) ) - (local.set $31 - (local.get $7) + (local.set $2 + (local.get $6) ) - (local.set $7 + (local.set $9 (i32.const 90) ) (br $label$break$a) ) (block (result i32) - (local.set $6 - (local.get $7) + (local.set $5 + (local.get $6) ) - (local.get $14) + (local.get $13) ) ) ) ) - (local.set $2 + (local.set $13 (select - (local.get $18) - (local.tee $14 + (local.get $20) + (local.tee $13 (i32.load offset=20 - (local.get $7) + (local.get $6) ) ) (i32.or (i32.eqz - (local.get $14) + (local.get $13) ) (i32.eq - (local.get $14) - (local.tee $7 + (local.tee $6 (i32.load (i32.add (i32.add - (local.get $7) + (local.get $6) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $3) + (local.get $9) (i32.const 31) ) (i32.const 2) @@ -1607,40 +1559,38 @@ ) ) ) + (local.get $13) ) ) ) ) (if (result i32) - (local.tee $14 + (local.tee $25 (i32.eqz - (local.get $7) + (local.get $6) ) ) (block (result i32) - (local.set $36 - (local.get $16) + (local.set $19 + (local.get $13) ) - (local.set $32 - (local.get $6) + (local.set $22 + (local.get $5) ) - (local.set $7 + (local.set $9 (i32.const 86) ) - (local.get $2) + (local.get $0) ) (block - (local.set $18 - (local.get $2) + (local.set $20 + (local.get $13) ) - (local.set $3 + (local.set $9 (i32.shl - (local.get $3) + (local.get $9) (i32.xor - (i32.and - (local.get $14) - (i32.const 1) - ) + (local.get $25) (i32.const 1) ) ) @@ -1652,126 +1602,127 @@ ) ) (block - (local.set $36 - (local.get $4) + (local.set $10 + (local.get $0) ) - (local.set $7 + (local.set $9 (i32.const 86) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 86) ) - (if - (local.tee $2 - (if (result i32) + (block + (if + (i32.eqz (i32.or - (local.get $1) - (local.get $32) + (local.get $19) + (local.get $22) ) - (local.get $1) - (block (result i32) - (drop - (br_if $do-once - (local.get $0) - (i32.eqz - (local.tee $4 - (i32.and - (i32.or - (i32.sub - (i32.const 0) - (local.tee $14 - (i32.shl - (i32.const 2) - (local.get $27) - ) + ) + (block + (drop + (br_if $do-once + (local.get $8) + (i32.eqz + (local.tee $0 + (i32.and + (i32.or + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.shl + (i32.const 2) + (local.get $21) ) ) - (local.get $14) ) - (local.get $10) + (local.get $0) ) + (local.get $39) ) ) ) ) - (local.set $4 - (i32.and - (i32.shr_u - (local.tee $14 - (i32.add - (i32.and - (i32.sub - (i32.const 0) - (local.get $4) - ) - (local.get $4) + ) + (local.set $0 + (i32.and + (i32.shr_u + (local.tee $5 + (i32.add + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) ) - (i32.const -1) + (local.get $0) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (local.set $14 - (i32.and - (i32.shr_u - (local.tee $2 - (i32.shr_u - (local.get $14) - (local.get $4) - ) + ) + (local.set $5 + (i32.and + (i32.shr_u + (local.tee $6 + (i32.shr_u + (local.get $5) + (local.get $0) ) - (i32.const 5) ) - (i32.const 8) + (i32.const 5) ) + (i32.const 8) ) - (local.set $2 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $2) - (local.get $14) - ) + ) + (local.set $6 + (i32.and + (i32.shr_u + (local.tee $13 + (i32.shr_u + (local.get $6) + (local.get $5) ) - (i32.const 2) ) - (i32.const 4) + (i32.const 2) ) + (i32.const 4) ) - (local.set $1 - (i32.and - (i32.shr_u - (local.tee $6 - (i32.shr_u - (local.get $1) - (local.get $2) - ) + ) + (local.set $13 + (i32.and + (i32.shr_u + (local.tee $19 + (i32.shr_u + (local.get $13) + (local.get $6) ) - (i32.const 1) ) - (i32.const 2) + (i32.const 1) ) + (i32.const 2) ) + ) + (local.set $19 (i32.load (i32.add (i32.shl (i32.add (i32.or - (local.tee $6 + (local.tee $20 (i32.and (i32.shr_u - (local.tee $3 + (local.tee $19 (i32.shr_u - (local.get $6) - (local.get $1) + (local.get $19) + (local.get $13) ) ) (i32.const 1) @@ -1780,19 +1731,19 @@ ) ) (i32.or - (local.get $1) + (local.get $13) (i32.or - (local.get $2) + (local.get $6) (i32.or - (local.get $4) - (local.get $14) + (local.get $0) + (local.get $5) ) ) ) ) (i32.shr_u - (local.get $3) - (local.get $6) + (local.get $19) + (local.get $20) ) ) (i32.const 2) @@ -1803,131 +1754,119 @@ ) ) ) - (block - (local.set $30 - (local.get $36) - ) - (local.set $28 - (local.get $2) - ) - (local.set $31 - (local.get $32) - ) - (local.set $7 - (i32.const 90) - ) - ) - (block - (local.set $17 - (local.get $36) + (if + (local.get $19) + (block + (local.set $4 + (local.get $10) + ) + (local.set $12 + (local.get $19) + ) + (local.set $2 + (local.get $22) + ) + (local.set $9 + (i32.const 90) + ) ) - (local.set $12 - (local.get $32) + (block + (local.set $15 + (local.get $10) + ) + (local.set $11 + (local.get $22) + ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 90) - ) - (local.set $17 - (loop $while-in16 (result i32) - (local.set $7 - (i32.const 0) + (if (result i32) + (block (result i32) + (if + (i32.eq + (local.get $9) + (i32.const 90) ) - (local.set $3 - (i32.lt_u - (local.tee $6 - (i32.sub - (i32.and - (i32.load offset=4 - (local.get $28) + (local.set $11 + (loop $while-in16 (result i32) + (local.set $9 + (i32.const 0) + ) + (local.set $0 + (i32.lt_u + (local.tee $5 + (i32.sub + (i32.and + (i32.load offset=4 + (local.get $12) + ) + (i32.const -8) + ) + (local.get $8) ) - (i32.const -8) ) - (local.get $0) + (local.get $4) ) ) - (local.get $30) - ) - ) - (local.set $1 - (select - (local.get $6) - (local.get $30) - (local.get $3) - ) - ) - (local.set $6 - (select - (local.get $28) - (local.get $31) - (local.get $3) - ) - ) - (if - (local.tee $3 - (i32.load offset=16 - (local.get $28) - ) - ) - (block - (local.set $30 - (local.get $1) - ) - (local.set $28 - (local.get $3) - ) - (local.set $31 - (local.get $6) + (local.set $4 + (select + (local.get $5) + (local.get $4) + (local.get $0) + ) ) - (br $while-in16) - ) - ) - (if (result i32) - (local.tee $28 - (i32.load offset=20 - (local.get $28) + (local.set $2 + (select + (local.get $12) + (local.get $2) + (local.get $0) + ) ) - ) - (block - (local.set $30 - (local.get $1) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $12) + ) + ) + (block + (local.set $12 + (local.get $0) + ) + (br $while-in16) + ) ) - (local.set $31 - (local.get $6) + (br_if $while-in16 + (local.tee $12 + (i32.load offset=20 + (local.get $12) + ) + ) ) - (br $while-in16) - ) - (block (result i32) - (local.set $12 - (local.get $6) + (local.set $15 + (local.get $4) ) - (local.get $1) + (local.get $2) ) ) ) + (local.get $11) ) - ) - (if (result i32) - (local.get $12) (if (result i32) (i32.lt_u - (local.get $17) + (local.get $15) (i32.sub (i32.load (i32.const 1216) ) - (local.get $0) + (local.get $8) ) ) (block (if (i32.lt_u - (local.get $12) - (local.tee $10 + (local.get $11) + (local.tee $7 (i32.load (i32.const 1224) ) @@ -1937,104 +1876,98 @@ ) (if (i32.ge_u - (local.get $12) - (local.tee $6 + (local.get $11) + (local.tee $2 (i32.add - (local.get $0) - (local.get $12) + (local.get $8) + (local.get $11) ) ) ) (call $qa) ) - (local.set $1 + (local.set $5 (i32.load offset=24 - (local.get $12) + (local.get $11) ) ) (if (i32.eq - (local.tee $3 + (local.get $11) + (local.tee $0 (i32.load offset=12 - (local.get $12) + (local.get $11) ) ) - (local.get $12) ) (block $do-once17 - (local.set $3 - (if (result i32) - (local.tee $4 + (if + (i32.eqz + (local.tee $0 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 20) ) ) ) ) - (block (result i32) - (local.set $18 - (local.get $4) - ) - (local.get $2) - ) - (if (result i32) - (local.tee $18 + ) + (br_if $do-once17 + (i32.eqz + (local.tee $0 (i32.load - (local.tee $14 + (local.tee $1 (i32.add - (local.get $12) + (local.get $11) (i32.const 16) ) ) ) ) - (local.get $14) - (br $do-once17) ) ) ) (loop $while-in20 (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 20) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) ) (if - (local.tee $4 + (local.tee $3 (i32.load - (local.tee $2 + (local.tee $4 (i32.add - (local.get $18) + (local.get $0) (i32.const 16) ) ) ) ) (block - (local.set $18 - (local.get $4) + (local.set $0 + (local.get $3) ) - (local.set $3 - (local.get $2) + (local.set $1 + (local.get $4) ) (br $while-in20) ) @@ -2042,17 +1975,17 @@ ) (if (i32.lt_u - (local.get $3) - (local.get $10) + (local.get $1) + (local.get $7) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $1) (i32.const 0) ) - (local.set $21 - (local.get $18) + (local.set $16 + (local.get $0) ) ) ) @@ -2060,48 +1993,42 @@ (block (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=8 - (local.get $12) + (local.get $11) ) ) - (local.get $10) + (local.get $7) ) (call $qa) ) - (local.set $16 - (local.get $2) - ) (if (i32.ne - (local.get $12) + (local.get $11) (i32.load offset=12 - (local.get $2) + (local.get $1) ) ) (call $qa) ) - (local.set $4 - (local.get $3) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=8 - (local.get $3) + (local.get $0) ) ) (block (i32.store offset=12 - (local.get $16) - (local.get $3) + (local.get $1) + (local.get $0) ) (i32.store offset=8 - (local.get $4) - (local.get $2) + (local.get $0) + (local.get $1) ) - (local.set $21 - (local.get $3) + (local.set $16 + (local.get $0) ) ) (call $qa) @@ -2109,17 +2036,17 @@ ) ) (if - (local.get $1) + (local.get $5) (block $do-once21 (if (i32.eq (i32.load - (local.tee $10 + (local.tee $1 (i32.add (i32.shl - (local.tee $3 + (local.tee $0 (i32.load offset=28 - (local.get $12) + (local.get $11) ) ) (i32.const 2) @@ -2128,16 +2055,16 @@ ) ) ) - (local.get $12) + (local.get $11) ) (block (i32.store - (local.get $10) - (local.get $21) + (local.get $1) + (local.get $16) ) (if (i32.eqz - (local.get $21) + (local.get $16) ) (block (i32.store @@ -2149,7 +2076,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $0) ) (i32.const -1) ) @@ -2162,43 +2089,40 @@ (block (if (i32.lt_u - (local.get $1) + (local.get $5) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $2 - (local.get $1) - ) (if (i32.eq - (local.get $12) + (local.get $11) (i32.load offset=16 - (local.get $1) + (local.get $5) ) ) (i32.store offset=16 - (local.get $2) - (local.get $21) + (local.get $5) + (local.get $16) ) (i32.store offset=20 - (local.get $1) - (local.get $21) + (local.get $5) + (local.get $16) ) ) (br_if $do-once21 (i32.eqz - (local.get $21) + (local.get $16) ) ) ) ) (if (i32.lt_u - (local.get $21) - (local.tee $3 + (local.get $16) + (local.tee $1 (i32.load (i32.const 1224) ) @@ -2207,42 +2131,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $21) - (local.get $1) + (local.get $16) + (local.get $5) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=16 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) - (local.get $3) + (local.get $0) + (local.get $1) ) (call $qa) (block (i32.store offset=16 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) ) (if - (local.tee $10 + (local.tee $0 (i32.load offset=20 - (local.get $12) + (local.get $11) ) ) (if (i32.lt_u - (local.get $10) + (local.get $0) (i32.load (i32.const 1224) ) @@ -2250,12 +2174,12 @@ (call $qa) (block (i32.store offset=20 - (local.get $21) - (local.get $10) + (local.get $16) + (local.get $0) ) (i32.store offset=24 - (local.get $10) - (local.get $21) + (local.get $0) + (local.get $16) ) ) ) @@ -2264,30 +2188,29 @@ ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 16) ) (block (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.tee $1 + (local.tee $0 (i32.add - (local.get $0) - (local.get $17) + (local.get $8) + (local.get $15) ) ) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $1) - (local.get $12) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $0 + (i32.add + (local.get $0) + (local.get $11) + ) + ) (i32.or (i32.load offset=4 (local.get $0) @@ -2298,42 +2221,42 @@ ) (block $do-once25 (i32.store offset=4 - (local.get $12) + (local.get $11) (i32.or - (local.get $0) + (local.get $8) (i32.const 3) ) ) (i32.store offset=4 - (local.get $6) + (local.get $2) (i32.or - (local.get $17) + (local.get $15) (i32.const 1) ) ) (i32.store (i32.add - (local.get $6) - (local.get $17) + (local.get $2) + (local.get $15) ) - (local.get $17) + (local.get $15) ) - (local.set $10 + (local.set $1 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 3) ) ) (if (i32.lt_u - (local.get $17) + (local.get $15) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $10) + (local.get $1) (i32.const 3) ) (i32.const 1248) @@ -2341,25 +2264,25 @@ ) (if (i32.and - (local.tee $2 - (i32.shl - (i32.const 1) - (local.get $10) - ) - ) - (local.tee $3 + (local.tee $4 (i32.load (i32.const 1208) ) ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) ) (if (i32.lt_u - (local.tee $3 + (local.tee $4 (i32.load - (local.tee $2 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -2371,11 +2294,11 @@ ) (call $qa) (block - (local.set $9 - (local.get $2) + (local.set $29 + (local.get $1) ) - (local.set $8 - (local.get $3) + (local.set $14 + (local.get $4) ) ) ) @@ -2383,70 +2306,70 @@ (i32.store (i32.const 1208) (i32.or - (local.get $2) - (local.get $3) + (local.get $1) + (local.get $4) ) ) - (local.set $9 + (local.set $29 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $8 - (local.get $1) + (local.set $14 + (local.get $0) ) ) ) (i32.store - (local.get $9) - (local.get $6) + (local.get $29) + (local.get $2) ) (i32.store offset=12 - (local.get $8) - (local.get $6) + (local.get $14) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $8) + (local.get $2) + (local.get $14) ) (i32.store offset=12 - (local.get $6) - (local.get $1) + (local.get $2) + (local.get $0) ) (br $do-once25) ) ) - (local.set $14 + (local.set $1 (i32.add (i32.shl - (local.tee $16 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $17) + (local.get $15) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $17) + (local.get $15) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $2 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $3 + (local.get $0) + (local.tee $1 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -2466,21 +2389,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $17) + (local.get $15) (i32.add - (local.tee $14 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $2 + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.tee $10 + (local.tee $4 (i32.shl - (local.get $2) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -2491,15 +2414,15 @@ ) ) (i32.or + (local.get $0) (local.get $1) - (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $10) - (local.get $2) + (local.get $4) + (local.get $3) ) (i32.const 15) ) @@ -2511,7 +2434,7 @@ (i32.const 1) ) (i32.shl - (local.get $14) + (local.get $0) (i32.const 1) ) ) @@ -2526,29 +2449,29 @@ ) ) (i32.store offset=28 - (local.get $6) - (local.get $16) + (local.get $2) + (local.get $0) ) (i32.store offset=20 - (local.get $6) + (local.get $2) (i32.const 0) ) (i32.store offset=16 - (local.get $6) + (local.get $2) (i32.const 0) ) (if (i32.eqz (i32.and - (local.tee $2 + (local.tee $4 (i32.load (i32.const 1212) ) ) - (local.tee $10 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $16) + (local.get $0) ) ) ) @@ -2557,71 +2480,71 @@ (i32.store (i32.const 1212) (i32.or - (local.get $2) - (local.get $10) + (local.get $3) + (local.get $4) ) ) (i32.store - (local.get $14) - (local.get $6) + (local.get $1) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $14) + (local.get $2) + (local.get $1) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (br $do-once25) ) ) - (local.set $10 + (local.set $3 (i32.shl - (local.get $17) + (local.get $15) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $16) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $16) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $2 + (local.set $0 (i32.load - (local.get $14) + (local.get $1) ) ) (if (i32.eq - (local.tee $7 + (local.tee $9 (loop $while-in28 (result i32) (block $while-out27 (result i32) (if (i32.eq - (local.get $17) + (local.get $15) (i32.and (i32.load offset=4 - (local.get $2) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $19 - (local.get $2) + (local.set $30 + (local.get $0) ) (br $while-out27 (i32.const 148) @@ -2629,17 +2552,17 @@ ) ) (if (result i32) - (local.tee $3 + (local.tee $1 (i32.load - (local.tee $14 + (local.tee $4 (i32.add (i32.add - (local.get $2) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $10) + (local.get $3) (i32.const 31) ) (i32.const 2) @@ -2649,23 +2572,23 @@ ) ) (block - (local.set $10 + (local.set $3 (i32.shl - (local.get $10) + (local.get $3) (i32.const 1) ) ) - (local.set $2 - (local.get $3) + (local.set $0 + (local.get $1) ) (br $while-in28) ) (block (result i32) - (local.set $22 - (local.get $14) + (local.set $31 + (local.get $4) ) - (local.set $15 - (local.get $2) + (local.set $40 + (local.get $0) ) (i32.const 145) ) @@ -2677,7 +2600,7 @@ ) (if (i32.lt_u - (local.get $22) + (local.get $31) (i32.load (i32.const 1224) ) @@ -2685,123 +2608,120 @@ (call $qa) (block (i32.store - (local.get $22) - (local.get $6) + (local.get $31) + (local.get $2) ) (i32.store offset=24 - (local.get $6) - (local.get $15) + (local.get $2) + (local.get $40) ) (i32.store offset=12 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) (i32.store offset=8 - (local.get $6) - (local.get $6) + (local.get $2) + (local.get $2) ) ) ) (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 148) ) - (block - (local.set $0 - (local.get $19) - ) - (if - (i32.and - (i32.ge_u - (local.tee $10 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $3 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $30) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $3) + (local.tee $4 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $10) - (local.get $6) - ) - (i32.store offset=8 - (local.get $0) - (local.get $6) - ) - (i32.store offset=8 - (local.get $6) - (local.get $10) - ) - (i32.store offset=12 - (local.get $6) - (local.get $19) - ) - (i32.store offset=24 - (local.get $6) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $4) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $30) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) ) - (call $qa) ) + (call $qa) ) ) ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (return (i32.add - (local.get $12) + (local.get $11) (i32.const 8) ) ) ) - (local.get $0) + (local.get $8) ) - (local.get $0) + (local.get $8) ) ) - (local.get $0) + (local.get $8) ) ) ) ) ) - (block $folding-inner0 + (block $folding-inner1 (if (i32.ge_u - (local.tee $12 + (local.tee $2 (i32.load (i32.const 1216) ) ) - (local.get $3) + (local.get $4) ) (block - (local.set $15 + (local.set $0 (i32.load (i32.const 1228) ) ) (if (i32.gt_u - (local.tee $19 + (local.tee $1 (i32.sub - (local.get $12) - (local.get $3) + (local.get $2) + (local.get $4) ) ) (i32.const 15) @@ -2809,35 +2729,35 @@ (block (i32.store (i32.const 1228) - (local.tee $22 + (local.tee $3 (i32.add - (local.get $3) - (local.get $15) + (local.get $0) + (local.get $4) ) ) ) (i32.store (i32.const 1216) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $22) + (local.get $3) (i32.or - (local.get $19) + (local.get $1) (i32.const 1) ) ) (i32.store (i32.add - (local.get $19) - (local.get $22) + (local.get $1) + (local.get $3) ) - (local.get $19) + (local.get $1) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $3) + (local.get $4) (i32.const 3) ) ) @@ -2852,1987 +2772,1914 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $15) + (local.get $0) (i32.or - (local.get $12) + (local.get $2) (i32.const 3) ) ) - (local.set $0 - (i32.add - (local.get $12) - (local.get $15) - ) - ) (i32.store offset=4 - (local.get $0) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $2) + ) + ) (i32.or (i32.load offset=4 - (local.get $0) + (local.get $1) ) (i32.const 1) ) ) ) ) - (br $folding-inner0) + (br $folding-inner1) ) ) - (if - (i32.gt_u - (local.tee $15 - (i32.load - (i32.const 1220) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) - (local.get $3) ) - (block - (i32.store - (i32.const 1220) - (local.tee $19 - (i32.sub - (local.get $15) - (local.get $3) - ) + (local.set $0 + (local.get $18) + ) + (if + (i32.eqz + (i32.load + (i32.const 1680) ) ) - (i32.store - (i32.const 1232) - (local.tee $12 - (i32.add - (local.get $3) - (local.tee $15 - (i32.load - (i32.const 1232) - ) - ) - ) + (block + (i32.store + (i32.const 1688) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $19) - (i32.const 1) + (i32.store + (i32.const 1684) + (i32.const 4096) ) - ) - (i32.store offset=4 - (local.get $15) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1692) + (i32.const -1) ) - ) - (br $folding-inner0) - ) - ) - (if - (i32.eqz - (i32.load - (i32.const 1680) - ) - ) - (block - (i32.store - (i32.const 1688) - (i32.const 4096) - ) - (i32.store - (i32.const 1684) - (i32.const 4096) - ) - (i32.store - (i32.const 1692) - (i32.const -1) - ) - (i32.store - (i32.const 1696) - (i32.const -1) - ) - (i32.store - (i32.const 1700) - (i32.const 0) - ) - (i32.store - (i32.const 1652) - (i32.const 0) - ) - (i32.store - (local.get $13) - (local.tee $15 - (i32.xor - (i32.and - (local.get $13) - (i32.const -16) + (i32.store + (i32.const 1696) + (i32.const -1) + ) + (i32.store + (i32.const 1700) + (i32.const 0) + ) + (i32.store + (i32.const 1652) + (i32.const 0) + ) + (i32.store + (local.get $0) + (local.tee $0 + (i32.xor + (i32.and + (local.get $0) + (i32.const -16) + ) + (i32.const 1431655768) ) - (i32.const 1431655768) ) ) - ) - (i32.store - (i32.const 1680) - (local.get $15) + (i32.store + (i32.const 1680) + (local.get $0) + ) ) ) - ) - (local.set $15 - (i32.add - (local.get $3) - (i32.const 48) - ) - ) - (if - (i32.le_u - (local.tee $13 - (i32.and - (local.tee $12 - (i32.add - (local.tee $13 - (i32.load - (i32.const 1688) + (if + (i32.le_u + (local.tee $5 + (i32.and + (local.tee $10 + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) ) - ) - (local.tee $19 - (i32.add - (local.get $3) - (i32.const 47) + (local.tee $6 + (i32.add + (local.get $4) + (i32.const 47) + ) ) ) ) - ) - (local.tee $22 - (i32.sub - (i32.const 0) - (local.get $13) + (local.tee $12 + (i32.sub + (i32.const 0) + (local.get $0) + ) ) ) ) + (local.get $4) ) - (local.get $3) - ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) - ) - ) - (if - (local.tee $17 - (i32.load - (i32.const 1648) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) (if - (i32.or - (i32.le_u - (local.tee $8 - (i32.add - (local.get $13) - (local.tee $16 - (i32.load - (i32.const 1640) + (local.tee $0 + (i32.load + (i32.const 1648) + ) + ) + (if + (i32.or + (i32.le_u + (local.tee $8 + (i32.add + (local.get $5) + (local.tee $2 + (i32.load + (i32.const 1640) + ) ) ) ) + (local.get $2) + ) + (i32.gt_u + (local.get $8) + (local.get $0) ) - (local.get $16) ) - (i32.gt_u - (local.get $8) - (local.get $17) + (block + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) ) - (block - (global.set $r - (local.get $25) - ) - (return - (i32.const 0) - ) + ) + (local.set $22 + (i32.add + (local.get $4) + (i32.const 48) ) ) - ) - (if - (block (result i32) - (if - (i32.eq - (local.tee $7 - (if (result i32) - (i32.and - (i32.load - (i32.const 1652) - ) - (i32.const 4) + (if + (i32.eq + (local.tee $9 + (if (result i32) + (i32.and + (i32.load + (i32.const 1652) ) - (i32.const 188) - (block $label$break$b (result i32) - (if - (local.tee $17 - (i32.load - (i32.const 1232) - ) + (i32.const 4) + ) + (i32.const 188) + (block $label$break$b (result i32) + (if + (local.tee $2 + (i32.load + (i32.const 1232) ) - (block $label$break$c - (local.set $8 - (i32.const 1656) - ) - (loop $while-in32 - (block $while-out31 - (if - (i32.le_u - (local.tee $16 - (i32.load - (local.get $8) - ) + ) + (block $label$break$c + (local.set $14 + (i32.const 1656) + ) + (loop $while-in32 + (block $while-out31 + (if + (i32.le_u + (local.tee $8 + (i32.load + (local.get $14) ) - (local.get $17) ) - (if - (i32.gt_u - (i32.add - (i32.load - (local.tee $9 - (i32.add - (local.get $8) - (i32.const 4) - ) + (local.get $2) + ) + (if + (i32.gt_u + (i32.add + (i32.load + (local.tee $0 + (i32.add + (local.get $14) + (i32.const 4) ) ) - (local.get $16) ) - (local.get $17) - ) - (block - (local.set $0 - (local.get $8) - ) - (local.set $4 - (local.get $9) - ) - (br $while-out31) + (local.get $8) ) + (local.get $2) ) - ) - (br_if $while-in32 - (local.tee $8 - (i32.load offset=8 - (local.get $8) + (block + (local.set $8 + (local.get $0) ) + (br $while-out31) ) ) - (local.set $7 - (i32.const 171) + ) + (br_if $while-in32 + (local.tee $14 + (i32.load offset=8 + (local.get $14) + ) ) - (br $label$break$c) ) + (local.set $9 + (i32.const 171) + ) + (br $label$break$c) ) - (if - (i32.lt_u - (local.tee $8 - (i32.and - (local.get $22) - (i32.sub - (local.get $12) - (i32.load - (i32.const 1220) - ) + ) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (local.get $12) + (i32.sub + (local.get $10) + (i32.load + (i32.const 1220) ) ) ) - (i32.const 2147483647) ) - (block - (local.set $9 - (call $ta - (local.get $8) - ) + (i32.const 2147483647) + ) + (block + (local.set $0 + (call $ta + (local.get $2) ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $0) - ) - (i32.load - (local.get $4) - ) - ) - (local.get $9) - ) - (if - (i32.ne - (local.get $9) - (i32.const -1) + ) + (if + (i32.eq + (i32.add + (i32.load + (local.get $14) ) - (block - (local.set $20 - (local.get $9) - ) - (local.set $26 - (local.get $8) - ) - (br $label$break$b - (i32.const 191) - ) + (i32.load + (local.get $8) ) ) + (local.get $0) + ) + (if + (i32.ne + (local.get $0) + (i32.const -1) + ) (block - (local.set $11 - (local.get $9) - ) - (local.set $5 - (local.get $8) + (local.set $3 + (local.get $0) ) (local.set $7 - (i32.const 181) + (local.get $2) + ) + (br $label$break$b + (i32.const 191) ) ) ) + (block + (local.set $24 + (local.get $0) + ) + (local.set $1 + (local.get $2) + ) + (local.set $9 + (i32.const 181) + ) + ) ) ) ) - (local.set $7 - (i32.const 171) - ) + ) + (local.set $9 + (i32.const 171) + ) + ) + (if + (i32.eq + (local.get $9) + (i32.const 171) ) (if - (i32.eq - (local.get $7) - (i32.const 171) - ) - (if - (i32.ne - (local.tee $17 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $2 + (call $ta + (i32.const 0) ) - (i32.const -1) ) - (block $do-once33 - (local.set $2 - (if (result i32) - (i32.and - (local.tee $0 - (local.get $17) - ) - (local.tee $9 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1684) + (i32.const -1) + ) + (block $do-once33 + (local.set $8 + (i32.add + (local.tee $0 + (if (result i32) + (i32.and + (local.tee $0 + (local.get $2) + ) + (local.tee $10 + (i32.add + (local.tee $8 + (i32.load + (i32.const 1684) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $13) - (local.get $0) - ) - (i32.and - (i32.add + (i32.add + (i32.sub + (local.get $5) (local.get $0) - (local.get $9) ) - (i32.sub - (i32.const 0) - (local.get $8) + (i32.and + (i32.add + (local.get $0) + (local.get $10) + ) + (i32.sub + (i32.const 0) + (local.get $8) + ) ) ) + (local.get $5) ) - (local.get $13) ) - ) - (local.set $0 - (i32.add - (local.tee $8 - (i32.load - (i32.const 1640) - ) + (local.tee $10 + (i32.load + (i32.const 1640) ) - (local.get $2) ) ) - (if - (i32.and - (i32.lt_u - (local.get $2) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $2) - (local.get $3) - ) + ) + (if + (i32.and + (i32.lt_u + (local.get $0) + (i32.const 2147483647) ) - (block - (if - (local.tee $9 - (i32.load - (i32.const 1648) + (i32.gt_u + (local.get $0) + (local.get $4) + ) + ) + (block + (if + (local.tee $12 + (i32.load + (i32.const 1648) + ) + ) + (br_if $do-once33 + (i32.or + (i32.le_u + (local.get $8) + (local.get $10) + ) + (i32.gt_u + (local.get $8) + (local.get $12) ) ) - (br_if $do-once33 - (i32.or - (i32.le_u - (local.get $0) - (local.get $8) - ) - (i32.gt_u + ) + ) + (local.set $1 + (if (result i32) + (i32.eq + (local.get $2) + (local.tee $24 + (call $ta (local.get $0) - (local.get $9) ) ) ) - ) - (local.set $5 - (if (result i32) - (i32.eq - (local.get $17) - (local.tee $9 - (call $ta - (local.get $2) - ) - ) + (block + (local.set $3 + (local.get $2) ) - (block - (local.set $20 - (local.get $17) - ) - (local.set $26 - (local.get $2) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $0) ) - (block (result i32) - (local.set $11 - (local.get $9) - ) - (local.set $7 - (i32.const 181) - ) - (local.get $2) + (br $label$break$b + (i32.const 191) ) ) + (block (result i32) + (local.set $9 + (i32.const 181) + ) + (local.get $0) + ) ) ) ) ) ) ) - (if - (i32.eq - (local.get $7) - (i32.const 181) + ) + (if + (i32.eq + (local.get $9) + (i32.const 181) + ) + (block $label$break$d + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $1) + ) ) - (block $label$break$d - (local.set $9 - (i32.sub - (i32.const 0) - (local.get $5) + (if + (i32.and + (i32.and + (i32.ne + (local.get $24) + (i32.const -1) + ) + (i32.lt_u + (local.get $1) + (i32.const 2147483647) + ) + ) + (i32.gt_u + (local.get $22) + (local.get $1) ) ) - (local.set $1 - (if (result i32) - (i32.and + (if + (i32.lt_u + (local.tee $0 (i32.and - (i32.ne - (local.get $11) - (i32.const -1) + (i32.add + (local.tee $0 + (i32.load + (i32.const 1688) + ) + ) + (i32.sub + (local.get $6) + (local.get $1) + ) ) - (i32.lt_u - (local.get $5) - (i32.const 2147483647) + (i32.sub + (i32.const 0) + (local.get $0) ) ) - (i32.gt_u - (local.get $15) - (local.get $5) - ) ) + (i32.const 2147483647) + ) + (local.set $1 (if (result i32) - (i32.lt_u - (local.tee $0 - (i32.and - (i32.add - (local.tee $17 - (i32.load - (i32.const 1688) - ) - ) - (i32.sub - (local.get $19) - (local.get $5) - ) - ) - (i32.sub - (i32.const 0) - (local.get $17) - ) - ) + (i32.eq + (call $ta + (local.get $0) ) - (i32.const 2147483647) + (i32.const -1) ) - (if (result i32) - (i32.eq + (block + (drop (call $ta - (local.get $0) - ) - (i32.const -1) - ) - (block - (drop - (call $ta - (local.get $9) - ) + (local.get $2) ) - (br $label$break$d) - ) - (i32.add - (local.get $0) - (local.get $5) ) + (br $label$break$d) + ) + (i32.add + (local.get $0) + (local.get $1) ) - (local.get $5) ) - (local.get $5) ) ) - (if - (i32.ne - (local.get $11) - (i32.const -1) + ) + (if + (i32.ne + (local.get $24) + (i32.const -1) + ) + (block + (local.set $3 + (local.get $24) ) - (block - (local.set $20 - (local.get $11) - ) - (local.set $26 - (local.get $1) - ) - (br $label$break$b - (i32.const 191) - ) + (local.set $7 + (local.get $1) + ) + (br $label$break$b + (i32.const 191) ) ) ) ) - (i32.store - (i32.const 1652) - (i32.or - (i32.load - (i32.const 1652) - ) - (i32.const 4) + ) + (i32.store + (i32.const 1652) + (i32.or + (i32.load + (i32.const 1652) ) + (i32.const 4) ) - (i32.const 188) ) + (i32.const 188) ) ) - (i32.const 188) + ) + (i32.const 188) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 2147483647) ) (if - (i32.lt_u - (local.get $13) - (i32.const 2147483647) - ) - (if + (i32.and (i32.and - (i32.and - (i32.ne - (local.tee $1 - (call $ta - (local.get $13) - ) - ) - (i32.const -1) - ) - (i32.ne - (local.tee $13 - (call $ta - (i32.const 0) - ) + (i32.ne + (local.tee $0 + (call $ta + (local.get $5) ) - (i32.const -1) ) + (i32.const -1) ) - (i32.lt_u - (local.get $1) - (local.get $13) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.sub - (local.get $13) - (local.get $1) + (i32.ne + (local.tee $1 + (call $ta + (i32.const 0) ) ) - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.const -1) ) - (block - (local.set $20 + ) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + ) + (if + (i32.gt_u + (local.tee $1 + (i32.sub (local.get $1) - ) - (local.set $26 - (local.get $11) - ) - (local.set $7 - (i32.const 191) + (local.get $0) ) ) + (i32.add + (local.get $4) + (i32.const 40) + ) + ) + (block + (local.set $7 + (local.get $1) + ) + (local.set $9 + (i32.const 191) + ) + (local.set $3 + (local.get $0) + ) ) ) ) ) + ) + (if (i32.eq - (local.get $7) + (local.get $9) (i32.const 191) ) - ) - (block - (i32.store - (i32.const 1640) - (local.tee $11 - (i32.add - (local.get $26) - (i32.load - (i32.const 1640) + (block + (i32.store + (i32.const 1640) + (local.tee $0 + (i32.add + (local.get $7) + (i32.load + (i32.const 1640) + ) ) ) ) - ) - (if - (i32.gt_u - (local.get $11) - (i32.load - (i32.const 1644) + (if + (i32.gt_u + (local.get $0) + (i32.load + (i32.const 1644) + ) ) - ) - (i32.store - (i32.const 1644) - (local.get $11) - ) - ) - (if - (local.tee $11 - (i32.load - (i32.const 1232) + (i32.store + (i32.const 1644) + (local.get $0) ) ) - (block $do-once38 - (local.set $5 - (i32.const 1656) + (if + (local.tee $6 + (i32.load + (i32.const 1232) + ) ) - (loop $do-in41 - (block $do-out40 - (if - (i32.eq - (i32.add - (local.tee $19 - (i32.load - (local.tee $13 - (i32.add - (local.get $5) - (i32.const 4) - ) + (block $do-once38 + (local.set $1 + (i32.const 1656) + ) + (loop $do-in41 + (block $do-out40 + (if + (i32.eq + (i32.add + (local.tee $0 + (i32.load + (local.get $1) ) ) - ) - (local.tee $1 - (i32.load - (local.get $5) + (local.tee $5 + (i32.load + (local.tee $2 + (i32.add + (local.get $1) + (i32.const 4) + ) + ) + ) ) ) + (local.get $3) ) - (local.get $20) - ) - (block - (local.set $48 - (local.get $1) - ) - (local.set $49 - (local.get $13) - ) - (local.set $50 - (local.get $19) - ) - (local.set $51 - (local.get $5) - ) - (local.set $7 - (i32.const 201) + (block + (local.set $41 + (local.get $0) + ) + (local.set $42 + (local.get $2) + ) + (local.set $43 + (local.get $5) + ) + (local.set $44 + (local.get $1) + ) + (local.set $9 + (i32.const 201) + ) + (br $do-out40) ) - (br $do-out40) ) - ) - (br_if $do-in41 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $do-in41 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 201) - ) (if - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $51) - ) - (i32.const 8) - ) + (i32.eq + (local.get $9) + (i32.const 201) ) (if - (i32.and - (i32.lt_u - (local.get $11) - (local.get $20) - ) - (i32.ge_u - (local.get $11) - (local.get $48) + (i32.eqz + (i32.and + (i32.load offset=12 + (local.get $44) + ) + (i32.const 8) ) ) - (block - (i32.store - (local.get $49) - (i32.add - (local.get $26) - (local.get $50) + (if + (i32.and + (i32.lt_u + (local.get $6) + (local.get $3) + ) + (i32.ge_u + (local.get $6) + (local.get $41) ) ) - (local.set $5 - (i32.add - (local.tee $19 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $11) - (i32.const 8) + (block + (i32.store + (local.get $42) + (i32.add + (local.get $7) + (local.get $43) + ) + ) + (local.set $0 + (i32.add + (local.get $6) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $6) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) ) - (local.get $11) ) - ) - (local.set $13 - (i32.add - (i32.load - (i32.const 1220) - ) - (i32.sub - (local.get $26) - (local.get $19) + (local.set $1 + (i32.add + (i32.load + (i32.const 1220) + ) + (i32.sub + (local.get $7) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store - (i32.const 1220) - (local.get $13) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $13) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $0) ) - ) - (i32.store offset=4 - (i32.add - (local.get $5) - (local.get $13) + (i32.store + (i32.const 1220) + (local.get $1) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (i32.add + (local.get $0) + (local.get $1) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) + (br $do-once38) ) - (br $do-once38) ) ) ) - ) - (local.set $6 - (if (result i32) + (if (i32.lt_u - (local.get $20) - (local.tee $13 + (local.get $3) + (local.tee $2 (i32.load (i32.const 1224) ) ) ) - (block (result i32) + (block (i32.store (i32.const 1224) - (local.get $20) + (local.get $3) + ) + (local.set $2 + (local.get $3) ) - (local.get $20) ) - (local.get $13) ) - ) - (local.set $13 - (i32.add - (local.get $20) - (local.get $26) + (local.set $0 + (i32.add + (local.get $3) + (local.get $7) + ) ) - ) - (local.set $5 - (i32.const 1656) - ) - (loop $while-in43 - (block $while-out42 - (if - (i32.eq - (local.get $13) - (i32.load - (local.get $5) - ) - ) - (block - (local.set $52 - (local.get $5) - ) - (local.set $37 - (local.get $5) + (local.set $1 + (i32.const 1656) + ) + (loop $while-in43 + (block $while-out42 + (if + (i32.eq + (local.get $0) + (i32.load + (local.get $1) + ) ) - (local.set $7 - (i32.const 209) + (block + (local.set $45 + (local.get $1) + ) + (local.set $26 + (local.get $1) + ) + (local.set $9 + (i32.const 209) + ) + (br $while-out42) ) - (br $while-out42) ) - ) - (br_if $while-in43 - (local.tee $5 - (i32.load offset=8 - (local.get $5) + (br_if $while-in43 + (local.tee $1 + (i32.load offset=8 + (local.get $1) + ) ) ) + (local.set $23 + (i32.const 1656) + ) ) - (local.set $29 - (i32.const 1656) - ) - ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 209) ) - (local.set $29 - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $37) - ) - (i32.const 8) - ) - (i32.const 1656) - (block - (i32.store - (local.get $52) - (local.get $20) + (if + (i32.eq + (local.get $9) + (i32.const 209) + ) + (local.set $23 + (if (result i32) + (i32.and + (i32.load offset=12 + (local.get $26) + ) + (i32.const 8) ) - (i32.store offset=4 - (local.get $37) - (i32.add + (i32.const 1656) + (block + (i32.store + (local.get $45) + (local.get $3) + ) + (i32.store offset=4 (local.get $26) - (i32.load offset=4 - (local.get $37) + (i32.add + (local.get $7) + (i32.load offset=4 + (local.get $26) + ) ) ) - ) - (local.set $19 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $20) - (i32.const 8) + (local.set $7 + (i32.add + (local.get $4) + (local.tee $10 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) + (local.get $3) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) ) ) - (local.get $20) ) - ) - (local.set $1 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $5 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $8 + (i32.sub + (i32.sub + (local.tee $5 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) ) + (local.get $0) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $5) - (i32.const 7) + (local.get $10) ) + (local.get $4) ) - (local.get $13) ) - ) - (local.set $5 - (i32.add - (local.get $3) - (local.get $19) - ) - ) - (local.set $15 - (i32.sub - (i32.sub - (local.get $1) - (local.get $19) + (i32.store offset=4 + (local.get $10) + (i32.or + (local.get $4) + (i32.const 3) ) - (local.get $3) ) - ) - (i32.store offset=4 - (local.get $19) - (i32.or - (local.get $3) - (i32.const 3) - ) - ) - (if - (i32.eq - (local.get $1) - (local.get $11) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1220) + (if + (i32.eq + (local.get $5) + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1220) + ) ) ) ) - ) - (i32.store - (i32.const 1232) - (local.get $5) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (i32.store + (i32.const 1232) + (local.get $7) ) - ) - ) - (block $do-once44 - (if - (i32.eq - (i32.load - (i32.const 1228) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) - (local.get $1) ) - (block - (i32.store - (i32.const 1216) - (local.tee $2 - (i32.add - (local.get $15) - (i32.load - (i32.const 1216) - ) - ) + ) + (block $do-once44 + (if + (i32.eq + (i32.load + (i32.const 1228) ) - ) - (i32.store - (i32.const 1228) (local.get $5) ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $2) - (i32.const 1) + (block + (i32.store + (i32.const 1216) + (local.tee $0 + (i32.add + (local.get $8) + (i32.load + (i32.const 1216) + ) + ) + ) ) - ) - (i32.store - (i32.add - (local.get $2) - (local.get $5) + (i32.store + (i32.const 1228) + (local.get $7) ) - (local.get $2) - ) - (br $do-once44) - ) - ) - (if - (i32.eq - (i32.and - (local.tee $2 - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $0) + (i32.const 1) ) ) - (i32.const 3) - ) - (i32.const 1) - ) - (block - (local.set $4 - (i32.and - (local.get $2) - (i32.const -8) + (i32.store + (i32.add + (local.get $0) + (local.get $7) + ) + (local.get $0) ) + (br $do-once44) ) - (local.set $0 - (i32.shr_u - (local.get $2) - (i32.const 3) + ) + (local.set $4 + (if (result i32) + (i32.eq + (i32.and + (local.tee $0 + (i32.load offset=4 + (local.get $5) + ) + ) + (i32.const 3) + ) + (i32.const 1) ) - ) - (block $label$break$e - (if - (i32.lt_u - (local.get $2) - (i32.const 256) + (block (result i32) + (local.set $12 + (i32.and + (local.get $0) + (i32.const -8) + ) ) - (block - (local.set $12 - (i32.load offset=12 - (local.get $1) - ) + (local.set $3 + (i32.shr_u + (local.get $0) + (i32.const 3) ) + ) + (block $label$break$e (if - (i32.ne - (local.tee $9 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $5) ) ) - (local.tee $22 - (i32.load offset=8 - (local.get $1) + (if + (i32.ne + (local.tee $4 + (i32.load offset=8 + (local.get $5) + ) + ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 1248) + ) + ) + ) + (block $do-once47 + (if + (i32.lt_u + (local.get $4) + (local.get $2) + ) + (call $qa) + ) + (br_if $do-once47 + (i32.eq + (local.get $5) + (i32.load offset=12 + (local.get $4) + ) + ) + ) + (call $qa) ) ) - ) - (block $do-once47 (if - (i32.lt_u - (local.get $22) - (local.get $6) + (i32.eq + (local.get $1) + (local.get $4) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $3) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - (call $qa) ) - (br_if $do-once47 + (if (i32.eq + (local.get $0) (local.get $1) - (i32.load offset=12 - (local.get $22) + ) + (local.set $32 + (i32.add + (local.get $1) + (i32.const 8) ) ) - ) - (call $qa) - ) - ) - (if - (i32.eq - (local.get $12) - (local.get $22) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) + (block $do-once49 + (if + (i32.lt_u + (local.get $1) + (local.get $2) + ) + (call $qa) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (if + (i32.eq + (local.get $5) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) + ) + (block + (local.set $32 + (local.get $0) + ) + (br $do-once49) ) - (i32.const -1) ) + (call $qa) ) ) - (br $label$break$e) - ) - ) - (if - (i32.eq - (local.get $9) - (local.get $12) - ) - (local.set $42 - (i32.add - (local.get $12) - (i32.const 8) + (i32.store offset=12 + (local.get $4) + (local.get $1) + ) + (i32.store + (local.get $32) + (local.get $4) ) ) - (block $do-once49 - (if - (i32.lt_u - (local.get $12) - (local.get $6) + (block + (local.set $6 + (i32.load offset=24 + (local.get $5) ) - (call $qa) ) (if (i32.eq - (local.get $1) - (i32.load - (local.tee $0 - (i32.add - (local.get $12) - (i32.const 8) - ) + (local.get $5) + (local.tee $0 + (i32.load offset=12 + (local.get $5) ) ) ) - (block - (local.set $42 - (local.get $0) - ) - (br $do-once49) - ) - ) - (call $qa) - ) - ) - (i32.store offset=12 - (local.get $22) - (local.get $12) - ) - (i32.store - (local.get $42) - (local.get $22) - ) - ) - (block - (local.set $9 - (i32.load offset=24 - (local.get $1) - ) - ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 - (local.get $1) - ) - ) - (local.get $1) - ) - (block $do-once51 - (local.set $0 - (if (result i32) - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.tee $17 - (i32.add - (local.get $1) - (i32.const 16) + (block $do-once51 + (if + (local.tee $0 + (i32.load + (local.tee $4 + (i32.add + (local.tee $1 + (i32.add + (local.get $5) + (i32.const 16) + ) ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (block (result i32) - (local.set $2 - (local.get $16) + (local.set $1 + (local.get $4) ) - (local.get $8) - ) - (if (result i32) - (local.tee $21 - (i32.load - (local.get $17) + (br_if $do-once51 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) + ) + ) ) ) - (block (result i32) - (local.set $2 - (local.get $21) + ) + (loop $while-in54 + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) + ) + (br $while-in54) ) - (local.get $17) ) - (br $do-once51) - ) - ) - ) - (loop $while-in54 - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 20) + (if + (local.tee $3 + (i32.load + (local.tee $4 + (i32.add + (local.get $0) + (i32.const 16) + ) + ) + ) + ) + (block + (local.set $0 + (local.get $3) + ) + (local.set $1 + (local.get $4) ) + (br $while-in54) ) ) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.lt_u + (local.get $1) + (local.get $2) ) - (local.set $0 - (local.get $8) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $17 + (local.get $0) + ) ) - (br $while-in54) ) ) - (if - (local.tee $16 - (i32.load - (local.tee $8 - (i32.add - (local.get $2) - (i32.const 16) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $5) ) ) + (local.get $2) ) + (call $qa) ) - (block - (local.set $2 - (local.get $16) + (if + (i32.ne + (local.get $5) + (i32.load offset=12 + (local.get $1) + ) ) - (local.set $0 - (local.get $8) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $17 + (local.get $0) + ) ) - (br $while-in54) + (call $qa) ) ) ) - (if - (i32.lt_u - (local.get $0) + (br_if $label$break$e + (i32.eqz (local.get $6) ) - (call $qa) - (block + ) + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 + (i32.load offset=28 + (local.get $5) + ) + ) + (i32.const 2) + ) + (i32.const 1512) + ) + ) + ) + (local.get $5) + ) + (block $do-once55 (i32.store - (local.get $0) - (i32.const 0) + (local.get $1) + (local.get $17) ) - (local.set $24 - (local.get $2) + (br_if $do-once55 + (local.get $17) ) + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$e) ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $8 - (i32.load offset=8 - (local.get $1) + (block + (if + (i32.lt_u + (local.get $6) + (i32.load + (i32.const 1224) + ) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $5) + (i32.load offset=16 + (local.get $6) + ) + ) + (i32.store offset=16 + (local.get $6) + (local.get $17) + ) + (i32.store offset=20 + (local.get $6) + (local.get $17) + ) + ) + (br_if $label$break$e + (i32.eqz + (local.get $17) ) ) - (local.get $6) ) - (call $qa) - ) - (local.set $3 - (local.get $8) ) (if - (i32.ne - (local.get $1) - (i32.load offset=12 - (local.get $3) + (i32.lt_u + (local.get $17) + (local.tee $1 + (i32.load + (i32.const 1224) + ) ) ) (call $qa) ) - (local.set $2 - (local.get $0) + (i32.store offset=24 + (local.get $17) + (local.get $6) ) (if - (i32.eq - (local.get $1) - (i32.load offset=8 - (local.get $0) + (local.tee $0 + (i32.load offset=16 + (local.get $5) ) ) - (block - (i32.store offset=12 - (local.get $3) - (local.get $0) - ) - (i32.store offset=8 - (local.get $2) - (local.get $8) - ) - (local.set $24 + (if + (i32.lt_u (local.get $0) + (local.get $1) ) - ) - (call $qa) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $9) - ) - ) - (if - (i32.eq - (i32.load - (local.tee $22 - (i32.add - (i32.shl - (local.tee $0 - (i32.load offset=28 - (local.get $1) - ) - ) - (i32.const 2) + (call $qa) + (block + (i32.store offset=16 + (local.get $17) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $17) ) - (i32.const 1512) ) ) ) - (local.get $1) - ) - (block $do-once55 - (i32.store - (local.get $22) - (local.get $24) - ) - (br_if $do-once55 - (local.get $24) - ) - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $0) + (br_if $label$break$e + (i32.eqz + (local.tee $0 + (i32.load offset=20 + (local.get $5) ) - (i32.const -1) ) ) ) - (br $label$break$e) - ) - (block (if (i32.lt_u - (local.get $9) + (local.get $0) (i32.load (i32.const 1224) ) ) (call $qa) - ) - (local.set $0 - (local.get $9) - ) - (if - (i32.eq - (local.get $1) - (i32.load offset=16 + (block + (i32.store offset=20 + (local.get $17) (local.get $0) ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $24) - ) - (i32.store offset=20 - (local.get $9) - (local.get $24) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.get $24) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $24) - (local.tee $0 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) - ) - (i32.store offset=24 - (local.get $24) - (local.get $9) - ) - (local.set $2 - (local.get $1) - ) - (if - (local.tee $12 - (i32.load offset=16 - (local.get $1) - ) - ) - (if - (i32.lt_u - (local.get $12) - (local.get $0) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) - ) - ) - (br_if $label$break$e - (i32.eqz - (local.tee $12 - (i32.load offset=20 - (local.get $2) + (i32.store offset=24 + (local.get $0) + (local.get $17) + ) ) ) ) ) - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $24) - (local.get $12) - ) - (i32.store offset=24 - (local.get $12) - (local.get $24) - ) - ) + ) + (local.set $5 + (i32.add + (local.get $5) + (local.get $12) ) ) + (i32.add + (local.get $8) + (local.get $12) + ) ) + (local.get $8) ) - (local.set $1 - (i32.add - (local.get $1) - (local.get $4) - ) - ) - (local.set $15 - (i32.add - (local.get $4) - (local.get $15) + ) + (i32.store offset=4 + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $5) ) + (i32.const -2) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.and - (i32.load offset=4 - (local.get $1) + (i32.store offset=4 + (local.get $7) + (i32.or + (local.get $4) + (i32.const 1) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $15) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $5) - (local.get $15) ) - (local.get $15) - ) - (local.set $0 - (i32.shr_u - (local.get $15) - (i32.const 3) + (i32.store + (i32.add + (local.get $4) + (local.get $7) + ) + (local.get $4) ) - ) - (if - (i32.lt_u - (local.get $15) - (i32.const 256) + (local.set $1 + (i32.shr_u + (local.get $4) + (i32.const 3) + ) ) - (block - (local.set $2 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 1248) - ) + (if + (i32.lt_u + (local.get $4) + (i32.const 256) ) - (if - (i32.and - (local.tee $0 + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) - (local.get $0) + (local.get $1) + (i32.const 3) ) + (i32.const 1248) ) - (local.tee $12 - (i32.load - (i32.const 1208) + ) + (if + (i32.and + (local.tee $4 + (i32.load + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) ) ) - ) - (block $do-once59 - (if - (i32.ge_u - (local.tee $9 - (i32.load - (local.tee $0 - (i32.add - (local.get $2) - (i32.const 8) + (block $do-once59 + (if + (i32.ge_u + (local.tee $4 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (block + (local.set $33 + (local.get $1) + ) + (local.set $27 + (local.get $4) + ) + (br $do-once59) ) ) - (block - (local.set $43 - (local.get $0) + (call $qa) + ) + (block + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $4) ) - (local.set $38 - (local.get $9) + ) + (local.set $33 + (i32.add + (local.get $0) + (i32.const 8) ) - (br $do-once59) ) - ) - (call $qa) - ) - (block - (i32.store - (i32.const 1208) - (i32.or + (local.set $27 (local.get $0) - (local.get $12) ) ) - (local.set $43 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) - (local.set $38 - (local.get $2) - ) ) + (i32.store + (local.get $33) + (local.get $7) + ) + (i32.store offset=12 + (local.get $27) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $27) + ) + (i32.store offset=12 + (local.get $7) + (local.get $0) + ) + (br $do-once44) ) - (i32.store - (local.get $43) - (local.get $5) - ) - (i32.store offset=12 - (local.get $38) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $38) - ) - (i32.store offset=12 - (local.get $5) - (local.get $2) - ) - (br $do-once44) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $4 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $15) - (i32.const 8) - ) - ) + (local.set $1 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $15) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $4) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $9 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $0) - (local.tee $12 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $4) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $15) - (i32.add - (local.tee $8 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $4) - (local.get $9) + (i32.or + (i32.and + (i32.shr_u + (local.get $4) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (local.get $9) - (local.get $12) + (i32.or + (local.get $0) + (local.get $1) + ) ) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $4) + (i32.shr_u + (i32.shl + (local.get $3) + (local.get $2) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $8) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $5) - (local.get $4) - ) - (i32.store offset=20 - (local.get $5) - (i32.const 0) - ) - (i32.store offset=16 - (local.get $5) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $8 - (i32.shl - (i32.const 1) - (local.get $4) + (i32.store offset=28 + (local.get $7) + (local.get $0) + ) + (i32.store offset=20 + (local.get $7) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $7) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $3 + (i32.load + (i32.const 1212) + ) ) - ) - (local.tee $2 - (i32.load - (i32.const 1212) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $2) - (local.get $8) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $2) + (local.get $3) + ) ) + (i32.store + (local.get $1) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $1) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) + (br $do-once44) ) - (i32.store - (local.get $0) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $0) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $5) - ) - (br $do-once44) ) - ) - (local.set $8 - (i32.shl - (local.get $15) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $4) - (i32.const 1) + (local.set $14 + (i32.shl + (local.get $4) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $4) - (i32.const 31) ) ) ) - ) - (local.set $2 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $1) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in64 (result i32) - (block $while-out63 (result i32) - (if - (i32.eq - (local.get $15) - (i32.and - (i32.load offset=4 - (local.get $2) + (if + (i32.eq + (local.tee $9 + (loop $while-in64 (result i32) + (block $while-out63 (result i32) + (if + (i32.eq + (local.get $4) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) ) - ) - (block - (local.set $44 - (local.get $2) - ) - (br $while-out63 - (i32.const 279) + (block + (local.set $34 + (local.get $0) + ) + (br $while-out63 + (i32.const 279) + ) ) ) - ) - (if (result i32) - (local.tee $4 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $1 + (i32.load + (local.tee $3 (i32.add - (local.get $2) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $8) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $14) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $8 - (i32.shl - (local.get $8) - (i32.const 1) + (block + (local.set $14 + (i32.shl + (local.get $14) + (i32.const 1) + ) ) + (local.set $0 + (local.get $1) + ) + (br $while-in64) ) - (local.set $2 - (local.get $4) - ) - (br $while-in64) - ) - (block (result i32) - (local.set $45 - (local.get $0) - ) - (local.set $53 - (local.get $2) + (block (result i32) + (local.set $35 + (local.get $3) + ) + (local.set $46 + (local.get $0) + ) + (i32.const 276) ) - (i32.const 276) ) ) ) ) + (i32.const 276) ) - (i32.const 276) - ) - (if - (i32.lt_u - (local.get $45) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $45) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $53) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) + (if + (i32.lt_u + (local.get $35) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $5) - (local.get $5) + (call $qa) + (block + (i32.store + (local.get $35) + (local.get $7) + ) + (i32.store offset=24 + (local.get $7) + (local.get $46) + ) + (i32.store offset=12 + (local.get $7) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $7) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 279) - ) - (block - (local.set $0 - (local.get $44) + (if + (i32.eq + (local.get $9) + (i32.const 279) ) (if (i32.and (i32.ge_u - (local.tee $8 + (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $34) + ) ) ) (local.tee $4 @@ -4848,23 +4695,23 @@ ) (block (i32.store offset=12 - (local.get $8) - (local.get $5) + (local.get $1) + (local.get $7) ) (i32.store offset=8 (local.get $0) - (local.get $5) + (local.get $7) ) (i32.store offset=8 - (local.get $5) - (local.get $8) + (local.get $7) + (local.get $1) ) (i32.store offset=12 - (local.get $5) - (local.get $44) + (local.get $7) + (local.get $34) ) (i32.store offset=24 - (local.get $5) + (local.get $7) (i32.const 0) ) ) @@ -4874,676 +4721,659 @@ ) ) ) - ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $19) - (i32.const 8) + (global.set $r + (local.get $18) + ) + (return + (i32.add + (local.get $10) + (i32.const 8) + ) ) ) ) ) ) - ) - (loop $while-in66 - (block $while-out65 - (if - (i32.le_u - (local.tee $5 - (i32.load - (local.get $29) - ) - ) - (local.get $11) - ) + (loop $while-in66 + (block $while-out65 (if - (i32.gt_u - (local.tee $15 - (i32.add - (i32.load offset=4 - (local.get $29) - ) - (local.get $5) + (i32.le_u + (local.tee $0 + (i32.load + (local.get $23) ) ) - (local.get $11) + (local.get $6) ) - (block - (local.set $2 - (local.get $15) + (br_if $while-out65 + (i32.gt_u + (local.tee $0 + (i32.add + (i32.load offset=4 + (local.get $23) + ) + (local.get $0) + ) + ) + (local.get $6) ) - (br $while-out65) ) ) - ) - (local.set $29 - (i32.load offset=8 - (local.get $29) + (local.set $23 + (i32.load offset=8 + (local.get $23) + ) ) + (br $while-in66) ) - (br $while-in66) ) - ) - (local.set $5 - (i32.add - (local.tee $4 - (local.tee $19 - (select - (local.get $11) - (local.tee $5 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $15 - (i32.add - (local.tee $19 - (i32.add - (local.get $2) - (i32.const -47) - ) - ) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) + (i32.store + (i32.const 1232) + (local.tee $1 + (i32.add + (local.get $3) + (local.tee $2 + (select + (i32.and + (i32.sub (i32.const 0) - (i32.and - (local.get $15) - (i32.const 7) + (local.tee $1 + (i32.add + (local.get $3) + (i32.const 8) + ) ) ) - (local.get $19) + (i32.const 7) ) - ) - (i32.lt_u - (local.get $5) - (local.tee $15 - (i32.add - (local.get $11) - (i32.const 16) - ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) ) ) ) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 + (i32.store + (i32.const 1220) + (local.tee $2 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $2) + ) + ) + ) + (i32.store offset=4 + (local.get $1) + (i32.or + (local.get $2) + (i32.const 1) + ) + ) + (i32.store offset=4 (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) + (local.get $1) + (local.get $2) + ) + (i32.const 40) + ) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) + ) + (i32.store offset=4 + (local.tee $2 + (select + (local.get $6) + (local.tee $1 + (i32.add + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $2 + (i32.add + (local.tee $1 + (i32.add + (local.get $0) + (i32.const -47) + ) + ) + (i32.const 8) + ) + ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $2) + (i32.const 7) ) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and (local.get $1) - (i32.const 7) + ) + ) + (i32.lt_u + (local.get $1) + (local.tee $8 + (i32.add + (local.get $6) + (i32.const 16) + ) ) ) ) - (local.get $20) ) + (i32.const 27) ) - ) - (i32.store - (i32.const 1220) - (local.tee $8 - (i32.sub - (i32.add - (local.get $26) - (i32.const -40) - ) - (local.get $13) + (i32.store offset=8 + (local.get $2) + (i32.load + (i32.const 1656) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $8) - (i32.const 1) + (i32.store offset=12 + (local.get $2) + (i32.load + (i32.const 1660) + ) ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $8) + (i32.store offset=16 + (local.get $2) + (i32.load + (i32.const 1664) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) + (i32.store offset=20 + (local.get $2) + (i32.load + (i32.const 1668) + ) ) - ) - (local.set $0 - (local.get $19) - ) - (i32.store offset=4 - (local.get $0) - (i32.const 27) - ) - (i32.store offset=8 - (local.get $4) - (i32.load + (i32.store (i32.const 1656) + (local.get $3) ) - ) - (i32.store offset=12 - (local.get $4) - (i32.load + (i32.store (i32.const 1660) + (local.get $7) ) - ) - (i32.store offset=16 - (local.get $4) - (i32.load - (i32.const 1664) - ) - ) - (i32.store offset=20 - (local.get $4) - (i32.load + (i32.store (i32.const 1668) + (i32.const 0) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1664) - (local.get $5) - ) - (local.set $5 - (i32.add - (local.get $0) - (i32.const 24) - ) - ) - (loop $do-in68 (i32.store - (local.tee $5 - (i32.add - (local.get $5) - (i32.const 4) - ) + (i32.const 1664) + (i32.add + (local.get $2) + (i32.const 8) ) - (i32.const 7) ) - (br_if $do-in68 - (i32.lt_u - (i32.add - (local.get $5) - (i32.const 4) - ) + (local.set $1 + (i32.add (local.get $2) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $11) - (local.get $19) - ) - (block - (i32.store offset=4 - (local.get $0) - (i32.and - (i32.load offset=4 - (local.get $0) + (loop $do-in68 + (i32.store + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.tee $5 - (i32.sub - (local.get $19) - (local.get $11) - ) + (br_if $do-in68 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $0) ) ) - (i32.store - (local.get $19) - (local.get $5) - ) - (local.set $1 - (i32.shr_u - (local.get $5) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $2) + (local.get $6) ) - (if - (i32.lt_u - (local.get $5) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $2) + (i32.and + (i32.load offset=4 + (local.get $2) + ) + (i32.const -2) + ) ) - (block - (local.set $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) + (i32.store offset=4 + (local.get $6) + (i32.or + (local.tee $5 + (i32.sub + (local.get $2) + (local.get $6) ) - (i32.const 1248) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $4 + ) + (i32.store + (local.get $2) + (local.get $5) + ) + (local.set $1 + (i32.shr_u + (local.get $5) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $5) + (i32.const 256) + ) + (block + (local.set $0 + (i32.add (i32.shl - (i32.const 1) (local.get $1) + (i32.const 3) ) - ) - (local.tee $2 - (i32.load - (i32.const 1208) - ) + (i32.const 1248) ) ) (if - (i32.lt_u - (local.tee $2 + (i32.and + (local.tee $3 (i32.load - (local.tee $4 - (i32.add - (local.get $13) - (i32.const 8) + (i32.const 1208) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (if + (i32.lt_u + (local.tee $3 + (i32.load + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 8) + ) ) ) ) + (i32.load + (i32.const 1224) + ) ) - (i32.load - (i32.const 1224) + (call $qa) + (block + (local.set $36 + (local.get $1) + ) + (local.set $28 + (local.get $3) + ) ) ) - (call $qa) (block - (local.set $46 - (local.get $4) - ) - (local.set $39 - (local.get $2) + (i32.store + (i32.const 1208) + (i32.or + (local.get $1) + (local.get $3) + ) ) - ) - ) - (block - (i32.store - (i32.const 1208) - (i32.or - (local.get $2) - (local.get $4) + (local.set $36 + (i32.add + (local.get $0) + (i32.const 8) + ) ) - ) - (local.set $46 - (i32.add - (local.get $13) - (i32.const 8) + (local.set $28 + (local.get $0) ) ) - (local.set $39 - (local.get $13) - ) ) + (i32.store + (local.get $36) + (local.get $6) + ) + (i32.store offset=12 + (local.get $28) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $28) + ) + (i32.store offset=12 + (local.get $6) + (local.get $0) + ) + (br $do-once38) ) - (i32.store - (local.get $46) - (local.get $11) - ) - (i32.store offset=12 - (local.get $39) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $39) - ) - (i32.store offset=12 - (local.get $11) - (local.get $13) - ) - (br $do-once38) ) - ) - (local.set $0 - (i32.add - (i32.shl - (local.tee $2 - (if (result i32) - (local.tee $13 - (i32.shr_u - (local.get $5) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (i32.shl + (local.tee $0 (if (result i32) - (i32.gt_u - (local.get $5) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $5) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $13 - (i32.and - (i32.shr_u - (i32.add - (local.tee $4 - (i32.shl - (local.get $13) - (local.tee $2 - (i32.and - (i32.shr_u - (i32.add - (local.get $13) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $5) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $0 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $5) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or - (local.tee $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $4) - (local.get $13) + (i32.or + (i32.and + (i32.shr_u + (local.get $5) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) + (i32.or + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $3 + (i32.shl + (local.get $3) + (local.get $0) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) + ) + (i32.or + (local.get $0) + (local.get $1) ) ) - (i32.or + ) + (i32.shr_u + (i32.shl + (local.get $3) (local.get $2) - (local.get $13) ) + (i32.const 15) ) ) - (i32.shr_u - (i32.shl - (local.get $1) - (local.get $4) - ) - (i32.const 15) - ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 1512) ) - (i32.const 1512) ) - ) - (i32.store offset=28 - (local.get $11) - (local.get $2) - ) - (i32.store offset=20 - (local.get $11) - (i32.const 0) - ) - (i32.store - (local.get $15) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $4 - (i32.load - (i32.const 1212) + (i32.store offset=28 + (local.get $6) + (local.get $0) + ) + (i32.store offset=20 + (local.get $6) + (i32.const 0) + ) + (i32.store + (local.get $8) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $1 + (i32.load + (i32.const 1212) + ) + ) + (local.tee $2 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) - (local.tee $1 - (i32.shl - (i32.const 1) + ) + (block + (i32.store + (i32.const 1212) + (i32.or + (local.get $1) (local.get $2) ) ) - ) - ) - (block - (i32.store - (i32.const 1212) - (i32.or - (local.get $1) - (local.get $4) + (i32.store + (local.get $3) + (local.get $6) ) + (i32.store offset=24 + (local.get $6) + (local.get $3) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) + (br $do-once38) ) - (i32.store - (local.get $0) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $0) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) - ) - (i32.store offset=8 - (local.get $11) - (local.get $11) - ) - (br $do-once38) ) - ) - (local.set $1 - (i32.shl - (local.get $5) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $2) - (i32.const 1) + (local.set $1 + (i32.shl + (local.get $5) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $0) + (i32.const 1) + ) + ) + (i32.eq + (local.get $0) + (i32.const 31) ) - ) - (i32.eq - (local.get $2) - (i32.const 31) ) ) ) - ) - (local.set $4 - (i32.load - (local.get $0) + (local.set $0 + (i32.load + (local.get $3) + ) ) - ) - (if - (i32.eq - (local.tee $7 - (loop $while-in70 (result i32) - (block $while-out69 (result i32) - (if - (i32.eq - (local.get $5) - (i32.and - (i32.load offset=4 - (local.get $4) + (if + (i32.eq + (local.tee $9 + (loop $while-in70 (result i32) + (block $while-out69 (result i32) + (if + (i32.eq + (local.get $5) + (i32.and + (i32.load offset=4 + (local.get $0) + ) + (i32.const -8) ) - (i32.const -8) - ) - ) - (block - (local.set $33 - (local.get $4) ) - (br $while-out69 - (i32.const 305) + (block + (local.set $37 + (local.get $0) + ) + (br $while-out69 + (i32.const 305) + ) ) ) - ) - (if (result i32) - (local.tee $2 - (i32.load - (local.tee $0 - (i32.add + (if (result i32) + (local.tee $3 + (i32.load + (local.tee $2 (i32.add - (local.get $4) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $1) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $1) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) - ) - (block - (local.set $1 - (i32.shl - (local.get $1) - (i32.const 1) + (block + (local.set $1 + (i32.shl + (local.get $1) + (i32.const 1) + ) ) + (local.set $0 + (local.get $3) + ) + (br $while-in70) ) - (local.set $4 - (local.get $2) - ) - (br $while-in70) - ) - (block (result i32) - (local.set $47 - (local.get $0) - ) - (local.set $54 - (local.get $4) + (block (result i32) + (local.set $38 + (local.get $2) + ) + (local.set $47 + (local.get $0) + ) + (i32.const 302) ) - (i32.const 302) ) ) ) ) + (i32.const 302) ) - (i32.const 302) - ) - (if - (i32.lt_u - (local.get $47) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $47) - (local.get $11) - ) - (i32.store offset=24 - (local.get $11) - (local.get $54) - ) - (i32.store offset=12 - (local.get $11) - (local.get $11) + (if + (i32.lt_u + (local.get $38) + (i32.load + (i32.const 1224) + ) ) - (i32.store offset=8 - (local.get $11) - (local.get $11) + (call $qa) + (block + (i32.store + (local.get $38) + (local.get $6) + ) + (i32.store offset=24 + (local.get $6) + (local.get $47) + ) + (i32.store offset=12 + (local.get $6) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $6) + ) ) ) - ) - (if - (i32.eq - (local.get $7) - (i32.const 305) - ) - (block - (local.set $0 - (local.get $33) + (if + (i32.eq + (local.get $9) + (i32.const 305) ) (if (i32.and (i32.ge_u (local.tee $1 (i32.load offset=8 - (local.get $0) + (local.tee $0 + (local.get $37) + ) ) ) - (local.tee $5 + (local.tee $3 (i32.load (i32.const 1224) ) @@ -5551,28 +5381,28 @@ ) (i32.ge_u (local.get $0) - (local.get $5) + (local.get $3) ) ) (block (i32.store offset=12 (local.get $1) - (local.get $11) + (local.get $6) ) (i32.store offset=8 (local.get $0) - (local.get $11) + (local.get $6) ) (i32.store offset=8 - (local.get $11) + (local.get $6) (local.get $1) ) (i32.store offset=12 - (local.get $11) - (local.get $33) + (local.get $6) + (local.get $37) ) (i32.store offset=24 - (local.get $11) + (local.get $6) (i32.const 0) ) ) @@ -5583,219 +5413,208 @@ ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $1 - (i32.load - (i32.const 1224) + (block + (if + (i32.or + (i32.eqz + (local.tee $0 + (i32.load + (i32.const 1224) + ) ) ) + (i32.lt_u + (local.get $3) + (local.get $0) + ) ) - (i32.lt_u - (local.get $20) - (local.get $1) + (i32.store + (i32.const 1224) + (local.get $3) ) ) (i32.store - (i32.const 1224) - (local.get $20) + (i32.const 1656) + (local.get $3) ) - ) - (i32.store - (i32.const 1656) - (local.get $20) - ) - (i32.store - (i32.const 1660) - (local.get $26) - ) - (i32.store - (i32.const 1668) - (i32.const 0) - ) - (i32.store - (i32.const 1244) - (i32.load - (i32.const 1680) + (i32.store + (i32.const 1660) + (local.get $7) ) - ) - (i32.store - (i32.const 1240) - (i32.const -1) - ) - (local.set $1 - (i32.const 0) - ) - (loop $do-in - (i32.store offset=12 - (local.tee $13 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) - ) - (i32.const 1248) - ) + (i32.store + (i32.const 1668) + (i32.const 0) + ) + (i32.store + (i32.const 1244) + (i32.load + (i32.const 1680) ) - (local.get $13) ) - (i32.store offset=8 - (local.get $13) - (local.get $13) + (i32.store + (i32.const 1240) + (i32.const -1) ) - (br_if $do-in - (i32.ne - (local.tee $1 + (local.set $1 + (i32.const 0) + ) + (loop $do-in + (i32.store offset=12 + (local.tee $0 (i32.add - (local.get $1) - (i32.const 1) + (i32.shl + (local.get $1) + (i32.const 3) + ) + (i32.const 1248) ) ) - (i32.const 32) + (local.get $0) ) - ) - ) - (i32.store - (i32.const 1232) - (local.tee $1 - (i32.add - (local.tee $13 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $20) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) - (i32.const 0) - (i32.and + (i32.store offset=8 + (local.get $0) + (local.get $0) + ) + (br_if $do-in + (i32.ne + (local.tee $1 + (i32.add (local.get $1) - (i32.const 7) + (i32.const 1) ) ) + (i32.const 32) ) - (local.get $20) ) ) - ) - (i32.store - (i32.const 1220) - (local.tee $5 - (i32.sub + (i32.store + (i32.const 1232) + (local.tee $0 (i32.add - (local.get $26) - (i32.const -40) + (local.get $3) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $0 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $0) + (i32.const 7) + ) + ) + ) ) - (local.get $13) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $5) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) - (local.get $5) - ) - (i32.const 40) - ) - (i32.store - (i32.const 1236) - (i32.load - (i32.const 1696) - ) - ) - ) - ) - (if - (i32.gt_u - (local.tee $11 - (i32.load + (i32.store (i32.const 1220) + (local.tee $1 + (i32.sub + (i32.add + (local.get $7) + (i32.const -40) + ) + (local.get $1) + ) + ) ) - ) - (local.get $3) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $33 - (i32.sub - (local.get $11) - (local.get $3) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $1) + (i32.const 1) ) ) - ) - (i32.store - (i32.const 1232) - (local.tee $7 + (i32.store offset=4 (i32.add - (local.get $3) - (local.tee $11 - (i32.load - (i32.const 1232) - ) - ) + (local.get $0) + (local.get $1) ) + (i32.const 40) ) - ) - (i32.store offset=4 - (local.get $7) - (i32.or - (local.get $33) - (i32.const 1) - ) - ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.get $3) - (i32.const 3) + (i32.store + (i32.const 1236) + (i32.load + (i32.const 1696) + ) ) ) - (global.set $r - (local.get $25) - ) - (return - (i32.add - (local.get $11) - (i32.const 8) + ) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $0 + (i32.load + (i32.const 1220) + ) ) + (local.get $4) ) ) ) ) + (i32.store + (call $Qa) + (i32.const 12) + ) + (global.set $r + (local.get $18) + ) + (return + (i32.const 0) + ) ) (i32.store - (call $Qa) - (i32.const 12) + (i32.const 1220) + (local.tee $1 + (i32.sub + (local.get $0) + (local.get $4) + ) + ) ) - (global.set $r - (local.get $25) + (i32.store + (i32.const 1232) + (local.tee $3 + (i32.add + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 1232) + ) + ) + ) + ) ) - (return - (i32.const 0) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store offset=4 + (local.get $0) + (i32.or + (local.get $4) + (i32.const 3) + ) ) ) (global.set $r - (local.get $25) + (local.get $18) ) (i32.add - (local.get $15) + (local.get $0) (i32.const 8) ) ) @@ -5818,7 +5637,6 @@ (local $16 i32) (local $17 i32) (local $18 i32) - (local $19 i32) (if (i32.eqz (local.get $0) @@ -5827,13 +5645,13 @@ ) (if (i32.lt_u - (local.tee $1 + (local.tee $3 (i32.add (local.get $0) (i32.const -8) ) ) - (local.tee $14 + (local.tee $13 (i32.load (i32.const 1224) ) @@ -5843,9 +5661,9 @@ ) (if (i32.eq - (local.tee $0 + (local.tee $9 (i32.and - (local.tee $5 + (local.tee $0 (i32.load (i32.add (local.get $0) @@ -5860,12 +5678,12 @@ ) (call $qa) ) - (local.set $8 + (local.set $6 (i32.add - (local.get $1) - (local.tee $7 + (local.get $3) + (local.tee $4 (i32.and - (local.get $5) + (local.get $0) (i32.const -8) ) ) @@ -5873,64 +5691,60 @@ ) (if (i32.and - (local.get $5) + (local.get $0) (i32.const 1) ) (block (local.set $2 - (local.get $1) + (local.get $3) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $4) ) ) (block $do-once - (local.set $9 - (i32.load - (local.get $1) - ) - ) (if (i32.eqz - (local.get $0) - ) - (return) - ) - (local.set $7 - (i32.add - (local.get $7) (local.get $9) ) + (return) ) (if (i32.lt_u - (local.tee $1 + (local.tee $0 (i32.sub - (local.get $1) - (local.get $9) + (local.get $3) + (local.tee $9 + (i32.load + (local.get $3) + ) + ) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) + (local.set $3 + (i32.add + (local.get $4) + (local.get $9) + ) + ) (if (i32.eq (i32.load (i32.const 1228) ) - (local.get $1) + (local.get $0) ) (block - (local.set $0 - (local.get $8) - ) (if (i32.ne (i32.and - (local.tee $3 + (local.tee $1 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 3) @@ -5939,43 +5753,43 @@ ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (i32.store (i32.const 1216) - (local.get $7) + (local.get $3) ) (i32.store offset=4 - (local.get $0) + (local.get $6) (i32.and - (local.get $3) + (local.get $1) (i32.const -2) ) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.or - (local.get $7) + (local.get $3) (i32.const 1) ) ) (i32.store (i32.add - (local.get $1) - (local.get $7) + (local.get $0) + (local.get $3) ) - (local.get $7) + (local.get $3) ) (return) ) ) - (local.set $3 + (local.set $11 (i32.shr_u (local.get $9) (i32.const 3) @@ -5987,22 +5801,22 @@ (i32.const 256) ) (block - (local.set $0 + (local.set $2 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) (if (i32.ne - (local.tee $9 + (local.tee $4 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.tee $5 + (local.tee $1 (i32.add (i32.shl - (local.get $3) + (local.get $11) (i32.const 3) ) (i32.const 1248) @@ -6012,16 +5826,16 @@ (block (if (i32.lt_u - (local.get $9) - (local.get $14) + (local.get $4) + (local.get $13) ) (call $qa) ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $9) + (local.get $4) ) ) (call $qa) @@ -6030,8 +5844,8 @@ ) (if (i32.eq - (local.get $0) - (local.get $9) + (local.get $2) + (local.get $4) ) (block (i32.store @@ -6043,99 +5857,99 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $11) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) (if (i32.eq - (local.get $0) - (local.get $5) + (local.get $1) + (local.get $2) ) - (local.set $10 + (local.set $5 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) (block (if (i32.lt_u - (local.get $0) - (local.get $14) + (local.get $2) + (local.get $13) ) (call $qa) ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load - (local.tee $5 + (local.tee $1 (i32.add - (local.get $0) + (local.get $2) (i32.const 8) ) ) ) ) - (local.set $10 - (local.get $5) + (local.set $5 + (local.get $1) ) (call $qa) ) ) ) (i32.store offset=12 - (local.get $9) - (local.get $0) + (local.get $4) + (local.get $2) ) (i32.store - (local.get $10) - (local.get $9) + (local.get $5) + (local.get $4) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) ) - (local.set $9 + (local.set $12 (i32.load offset=24 - (local.get $1) + (local.get $0) ) ) (if (i32.eq - (local.get $1) - (local.tee $0 + (local.get $0) + (local.tee $4 (i32.load offset=12 - (local.get $1) + (local.get $0) ) ) ) (block $do-once0 (if - (local.tee $10 + (local.tee $4 (i32.load - (local.tee $3 + (local.tee $9 (i32.add (local.tee $5 (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) ) @@ -6144,17 +5958,12 @@ ) ) ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) + (local.set $5 + (local.get $9) ) (br_if $do-once0 (i32.eqz - (local.tee $0 + (local.tee $4 (i32.load (local.get $5) ) @@ -6162,70 +5971,63 @@ ) ) ) - (if - (i32.lt_u - (local.tee $3 - (loop $while-in (result i32) - (if - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) + (loop $while-in + (if + (local.tee $11 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 20) ) ) - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - ) - ) - (block - (local.set $0 - (local.get $10) - ) - (local.set $5 - (local.get $3) - ) - (br $while-in) - ) - (block (result i32) - (local.set $12 - (local.get $0) - ) - (local.get $5) + ) + ) + (block + (local.set $4 + (local.get $11) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + (if + (local.tee $11 + (i32.load + (local.tee $9 + (i32.add + (local.get $4) + (i32.const 16) ) ) ) ) - (local.get $14) + (block + (local.set $4 + (local.get $11) + ) + (local.set $5 + (local.get $9) + ) + (br $while-in) + ) + ) + ) + (if + (i32.lt_u + (local.get $5) + (local.get $13) ) (call $qa) (block (i32.store - (local.get $3) + (local.get $5) (i32.const 0) ) - (local.set $4 - (local.get $12) + (local.set $7 + (local.get $4) ) ) ) @@ -6233,48 +6035,42 @@ (block (if (i32.lt_u - (local.tee $3 + (local.tee $5 (i32.load offset=8 - (local.get $1) + (local.get $0) ) ) - (local.get $14) + (local.get $13) ) (call $qa) ) - (local.set $5 - (local.get $3) - ) (if (i32.ne - (local.get $1) + (local.get $0) (i32.load offset=12 - (local.get $3) + (local.get $5) ) ) (call $qa) ) - (local.set $10 - (local.get $0) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=8 - (local.get $0) + (local.get $4) ) ) (block (i32.store offset=12 (local.get $5) - (local.get $0) + (local.get $4) ) (i32.store offset=8 - (local.get $10) - (local.get $3) + (local.get $4) + (local.get $5) ) - (local.set $4 - (local.get $0) + (local.set $7 + (local.get $4) ) ) (call $qa) @@ -6282,17 +6078,17 @@ ) ) (if - (local.get $9) + (local.get $12) (block (if (i32.eq (i32.load - (local.tee $3 + (local.tee $5 (i32.add (i32.shl - (local.tee $0 + (local.tee $4 (i32.load offset=28 - (local.get $1) + (local.get $0) ) ) (i32.const 2) @@ -6301,16 +6097,16 @@ ) ) ) - (local.get $1) + (local.get $0) ) (block (i32.store - (local.get $3) - (local.get $4) + (local.get $5) + (local.get $7) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (i32.store @@ -6322,17 +6118,17 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $0) + (local.get $4) ) (i32.const -1) ) ) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6341,42 +6137,39 @@ (block (if (i32.lt_u - (local.get $9) + (local.get $12) (i32.load (i32.const 1224) ) ) (call $qa) ) - (local.set $0 - (local.get $9) - ) (if (i32.eq - (local.get $1) + (local.get $0) (i32.load offset=16 - (local.get $0) + (local.get $12) ) ) (i32.store offset=16 - (local.get $0) - (local.get $4) + (local.get $12) + (local.get $7) ) (i32.store offset=20 - (local.get $9) - (local.get $4) + (local.get $12) + (local.get $7) ) ) (if (i32.eqz - (local.get $4) + (local.get $7) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) (br $do-once) ) @@ -6385,8 +6178,8 @@ ) (if (i32.lt_u - (local.get $4) - (local.tee $0 + (local.get $7) + (local.tee $5 (i32.load (i32.const 1224) ) @@ -6395,45 +6188,42 @@ (call $qa) ) (i32.store offset=24 - (local.get $4) - (local.get $9) - ) - (local.set $3 - (local.get $1) + (local.get $7) + (local.get $12) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=16 - (local.get $1) + (local.get $0) ) ) (if (i32.lt_u + (local.get $4) (local.get $5) - (local.get $0) ) (call $qa) (block (i32.store offset=16 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) ) ) ) (if - (local.tee $5 + (local.tee $4 (i32.load offset=20 - (local.get $3) + (local.get $0) ) ) (if (i32.lt_u - (local.get $5) + (local.get $4) (i32.load (i32.const 1224) ) @@ -6441,37 +6231,37 @@ (call $qa) (block (i32.store offset=20 + (local.get $7) (local.get $4) - (local.get $5) ) (i32.store offset=24 - (local.get $5) (local.get $4) + (local.get $7) ) (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) ) (block (local.set $2 - (local.get $1) + (local.get $0) ) - (local.set $6 - (local.get $7) + (local.set $1 + (local.get $3) ) ) ) @@ -6480,19 +6270,16 @@ (if (i32.ge_u (local.get $2) - (local.get $8) + (local.get $6) ) (call $qa) ) - (local.set $0 - (local.get $8) - ) (if (i32.eqz (i32.and - (local.tee $1 + (local.tee $0 (i32.load offset=4 - (local.get $0) + (local.get $6) ) ) (i32.const 1) @@ -6500,639 +6287,622 @@ ) (call $qa) ) - (local.set $6 - (i32.shr_u - (local.tee $0 - (if (result i32) - (i32.and - (local.get $1) - (i32.const 2) + (if + (i32.and + (local.get $0) + (i32.const 2) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.and + (local.get $0) + (i32.const -2) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $1) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $1) + ) + ) + (block + (if + (i32.eq + (i32.load + (i32.const 1232) ) - (block (result i32) - (i32.store offset=4 - (local.get $0) - (i32.and + (local.get $6) + ) + (block + (i32.store + (i32.const 1220) + (local.tee $0 + (i32.add (local.get $1) - (i32.const -2) + (i32.load + (i32.const 1220) + ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $6) - (i32.const 1) + ) + (i32.store + (i32.const 1232) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (if + (i32.ne + (i32.load + (i32.const 1228) ) + (local.get $2) ) - (i32.store + (return) + ) + (i32.store + (i32.const 1228) + (i32.const 0) + ) + (i32.store + (i32.const 1216) + (i32.const 0) + ) + (return) + ) + ) + (if + (i32.eq + (i32.load + (i32.const 1228) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 1216) + (local.tee $0 (i32.add - (local.get $2) - (local.get $6) + (local.get $1) + (i32.load + (i32.const 1216) + ) ) - (local.get $6) ) - (local.get $6) ) - (block (result i32) + (i32.store + (i32.const 1228) + (local.get $2) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $0) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $0) + (local.get $2) + ) + (local.get $0) + ) + (return) + ) + ) + (local.set $5 + (i32.add + (local.get $1) + (i32.and + (local.get $0) + (i32.const -8) + ) + ) + ) + (local.set $4 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $do-once4 + (if + (i32.lt_u + (local.get $0) + (i32.const 256) + ) + (block + (local.set $1 + (i32.load offset=12 + (local.get $6) + ) + ) (if - (i32.eq - (i32.load - (i32.const 1232) + (i32.ne + (local.tee $3 + (i32.load offset=8 + (local.get $6) + ) ) - (local.get $8) - ) - (block - (i32.store - (i32.const 1220) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1220) - ) + (local.tee $0 + (i32.add + (i32.shl + (local.get $4) + (i32.const 3) ) + (i32.const 1248) ) ) - (i32.store - (i32.const 1232) - (local.get $2) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) (if (i32.ne - (i32.load - (i32.const 1228) + (local.get $6) + (i32.load offset=12 + (local.get $3) ) - (local.get $2) ) - (return) - ) - (i32.store - (i32.const 1228) - (i32.const 0) - ) - (i32.store - (i32.const 1216) - (i32.const 0) + (call $qa) ) - (return) ) ) (if (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $8) + (local.get $1) + (local.get $3) ) (block (i32.store - (i32.const 1216) - (local.tee $4 - (i32.add - (local.get $6) - (i32.load - (i32.const 1216) + (i32.const 1208) + (i32.and + (i32.load + (i32.const 1208) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $4) ) + (i32.const -1) ) ) ) - (i32.store - (i32.const 1228) - (local.get $2) + (br $do-once4) + ) + ) + (if + (i32.eq + (local.get $0) + (local.get $1) + ) + (local.set $14 + (i32.add + (local.get $1) + (i32.const 8) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) + ) + (block + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) + (call $qa) ) - (i32.store - (i32.add - (local.get $2) - (local.get $4) + (if + (i32.eq + (local.get $6) + (i32.load + (local.tee $0 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + ) ) - (local.get $4) + (local.set $14 + (local.get $0) + ) + (call $qa) ) - (return) ) ) - (local.set $4 - (i32.add - (local.get $6) - (i32.and - (local.get $1) - (i32.const -8) - ) - ) + (i32.store offset=12 + (local.get $3) + (local.get $1) ) - (local.set $14 - (i32.shr_u - (local.get $1) - (i32.const 3) + (i32.store + (local.get $14) + (local.get $3) + ) + ) + (block + (local.set $7 + (i32.load offset=24 + (local.get $6) ) ) - (block $do-once4 - (if - (i32.lt_u - (local.get $1) - (i32.const 256) - ) - (block - (local.set $3 - (i32.load offset=12 - (local.get $8) - ) + (if + (i32.eq + (local.get $6) + (local.tee $0 + (i32.load offset=12 + (local.get $6) ) - (if - (i32.ne - (local.tee $5 + ) + ) + (block $do-once6 + (if + (local.tee $0 + (i32.load + (local.tee $3 (i32.add - (i32.shl - (local.get $14) - (i32.const 3) + (local.tee $1 + (i32.add + (local.get $6) + (i32.const 16) + ) ) - (i32.const 1248) - ) - ) - (local.tee $12 - (i32.load offset=8 - (local.get $8) + (i32.const 4) ) ) ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $12) - ) + ) + (local.set $1 + (local.get $3) + ) + (br_if $do-once6 + (i32.eqz + (local.tee $0 + (i32.load + (local.get $1) ) - (call $qa) ) ) ) + ) + (loop $while-in9 (if - (i32.eq - (local.get $3) - (local.get $12) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (i32.load - (i32.const 1208) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $14) - ) - (i32.const -1) + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 20) ) ) ) - (br $do-once4) ) - ) - (if - (i32.eq - (local.get $3) - (local.get $5) - ) - (local.set $16 - (i32.add + (block + (local.set $0 + (local.get $4) + ) + (local.set $1 (local.get $3) - (i32.const 8) ) + (br $while-in9) ) - (block - (if - (i32.lt_u - (local.get $3) - (i32.load - (i32.const 1224) + ) + (if + (local.tee $4 + (i32.load + (local.tee $3 + (i32.add + (local.get $0) + (i32.const 16) ) ) - (call $qa) ) - (if - (i32.eq - (local.get $8) - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - ) - ) - (local.set $16 - (local.get $5) - ) - (call $qa) + ) + (block + (local.set $0 + (local.get $4) ) + (local.set $1 + (local.get $3) + ) + (br $while-in9) ) ) - (i32.store offset=12 - (local.get $12) - (local.get $3) + ) + (if + (i32.lt_u + (local.get $1) + (i32.load + (i32.const 1224) + ) ) - (i32.store - (local.get $16) - (local.get $12) + (call $qa) + (block + (i32.store + (local.get $1) + (i32.const 0) + ) + (local.set $8 + (local.get $0) + ) ) ) - (block - (local.set $12 - (i32.load offset=24 - (local.get $8) + ) + (block + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $6) + ) + ) + (i32.load + (i32.const 1224) ) ) - (if - (i32.eq - (local.get $8) - (local.tee $3 - (i32.load offset=12 - (local.get $8) - ) - ) + (call $qa) + ) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $1) ) - (block $do-once6 - (local.set $6 - (if (result i32) - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.tee $5 - (i32.add - (local.get $8) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) - ) - (block (result i32) - (local.set $5 - (local.get $0) - ) - (local.get $10) - ) - (if (result i32) + ) + (call $qa) + ) + (if + (i32.eq + (local.get $6) + (i32.load offset=8 + (local.get $0) + ) + ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $8 + (local.get $0) + ) + ) + (call $qa) + ) + ) + ) + (if + (local.get $7) + (block + (if + (i32.eq + (i32.load + (local.tee $1 + (i32.add + (i32.shl (local.tee $0 - (i32.load - (local.get $5) + (i32.load offset=28 + (local.get $6) ) ) - (local.get $0) - (br $do-once6) + (i32.const 2) ) + (i32.const 1512) ) ) - (loop $while-in9 - (if - (local.tee $10 + ) + (local.get $6) + ) + (block + (i32.store + (local.get $1) + (local.get $8) + ) + (if + (i32.eqz + (local.get $8) + ) + (block + (i32.store + (i32.const 1212) + (i32.and (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 20) - ) - ) - ) - ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) + (i32.const 1212) ) - (br $while-in9) - ) - ) - (if - (local.tee $10 - (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) ) + (i32.const -1) ) ) - (block - (local.set $6 - (local.get $10) - ) - (local.set $5 - (local.get $0) - ) - (br $while-in9) - ) ) + (br $do-once4) ) - (if - (i32.lt_u - (local.get $5) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store - (local.get $5) - (i32.const 0) - ) - (local.set $11 - (local.get $6) - ) + ) + ) + (block + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 1224) ) ) + (call $qa) ) - (block - (if - (i32.lt_u - (local.tee $0 - (i32.load offset=8 - (local.get $8) - ) - ) - (i32.load - (i32.const 1224) - ) + (if + (i32.eq + (local.get $6) + (i32.load offset=16 + (local.get $7) ) - (call $qa) ) - (local.set $6 - (local.get $0) + (i32.store offset=16 + (local.get $7) + (local.get $8) ) - (if - (i32.ne - (local.get $8) - (i32.load offset=12 - (local.get $0) - ) - ) - (call $qa) + (i32.store offset=20 + (local.get $7) + (local.get $8) ) - (local.set $1 - (local.get $3) + ) + (br_if $do-once4 + (i32.eqz + (local.get $8) ) - (if - (i32.eq - (local.get $8) - (i32.load offset=8 - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $6) - (local.get $3) - ) - (i32.store offset=8 - (local.get $1) - (local.get $0) - ) - (local.set $11 - (local.get $3) - ) - ) - (call $qa) + ) + ) + ) + (if + (i32.lt_u + (local.get $8) + (local.tee $1 + (i32.load + (i32.const 1224) ) ) ) + (call $qa) + ) + (i32.store offset=24 + (local.get $8) + (local.get $7) + ) + (if + (local.tee $0 + (i32.load offset=16 + (local.get $6) + ) + ) (if - (local.get $12) + (i32.lt_u + (local.get $0) + (local.get $1) + ) + (call $qa) (block - (if - (i32.eq - (i32.load - (local.tee $7 - (i32.add - (i32.shl - (local.tee $3 - (i32.load offset=28 - (local.get $8) - ) - ) - (i32.const 2) - ) - (i32.const 1512) - ) - ) - ) - (local.get $8) - ) - (block - (i32.store - (local.get $7) - (local.get $11) - ) - (if - (i32.eqz - (local.get $11) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $3) - ) - (i32.const -1) - ) - ) - ) - (br $do-once4) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - ) - (local.set $0 - (local.get $12) - ) - (if - (i32.eq - (local.get $8) - (i32.load offset=16 - (local.get $0) - ) - ) - (i32.store offset=16 - (local.get $0) - (local.get $11) - ) - (i32.store offset=20 - (local.get $12) - (local.get $11) - ) - ) - (br_if $do-once4 - (i32.eqz - (local.get $11) - ) - ) - ) - ) - (if - (i32.lt_u - (local.get $11) - (local.tee $3 - (i32.load - (i32.const 1224) - ) - ) - ) - (call $qa) + (i32.store offset=16 + (local.get $8) + (local.get $0) ) (i32.store offset=24 - (local.get $11) - (local.get $12) - ) - (local.set $0 + (local.get $0) (local.get $8) ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (local.get $3) - ) - (call $qa) - (block - (i32.store offset=16 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + ) + ) + (if + (local.tee $0 + (i32.load offset=20 + (local.get $6) + ) + ) + (if + (i32.lt_u + (local.get $0) + (i32.load + (i32.const 1224) ) - (if - (local.tee $1 - (i32.load offset=20 - (local.get $0) - ) - ) - (if - (i32.lt_u - (local.get $1) - (i32.load - (i32.const 1224) - ) - ) - (call $qa) - (block - (i32.store offset=20 - (local.get $11) - (local.get $1) - ) - (i32.store offset=24 - (local.get $1) - (local.get $11) - ) - ) - ) + ) + (call $qa) + (block + (i32.store offset=20 + (local.get $8) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $8) ) ) ) ) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $4) - (i32.const 1) - ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.or + (local.get $5) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $5) + ) + (local.set $1 + (if (result i32) + (i32.eq + (i32.load + (i32.const 1228) ) + (local.get $2) + ) + (block (i32.store - (i32.add - (local.get $2) - (local.get $4) - ) - (local.get $4) - ) - (if (result i32) - (i32.eq - (i32.load - (i32.const 1228) - ) - (local.get $2) - ) - (block - (i32.store - (i32.const 1216) - (local.get $4) - ) - (return) - ) - (local.get $4) + (i32.const 1216) + (local.get $5) ) + (return) ) + (local.get $5) ) ) + ) + ) + (local.set $3 + (i32.shr_u + (local.get $1) (i32.const 3) ) ) (if (i32.lt_u - (local.get $0) + (local.get $1) (i32.const 256) ) (block - (local.set $1 + (local.set $0 (i32.add (i32.shl - (local.get $6) + (local.get $3) (i32.const 3) ) (i32.const 1248) @@ -7140,25 +6910,25 @@ ) (if (i32.and - (local.tee $7 + (local.tee $1 (i32.load (i32.const 1208) ) ) - (local.tee $4 + (local.tee $3 (i32.shl (i32.const 1) - (local.get $6) + (local.get $3) ) ) ) (if (i32.lt_u - (local.tee $7 + (local.tee $3 (i32.load - (local.tee $4 + (local.tee $1 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) @@ -7171,10 +6941,10 @@ (call $qa) (block (local.set $15 - (local.get $4) + (local.get $1) ) - (local.set $13 - (local.get $7) + (local.set $10 + (local.get $3) ) ) ) @@ -7182,18 +6952,18 @@ (i32.store (i32.const 1208) (i32.or - (local.get $4) - (local.get $7) + (local.get $1) + (local.get $3) ) ) (local.set $15 (i32.add - (local.get $1) + (local.get $0) (i32.const 8) ) ) - (local.set $13 - (local.get $1) + (local.set $10 + (local.get $0) ) ) ) @@ -7202,50 +6972,50 @@ (local.get $2) ) (i32.store offset=12 - (local.get $13) + (local.get $10) (local.get $2) ) (i32.store offset=8 (local.get $2) - (local.get $13) + (local.get $10) ) (i32.store offset=12 (local.get $2) - (local.get $1) + (local.get $0) ) (return) ) ) - (local.set $4 + (local.set $3 (i32.add (i32.shl - (local.tee $6 + (local.tee $0 (if (result i32) - (local.tee $1 + (local.tee $0 (i32.shr_u - (local.get $0) + (local.get $1) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $0) + (local.get $1) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $1 + (local.set $0 (i32.and (i32.shr_u (i32.add - (local.tee $15 + (local.tee $4 (i32.shl - (local.get $1) - (local.tee $13 + (local.get $0) + (local.tee $3 (i32.and (i32.shr_u (i32.add - (local.get $1) + (local.get $0) (i32.const 1048320) ) (i32.const 16) @@ -7265,21 +7035,21 @@ (i32.or (i32.and (i32.shr_u - (local.get $0) + (local.get $1) (i32.add - (local.tee $4 + (local.tee $0 (i32.add (i32.sub (i32.const 14) (i32.or - (local.tee $15 + (local.tee $5 (i32.and (i32.shr_u (i32.add - (local.tee $7 + (local.tee $4 (i32.shl - (local.get $15) - (local.get $1) + (local.get $4) + (local.get $0) ) ) (i32.const 245760) @@ -7290,15 +7060,15 @@ ) ) (i32.or - (local.get $1) - (local.get $13) + (local.get $0) + (local.get $3) ) ) ) (i32.shr_u (i32.shl - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) (i32.const 15) ) @@ -7310,7 +7080,7 @@ (i32.const 1) ) (i32.shl - (local.get $4) + (local.get $0) (i32.const 1) ) ) @@ -7326,7 +7096,7 @@ ) (i32.store offset=28 (local.get $2) - (local.get $6) + (local.get $0) ) (i32.store offset=20 (local.get $2) @@ -7338,41 +7108,41 @@ ) (if (i32.and - (local.tee $7 - (i32.shl - (i32.const 1) - (local.get $6) - ) - ) - (local.tee $15 + (local.tee $4 (i32.load (i32.const 1212) ) ) + (local.tee $5 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) ) (block - (local.set $13 + (local.set $10 (i32.shl - (local.get $0) + (local.get $1) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $6) + (local.get $0) (i32.const 1) ) ) (i32.eq - (local.get $6) + (local.get $0) (i32.const 31) ) ) ) ) - (local.set $1 + (local.set $0 (i32.load - (local.get $4) + (local.get $3) ) ) (if @@ -7382,17 +7152,17 @@ (block $while-out14 (result i32) (if (i32.eq - (local.get $0) + (local.get $1) (i32.and (i32.load offset=4 - (local.get $1) + (local.get $0) ) (i32.const -8) ) ) (block - (local.set $17 - (local.get $1) + (local.set $16 + (local.get $0) ) (br $while-out14 (i32.const 130) @@ -7400,17 +7170,17 @@ ) ) (if (result i32) - (local.tee $11 + (local.tee $3 (i32.load - (local.tee $6 + (local.tee $4 (i32.add (i32.add - (local.get $1) + (local.get $0) (i32.const 16) ) (i32.shl (i32.shr_u - (local.get $13) + (local.get $10) (i32.const 31) ) (i32.const 2) @@ -7420,23 +7190,23 @@ ) ) (block - (local.set $13 + (local.set $10 (i32.shl - (local.get $13) + (local.get $10) (i32.const 1) ) ) - (local.set $1 - (local.get $11) + (local.set $0 + (local.get $3) ) (br $while-in15) ) (block (result i32) - (local.set $18 - (local.get $6) + (local.set $17 + (local.get $4) ) - (local.set $19 - (local.get $1) + (local.set $18 + (local.get $0) ) (i32.const 127) ) @@ -7448,7 +7218,7 @@ ) (if (i32.lt_u - (local.get $18) + (local.get $17) (i32.load (i32.const 1224) ) @@ -7456,12 +7226,12 @@ (call $qa) (block (i32.store - (local.get $18) + (local.get $17) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $19) + (local.get $18) ) (i32.store offset=12 (local.get $2) @@ -7478,53 +7248,50 @@ (local.get $0) (i32.const 130) ) - (block - (local.set $0 - (local.get $17) - ) - (if - (i32.and - (i32.ge_u - (local.tee $13 - (i32.load offset=8 - (local.get $0) - ) - ) - (local.tee $7 - (i32.load - (i32.const 1224) + (if + (i32.and + (i32.ge_u + (local.tee $1 + (i32.load offset=8 + (local.tee $0 + (local.get $16) ) ) ) - (i32.ge_u - (local.get $0) - (local.get $7) + (local.tee $3 + (i32.load + (i32.const 1224) + ) ) ) - (block - (i32.store offset=12 - (local.get $13) - (local.get $2) - ) - (i32.store offset=8 - (local.get $0) - (local.get $2) - ) - (i32.store offset=8 - (local.get $2) - (local.get $13) - ) - (i32.store offset=12 - (local.get $2) - (local.get $17) - ) - (i32.store offset=24 - (local.get $2) - (i32.const 0) - ) + (i32.ge_u + (local.get $0) + (local.get $3) ) - (call $qa) ) + (block + (i32.store offset=12 + (local.get $1) + (local.get $2) + ) + (i32.store offset=8 + (local.get $0) + (local.get $2) + ) + (i32.store offset=8 + (local.get $2) + (local.get $1) + ) + (i32.store offset=12 + (local.get $2) + (local.get $16) + ) + (i32.store offset=24 + (local.get $2) + (i32.const 0) + ) + ) + (call $qa) ) ) ) @@ -7533,17 +7300,17 @@ (i32.store (i32.const 1212) (i32.or - (local.get $7) - (local.get $15) + (local.get $4) + (local.get $5) ) ) (i32.store - (local.get $4) + (local.get $3) (local.get $2) ) (i32.store offset=24 (local.get $2) - (local.get $4) + (local.get $3) ) (i32.store offset=12 (local.get $2) @@ -7557,7 +7324,7 @@ ) (i32.store (i32.const 1240) - (local.tee $2 + (local.tee $0 (i32.add (i32.load (i32.const 1240) @@ -7568,14 +7335,14 @@ ) (local.set $0 (if (result i32) - (local.get $2) + (local.get $0) (return) (i32.const 1664) ) ) (loop $while-in17 (if - (local.tee $2 + (local.tee $0 (i32.load (local.get $0) ) @@ -7583,7 +7350,7 @@ (block (local.set $0 (i32.add - (local.get $2) + (local.get $0) (i32.const 8) ) ) @@ -7608,9 +7375,7 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local.set $10 + (local.set $9 (global.get $r) ) (global.set $r @@ -7621,129 +7386,123 @@ ) (local.set $7 (i32.add - (local.get $10) + (local.get $9) (i32.const 16) ) ) (i32.store - (local.tee $3 + (local.tee $4 (i32.add (local.tee $8 - (local.get $10) + (local.get $9) ) (i32.const 32) ) ) - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) ) (i32.store offset=4 - (local.get $3) - (local.tee $6 + (local.get $4) + (local.tee $3 (i32.sub (i32.load offset=20 (local.get $0) ) - (local.get $4) + (local.get $3) ) ) ) (i32.store offset=8 - (local.get $3) + (local.get $4) (local.get $1) ) (i32.store offset=12 - (local.get $3) + (local.get $4) (local.get $2) ) - (local.set $11 - (local.get $0) - ) - (local.set $12 - (local.get $0) - ) (local.set $1 - (local.get $3) + (local.get $4) ) - (local.set $3 + (local.set $4 (i32.const 2) ) - (local.set $4 + (local.set $10 (i32.add (local.get $2) - (local.get $6) + (local.get $3) ) ) (loop $while-in (block $while-out (if - (i32.eq - (local.get $4) - (local.tee $5 - (if (result i32) - (i32.load - (i32.const 1160) - ) - (block (result i32) - (call $ra - (i32.const 1) - (local.get $0) - ) - (i32.store - (local.get $8) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $8) - (local.get $1) - ) - (i32.store offset=8 - (local.get $8) - (local.get $3) - ) - (local.set $6 - (call $Pa - (call $ya - (i32.const 146) - (local.get $8) - ) - ) - ) - (call $oa - (i32.const 0) - ) - (local.get $6) + (i32.load + (i32.const 1160) + ) + (block + (call $ra + (i32.const 1) + (local.get $0) + ) + (i32.store + (local.get $8) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $8) + (local.get $1) + ) + (i32.store offset=8 + (local.get $8) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $8) ) - (block (result i32) - (i32.store - (local.get $7) - (i32.load offset=60 - (local.get $11) - ) - ) - (i32.store offset=4 - (local.get $7) - (local.get $1) - ) - (i32.store offset=8 - (local.get $7) - (local.get $3) - ) - (call $Pa - (call $ya - (i32.const 146) - (local.get $7) - ) - ) + ) + ) + (call $oa + (i32.const 0) + ) + ) + (block + (i32.store + (local.get $7) + (i32.load offset=60 + (local.get $0) + ) + ) + (i32.store offset=4 + (local.get $7) + (local.get $1) + ) + (i32.store offset=8 + (local.get $7) + (local.get $4) + ) + (local.set $3 + (call $Pa + (call $ya + (i32.const 146) + (local.get $7) ) ) ) ) + ) + (if + (i32.eq + (local.get $3) + (local.get $10) + ) (block (local.set $1 (i32.const 6) @@ -7753,124 +7512,126 @@ ) (if (i32.lt_s - (local.get $5) + (local.get $3) (i32.const 0) ) (block - (local.set $13 + (local.set $11 (local.get $1) ) - (local.set $14 - (local.get $3) + (local.set $12 + (local.get $4) ) (local.set $1 (i32.const 8) ) - (br $while-out) - ) - ) - (local.set $6 - (i32.sub - (local.get $4) - (local.get $5) - ) - ) - (if - (i32.gt_u - (local.get $5) - (local.tee $4 - (i32.load offset=4 - (local.get $1) - ) - ) ) (block - (i32.store offset=28 - (local.get $0) - (local.tee $9 - (i32.load offset=44 - (local.get $12) + (local.set $5 + (if (result i32) + (i32.gt_u + (local.get $3) + (local.tee $5 + (i32.load offset=4 + (local.get $1) + ) + ) + ) + (block (result i32) + (i32.store offset=28 + (local.get $0) + (local.tee $6 + (i32.load offset=44 + (local.get $0) + ) + ) + ) + (i32.store offset=20 + (local.get $0) + (local.get $6) + ) + (local.set $6 + (i32.load offset=12 + (local.get $1) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.set $4 + (i32.add + (local.get $4) + (i32.const -1) + ) + ) + (i32.sub + (local.get $3) + (local.get $5) + ) + ) + (block (result i32) + (if + (i32.eq + (local.get $4) + (i32.const 2) + ) + (block + (i32.store offset=28 + (local.get $0) + (i32.add + (local.get $3) + (i32.load offset=28 + (local.get $0) + ) + ) + ) + (local.set $6 + (local.get $5) + ) + (local.set $4 + (i32.const 2) + ) + ) + (local.set $6 + (local.get $5) + ) + ) + (local.get $3) ) ) ) - (i32.store offset=20 - (local.get $0) - (local.get $9) - ) - (local.set $9 - (i32.load offset=12 - (local.get $1) + (i32.store + (local.get $1) + (i32.add + (local.get $5) + (i32.load + (local.get $1) + ) ) ) - (local.set $5 + (i32.store offset=4 + (local.get $1) (i32.sub + (local.get $6) (local.get $5) - (local.get $4) - ) - ) - (local.set $1 - (i32.add - (local.get $1) - (i32.const 8) ) ) - (local.set $3 - (i32.add - (local.get $3) - (i32.const -1) - ) - ) - ) - (block - (if - (i32.eq + (local.set $10 + (i32.sub + (local.get $10) (local.get $3) - (i32.const 2) - ) - (block - (i32.store offset=28 - (local.get $0) - (i32.add - (local.get $5) - (i32.load offset=28 - (local.get $0) - ) - ) - ) - (local.set $3 - (i32.const 2) - ) ) ) - (local.set $9 - (local.get $4) - ) + (br $while-in) ) ) - (i32.store - (local.get $1) - (i32.add - (local.get $5) - (i32.load - (local.get $1) - ) - ) - ) - (i32.store offset=4 - (local.get $1) - (i32.sub - (local.get $9) - (local.get $5) - ) - ) - (local.set $4 - (local.get $6) - ) - (br $while-in) ) ) (global.set $r - (local.get $10) + (local.get $9) ) (if (result i32) (i32.eq @@ -7881,9 +7642,9 @@ (i32.store offset=16 (local.get $0) (i32.add - (local.tee $4 + (local.tee $1 (i32.load offset=44 - (local.get $12) + (local.get $0) ) ) (i32.load offset=48 @@ -7893,11 +7654,11 @@ ) (i32.store offset=28 (local.get $0) - (local.get $4) + (local.get $1) ) (i32.store offset=20 (local.get $0) - (local.get $4) + (local.get $1) ) (local.get $2) ) @@ -7933,16 +7694,16 @@ (i32.sub (local.get $2) (i32.load offset=4 - (local.get $13) + (local.get $11) ) ) (i32.eq - (local.get $14) + (local.get $12) (i32.const 2) ) ) ) - (local.get $15) + (local.get $13) ) ) ) @@ -7952,14 +7713,10 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local.set $6 + (local.set $5 (i32.const 1144) ) (local.set $3 - (local.get $1) - ) - (local.set $5 (if (result i32) (local.tee $4 (i32.load offset=16 @@ -7967,7 +7724,7 @@ ) ) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (local.get $4) @@ -7976,13 +7733,13 @@ (call $Xa (local.get $1) ) - (local.get $5) + (local.get $3) (block (result i32) - (local.set $7 + (local.set $6 (i32.const 5) ) (i32.load offset=16 - (local.get $3) + (local.get $1) ) ) ) @@ -7990,15 +7747,15 @@ ) (if (i32.eq - (local.get $7) + (local.get $6) (i32.const 5) ) (block $label$break$a (if (i32.lt_u (i32.sub - (local.get $5) - (local.tee $2 + (local.get $3) + (local.tee $3 (i32.load offset=20 (local.get $1) ) @@ -8026,9 +7783,6 @@ (br $label$break$a) ) ) - (local.set $4 - (local.get $2) - ) (if (i32.gt_s (i32.load8_s offset=75 @@ -8056,7 +7810,7 @@ (i32.ne (i32.load8_s (i32.add - (local.tee $5 + (local.tee $4 (i32.add (local.get $2) (i32.const -1) @@ -8069,7 +7823,7 @@ ) (block (local.set $2 - (local.get $5) + (local.get $4) ) (br $while-in) ) @@ -8100,35 +7854,32 @@ (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.add (local.get $2) (i32.const 1144) ) ) - (local.set $4 + (local.set $3 (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) - (local.set $2 - (i32.const 0) - ) ) (drop (call $jb - (local.get $4) - (local.get $6) + (local.get $3) + (local.get $5) (local.get $0) ) ) (i32.store offset=20 - (local.get $3) + (local.get $1) (i32.add (local.get $0) (i32.load offset=20 - (local.get $3) + (local.get $1) ) ) ) @@ -8152,48 +7903,48 @@ (i32.const 1144) ) (block - (local.set $1 + (local.set $4 (i32.const 1144) ) - (local.set $2 + (local.set $1 (i32.const 4) ) ) (i32.sub (if (result i32) (i32.eq - (local.get $2) + (local.get $1) (i32.const 4) ) (block (result i32) - (local.set $2 - (local.get $1) + (local.set $1 + (local.get $4) ) (local.set $0 (loop $while-in1 (result i32) (if (result i32) (i32.and (i32.add - (local.tee $1 + (local.tee $2 (i32.load - (local.get $2) + (local.get $1) ) ) (i32.const -16843009) ) (i32.xor (i32.and - (local.get $1) + (local.get $2) (i32.const -2139062144) ) (i32.const -2139062144) ) ) - (local.get $2) + (local.get $1) (block - (local.set $2 + (local.set $1 (i32.add - (local.get $2) + (local.get $1) (i32.const 4) ) ) @@ -8204,28 +7955,17 @@ ) (if (i32.and - (local.get $1) + (local.get $2) (i32.const 255) ) - (block - (local.set $1 - (local.get $0) - ) - (loop $while-in3 - (if - (i32.load8_s - (local.tee $0 - (i32.add - (local.get $1) - (i32.const 1) - ) - ) - ) - (block - (local.set $1 + (loop $while-in3 + (br_if $while-in3 + (i32.load8_s + (local.tee $0 + (i32.add (local.get $0) + (i32.const 1) ) - (br $while-in3) ) ) ) @@ -8233,35 +7973,36 @@ ) (local.get $0) ) - (local.get $4) + (local.get $2) ) (i32.const 1144) ) ) (func $_a (; 18 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (if (result i32) + (if (local.get $0) - (block $do-once (result i32) - (if - (i32.le_s - (i32.load offset=76 - (local.get $0) + (local.set $0 + (block $do-once (result i32) + (if + (i32.le_s + (i32.load offset=76 + (local.get $0) + ) + (i32.const -1) ) - (i32.const -1) - ) - (br $do-once - (call $$a - (local.get $0) + (br $do-once + (call $$a + (local.get $0) + ) ) ) - ) - (call $$a - (local.get $0) + (call $$a + (local.get $0) + ) ) ) - (block (result i32) + (block (local.set $0 (if (result i32) (i32.load @@ -8284,51 +8025,40 @@ (i32.const 1184) ) ) - (block - (local.set $2 - (local.get $1) - ) - (local.set $1 - (local.get $0) - ) - (loop $while-in - (if - (i32.gt_u - (i32.load offset=20 - (local.get $2) - ) - (i32.load offset=28 - (local.get $2) - ) + (loop $while-in + (if + (i32.gt_u + (i32.load offset=20 + (local.get $1) ) - (local.set $1 - (i32.or - (call $$a - (local.get $2) - ) + (i32.load offset=28 + (local.get $1) + ) + ) + (local.set $0 + (i32.or + (call $$a (local.get $1) ) + (local.get $0) ) ) - (br_if $while-in - (local.tee $2 - (i32.load offset=56 - (local.get $2) - ) + ) + (br_if $while-in + (local.tee $1 + (i32.load offset=56 + (local.get $1) ) ) ) ) - (local.set $1 - (local.get $0) - ) ) (call $xa (i32.const 1188) ) - (local.get $1) ) ) + (local.get $0) ) (func $ab (; 19 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) @@ -8337,7 +8067,6 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) (local.set $3 (global.get $r) ) @@ -8353,18 +8082,15 @@ ) (i32.const 10) ) - (local.set $7 - (local.get $0) - ) (if - (local.tee $2 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) (block (local.set $5 - (local.get $2) + (local.get $1) ) (local.set $6 (i32.const 4) @@ -8374,13 +8100,13 @@ (call $Xa (local.get $0) ) - (local.set $1 + (local.set $2 (i32.const -1) ) (block (local.set $5 (i32.load offset=16 - (local.get $7) + (local.get $0) ) ) (local.set $6 @@ -8394,45 +8120,42 @@ (local.get $6) (i32.const 4) ) - (local.set $1 - (block $do-once (result i32) - (local.set $1 - (local.get $0) + (block $do-once + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=20 + (local.get $0) + ) + ) + (local.get $5) ) (if - (i32.lt_u + (i32.ne (local.tee $2 - (i32.load offset=20 - (local.get $0) - ) - ) - (local.get $5) - ) - (if - (i32.ne - (i32.load8_s offset=75 - (local.get $0) - ) (i32.const 10) ) - (block - (i32.store offset=20 + (i32.load8_s offset=75 + (local.get $0) + ) + ) + (block + (i32.store offset=20 + (local.get $0) + (i32.add (local.get $1) - (i32.add - (local.get $2) - (i32.const 1) - ) - ) - (i32.store8 - (local.get $2) - (i32.const 10) - ) - (br $do-once - (i32.const 10) + (i32.const 1) ) ) + (i32.store8 + (local.get $1) + (i32.const 10) + ) + (br $do-once) ) ) + ) + (local.set $2 (if (result i32) (i32.eq (call_indirect (type $FUNCSIG$iiii) @@ -8462,12 +8185,11 @@ (global.set $r (local.get $3) ) - (local.get $1) + (local.get $2) ) (func $$a (; 20 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) (if (i32.gt_u (i32.load offset=20 @@ -8516,17 +8238,14 @@ (i32.const 3) ) (block (result i32) - (local.set $1 - (local.get $0) - ) (if (i32.lt_u - (local.tee $2 + (local.tee $1 (i32.load offset=4 (local.get $0) ) ) - (local.tee $3 + (local.tee $2 (i32.load offset=8 (local.get $0) ) @@ -8536,8 +8255,8 @@ (call_indirect (type $FUNCSIG$iiii) (local.get $0) (i32.sub + (local.get $1) (local.get $2) - (local.get $3) ) (i32.const 1) (i32.add @@ -8569,7 +8288,7 @@ (i32.const 0) ) (i32.store offset=4 - (local.get $1) + (local.get $0) (i32.const 0) ) (i32.const 0) @@ -8885,21 +8604,21 @@ (i32.add (select (i32.div_u - (local.tee $1 + (local.tee $3 (call $Wa - (local.tee $3 - (local.tee $2 + (local.tee $2 + (local.tee $1 (call $Za) ) ) (local.get $0) ) ) - (local.get $2) + (local.get $1) ) (i32.const 1) (i32.ne - (local.get $1) + (local.get $2) (local.get $3) ) ) @@ -9143,7 +8862,7 @@ ) ) ) - (local.set $3 + (local.set $0 (call $Ra (local.get $0) (local.get $1) @@ -9153,7 +8872,7 @@ (global.set $r (local.get $4) ) - (local.get $3) + (local.get $0) ) (func $Oa (; 28 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) diff --git a/test/passes/O3_low-memory-unused_metrics.txt b/test/passes/O3_low-memory-unused_metrics.txt index 86a686570..756d8cc61 100644 --- a/test/passes/O3_low-memory-unused_metrics.txt +++ b/test/passes/O3_low-memory-unused_metrics.txt @@ -796,7 +796,7 @@ total (br $label$16) ) ) - (local.set $4 + (local.set $5 (i32.add (i32.shl (i32.load offset=48 @@ -821,7 +821,7 @@ total ) (br_if $label$24 (i32.lt_s - (local.tee $5 + (local.tee $4 (i32.load offset=132 (local.get $2) ) @@ -834,7 +834,7 @@ total ) (br_if $label$24 (i32.lt_s - (local.get $5) + (local.get $4) (i32.const 6) ) ) @@ -843,7 +843,7 @@ total (i32.const 128) (i32.const 192) (i32.eq - (local.get $5) + (local.get $4) (i32.const 6) ) ) @@ -856,7 +856,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $5 + (local.tee $4 (i32.load offset=20 (local.get $2) ) @@ -866,7 +866,7 @@ total ) (i32.store8 (i32.add - (local.get $5) + (local.get $4) (i32.load offset=8 (local.get $2) ) @@ -878,7 +878,7 @@ total (local.tee $3 (i32.or (local.get $3) - (local.get $4) + (local.get $5) ) ) (i32.const 32) @@ -1052,7 +1052,7 @@ total (block $label$26 (if (i32.load offset=16 - (local.tee $4 + (local.tee $5 (i32.load offset=28 (local.get $2) ) @@ -1066,17 +1066,17 @@ total ) (br_if $label$26 (i32.ge_u - (local.tee $5 + (local.tee $6 (i32.load offset=32 (local.get $2) ) ) (i32.load16_u offset=20 - (local.get $4) + (local.get $5) ) ) ) - (local.set $6 + (local.set $4 (local.get $3) ) (loop $label$28 @@ -1092,13 +1092,13 @@ total (br_if $label$30 (i32.le_u (local.get $3) - (local.get $6) + (local.get $4) ) ) (br_if $label$30 (i32.eqz (i32.load offset=44 - (local.get $4) + (local.get $5) ) ) ) @@ -1112,11 +1112,11 @@ total (i32.load offset=8 (local.get $2) ) - (local.get $6) + (local.get $4) ) (i32.sub (local.get $3) - (local.get $6) + (local.get $4) ) ) ) @@ -1131,9 +1131,9 @@ total (local.get $0) ) ) - (local.tee $4 + (local.tee $5 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -1141,7 +1141,7 @@ total ) ) (i32.gt_u - (local.get $4) + (local.get $5) (local.get $3) ) ) @@ -1154,7 +1154,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -1220,7 +1220,7 @@ total ) ) ) - (local.set $4 + (local.set $5 (i32.load offset=28 (local.get $2) ) @@ -1237,23 +1237,23 @@ total ) ) ) - (local.set $5 + (local.set $6 (i32.load offset=32 (local.get $2) ) ) - (local.set $6 + (local.set $4 (local.get $3) ) ) ) - (local.set $4 + (local.set $5 (i32.load8_u (i32.add (i32.load offset=16 - (local.get $4) + (local.get $5) ) - (local.get $5) + (local.get $6) ) ) ) @@ -1271,11 +1271,11 @@ total ) (local.get $3) ) - (local.get $4) + (local.get $5) ) (i32.store offset=32 (local.get $2) - (local.tee $5 + (local.tee $6 (i32.add (i32.load offset=32 (local.get $2) @@ -1286,9 +1286,9 @@ total ) (if (i32.ge_u - (local.get $5) + (local.get $6) (i32.load16_u offset=20 - (local.tee $4 + (local.tee $5 (i32.load offset=28 (local.get $2) ) @@ -1297,7 +1297,7 @@ total ) (block (local.set $3 - (local.get $6) + (local.get $4) ) (br $label$26) ) @@ -1323,13 +1323,13 @@ total (br_if $label$33 (i32.eqz (i32.load offset=44 - (local.get $4) + (local.get $5) ) ) ) (br_if $label$33 (i32.le_u - (local.tee $5 + (local.tee $4 (i32.load offset=20 (local.get $2) ) @@ -1350,12 +1350,12 @@ total (local.get $3) ) (i32.sub - (local.get $5) + (local.get $4) (local.get $3) ) ) ) - (local.set $4 + (local.set $5 (i32.load offset=28 (local.get $2) ) @@ -1367,7 +1367,7 @@ total (local.get $2) ) (i32.load offset=20 - (local.get $4) + (local.get $5) ) ) (block @@ -1394,7 +1394,7 @@ total (i32.const 73) ) ) - (local.set $4 + (local.set $5 (i32.load offset=28 (local.get $2) ) @@ -1403,18 +1403,18 @@ total (br_if $label$11 (i32.eqz (i32.load offset=28 - (local.get $4) + (local.get $5) ) ) ) - (local.set $6 + (local.set $4 (local.tee $3 (i32.load offset=20 (local.get $2) ) ) ) - (local.set $4 + (local.set $5 (block $label$35 (result i32) (loop $label$37 (block $label$36 @@ -1430,7 +1430,7 @@ total (br_if $label$39 (i32.le_u (local.get $3) - (local.get $6) + (local.get $4) ) ) (br_if $label$39 @@ -1452,11 +1452,11 @@ total (i32.load offset=8 (local.get $2) ) - (local.get $6) + (local.get $4) ) (i32.sub (local.get $3) - (local.get $6) + (local.get $4) ) ) ) @@ -1471,9 +1471,9 @@ total (local.get $0) ) ) - (local.tee $4 + (local.tee $5 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -1481,7 +1481,7 @@ total ) ) (i32.gt_u - (local.get $4) + (local.get $5) (local.get $3) ) ) @@ -1494,7 +1494,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -1572,12 +1572,12 @@ total ) ) ) - (local.set $6 + (local.set $4 (local.get $3) ) ) ) - (local.set $4 + (local.set $5 (i32.load offset=28 (i32.load offset=28 (local.get $2) @@ -1587,7 +1587,7 @@ total (i32.store offset=32 (local.get $2) (i32.add - (local.tee $5 + (local.tee $6 (i32.load offset=32 (local.get $2) ) @@ -1595,11 +1595,11 @@ total (i32.const 1) ) ) - (local.set $4 + (local.set $5 (i32.load8_u (i32.add - (local.get $4) (local.get $5) + (local.get $6) ) ) ) @@ -1617,10 +1617,10 @@ total ) (local.get $3) ) - (local.get $4) + (local.get $5) ) (if - (local.get $4) + (local.get $5) (block (local.set $3 (i32.load offset=20 @@ -1631,7 +1631,7 @@ total ) (block (local.set $3 - (local.get $6) + (local.get $4) ) (br $label$35 (i32.const 0) @@ -1655,7 +1655,7 @@ total ) (br_if $label$42 (i32.le_u - (local.tee $5 + (local.tee $4 (i32.load offset=20 (local.get $2) ) @@ -1676,7 +1676,7 @@ total (local.get $3) ) (i32.sub - (local.get $5) + (local.get $4) (local.get $3) ) ) @@ -1684,7 +1684,7 @@ total ) (br_if $label$12 (i32.eqz - (local.get $4) + (local.get $5) ) ) (local.set $3 @@ -1720,14 +1720,14 @@ total ) ) ) - (local.set $6 + (local.set $4 (local.tee $3 (i32.load offset=20 (local.get $2) ) ) ) - (local.set $4 + (local.set $5 (block $label$43 (result i32) (loop $label$45 (block $label$44 @@ -1743,7 +1743,7 @@ total (br_if $label$47 (i32.le_u (local.get $3) - (local.get $6) + (local.get $4) ) ) (br_if $label$47 @@ -1765,11 +1765,11 @@ total (i32.load offset=8 (local.get $2) ) - (local.get $6) + (local.get $4) ) (i32.sub (local.get $3) - (local.get $6) + (local.get $4) ) ) ) @@ -1784,9 +1784,9 @@ total (local.get $0) ) ) - (local.tee $4 + (local.tee $5 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -1794,7 +1794,7 @@ total ) ) (i32.gt_u - (local.get $4) + (local.get $5) (local.get $3) ) ) @@ -1807,7 +1807,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -1885,12 +1885,12 @@ total ) ) ) - (local.set $6 + (local.set $4 (local.get $3) ) ) ) - (local.set $4 + (local.set $5 (i32.load offset=36 (i32.load offset=28 (local.get $2) @@ -1900,7 +1900,7 @@ total (i32.store offset=32 (local.get $2) (i32.add - (local.tee $5 + (local.tee $6 (i32.load offset=32 (local.get $2) ) @@ -1908,11 +1908,11 @@ total (i32.const 1) ) ) - (local.set $4 + (local.set $5 (i32.load8_u (i32.add - (local.get $4) (local.get $5) + (local.get $6) ) ) ) @@ -1930,10 +1930,10 @@ total ) (local.get $3) ) - (local.get $4) + (local.get $5) ) (if - (local.get $4) + (local.get $5) (block (local.set $3 (i32.load offset=20 @@ -1944,7 +1944,7 @@ total ) (block (local.set $3 - (local.get $6) + (local.get $4) ) (br $label$43 (i32.const 0) @@ -1968,7 +1968,7 @@ total ) (br_if $label$50 (i32.le_u - (local.tee $5 + (local.tee $4 (i32.load offset=20 (local.get $2) ) @@ -1989,7 +1989,7 @@ total (local.get $3) ) (i32.sub - (local.get $5) + (local.get $4) (local.get $3) ) ) @@ -1997,7 +1997,7 @@ total ) (br_if $label$8 (i32.eqz - (local.get $4) + (local.get $5) ) ) (local.set $3 @@ -2049,9 +2049,9 @@ total (local.get $0) ) ) - (local.tee $4 + (local.tee $5 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -2059,7 +2059,7 @@ total ) ) (i32.gt_u - (local.get $4) + (local.get $5) (local.get $3) ) ) @@ -2072,7 +2072,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2233,14 +2233,14 @@ total (i32.eqz (local.tee $3 (select - (local.tee $4 + (local.tee $5 (i32.load offset=16 (local.get $0) ) ) (local.tee $3 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -2249,7 +2249,7 @@ total ) (i32.gt_u (local.get $3) - (local.get $4) + (local.get $5) ) ) ) @@ -2261,7 +2261,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2276,14 +2276,14 @@ total ) ) (i32.store offset=16 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2299,7 +2299,7 @@ total ) (i32.store offset=16 (local.get $0) - (local.tee $4 + (local.tee $5 (i32.sub (i32.load offset=16 (local.get $0) @@ -2309,11 +2309,11 @@ total ) ) (i32.store offset=20 - (local.get $5) + (local.get $4) (local.tee $3 (i32.sub (i32.load offset=20 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2323,14 +2323,14 @@ total (local.get $3) ) (i32.store offset=16 - (local.get $5) + (local.get $4) (i32.load offset=8 - (local.get $5) + (local.get $4) ) ) ) (br_if $label$53 - (local.get $4) + (local.get $5) ) (br $folding-inner1) ) @@ -2572,14 +2572,14 @@ total (i32.eqz (local.tee $3 (select - (local.tee $4 + (local.tee $5 (i32.load offset=16 (local.get $0) ) ) (local.tee $3 (i32.load offset=20 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) @@ -2588,7 +2588,7 @@ total ) (i32.gt_u (local.get $3) - (local.get $4) + (local.get $5) ) ) ) @@ -2600,7 +2600,7 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2615,14 +2615,14 @@ total ) ) (i32.store offset=16 - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2638,7 +2638,7 @@ total ) (i32.store offset=16 (local.get $0) - (local.tee $4 + (local.tee $5 (i32.sub (i32.load offset=16 (local.get $0) @@ -2648,11 +2648,11 @@ total ) ) (i32.store offset=20 - (local.get $5) + (local.get $4) (local.tee $3 (i32.sub (i32.load offset=20 - (local.get $5) + (local.get $4) ) (local.get $3) ) @@ -2662,14 +2662,14 @@ total (local.get $3) ) (i32.store offset=16 - (local.get $5) + (local.get $4) (i32.load offset=8 - (local.get $5) + (local.get $4) ) ) ) (br_if $label$56 - (local.get $4) + (local.get $5) ) (br $folding-inner1) ) @@ -2687,7 +2687,7 @@ total ) (br_if $label$1 (i32.lt_s - (local.tee $1 + (local.tee $4 (i32.load offset=24 (local.get $2) ) @@ -2695,7 +2695,7 @@ total (i32.const 1) ) ) - (local.set $3 + (local.set $1 (i32.load offset=48 (local.get $0) ) @@ -2704,14 +2704,14 @@ total (block $label$68 (result i32) (if (i32.eq - (local.get $1) + (local.get $4) (i32.const 2) ) (block (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2721,14 +2721,14 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) - (local.get $3) + (local.get $1) ) - (local.set $3 + (local.set $1 (i32.load offset=48 (local.get $0) ) @@ -2736,7 +2736,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2746,17 +2746,17 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) (i32.shr_u - (local.get $3) + (local.get $1) (i32.const 8) ) ) - (local.set $3 + (local.set $1 (i32.load16_u offset=50 (local.get $0) ) @@ -2764,7 +2764,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2774,14 +2774,14 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) - (local.get $3) + (local.get $1) ) - (local.set $3 + (local.set $1 (i32.load8_u offset=51 (local.get $0) ) @@ -2789,7 +2789,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2799,14 +2799,14 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) - (local.get $3) + (local.get $1) ) - (local.set $3 + (local.set $1 (i32.load offset=8 (local.get $0) ) @@ -2814,7 +2814,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2824,14 +2824,14 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) - (local.get $3) + (local.get $1) ) - (local.set $3 + (local.set $1 (i32.load offset=8 (local.get $0) ) @@ -2839,7 +2839,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2849,17 +2849,17 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) (i32.shr_u - (local.get $3) + (local.get $1) (i32.const 8) ) ) - (local.set $3 + (local.set $1 (i32.load16_u offset=10 (local.get $0) ) @@ -2867,7 +2867,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2877,12 +2877,12 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) - (local.get $3) + (local.get $1) ) (local.set $3 (i32.load8_u offset=11 @@ -2913,7 +2913,7 @@ total (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2923,20 +2923,20 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) (i32.shr_u - (local.get $3) + (local.get $1) (i32.const 24) ) ) (i32.store offset=20 (local.get $2) (i32.add - (local.tee $1 + (local.tee $3 (i32.load offset=20 (local.get $2) ) @@ -2946,13 +2946,13 @@ total ) (i32.store8 (i32.add - (local.get $1) + (local.get $3) (i32.load offset=8 (local.get $2) ) ) (i32.shr_u - (local.get $3) + (local.get $1) (i32.const 16) ) ) @@ -3007,16 +3007,16 @@ total (block $label$70 (br_if $label$70 (i32.eqz - (local.tee $3 + (local.tee $1 (select - (local.tee $3 + (local.tee $1 (i32.load offset=16 (local.get $0) ) ) - (local.tee $1 + (local.tee $4 (i32.load offset=20 - (local.tee $4 + (local.tee $3 (i32.load offset=28 (local.get $0) ) @@ -3024,8 +3024,8 @@ total ) ) (i32.gt_u + (local.get $4) (local.get $1) - (local.get $3) ) ) ) @@ -3037,9 +3037,9 @@ total (local.get $0) ) (i32.load offset=16 - (local.get $4) + (local.get $3) ) - (local.get $3) + (local.get $1) ) ) (i32.store offset=12 @@ -3048,20 +3048,20 @@ total (i32.load offset=12 (local.get $0) ) - (local.get $3) + (local.get $1) ) ) (i32.store offset=16 - (local.tee $1 + (local.tee $3 (i32.load offset=28 (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $1) + (local.get $3) ) - (local.get $3) + (local.get $1) ) ) (i32.store offset=20 @@ -3070,7 +3070,7 @@ total (i32.load offset=20 (local.get $0) ) - (local.get $3) + (local.get $1) ) ) (i32.store offset=16 @@ -3079,17 +3079,17 @@ total (i32.load offset=16 (local.get $0) ) - (local.get $3) + (local.get $1) ) ) (i32.store offset=20 - (local.get $1) + (local.get $3) (local.tee $0 (i32.sub (i32.load offset=20 - (local.get $1) + (local.get $3) ) - (local.get $3) + (local.get $1) ) ) ) @@ -3097,9 +3097,9 @@ total (local.get $0) ) (i32.store offset=16 - (local.get $1) + (local.get $3) (i32.load offset=8 - (local.get $1) + (local.get $3) ) ) ) diff --git a/test/passes/O4.txt b/test/passes/O4.txt index 2845d30d9..1b01f1c28 100644 --- a/test/passes/O4.txt +++ b/test/passes/O4.txt @@ -43,7 +43,7 @@ ) (if (i32.gt_u - (local.tee $2 + (local.tee $0 (i32.and (i32.add (i32.add @@ -65,7 +65,7 @@ ) ) (i32.shl - (local.tee $3 + (local.tee $2 (current_memory) ) (i32.const 16) @@ -75,13 +75,13 @@ (i32.lt_s (grow_memory (select - (local.get $3) - (local.tee $0 + (local.get $2) + (local.tee $3 (i32.shr_u (i32.and (i32.add (i32.sub - (local.get $2) + (local.get $0) (local.get $1) ) (i32.const 65535) @@ -92,8 +92,8 @@ ) ) (i32.gt_s + (local.get $2) (local.get $3) - (local.get $0) ) ) ) @@ -102,7 +102,7 @@ (if (i32.lt_s (grow_memory - (local.get $0) + (local.get $3) ) (i32.const 0) ) @@ -111,7 +111,7 @@ ) ) (global.set $global$1 - (local.get $2) + (local.get $0) ) (local.get $1) ) @@ -369,7 +369,7 @@ (i32.store (i32.sub (i32.add - (local.tee $2 + (local.tee $1 (i32.and (i32.sub (i32.const 20) @@ -386,7 +386,7 @@ ) (if (i32.le_u - (local.get $2) + (local.get $1) (i32.const 8) ) (return) @@ -407,10 +407,10 @@ ) (i32.store (i32.sub - (local.tee $1 + (local.tee $2 (i32.add (local.get $0) - (local.get $2) + (local.get $1) ) ) (i32.const 12) @@ -419,14 +419,14 @@ ) (i32.store (i32.sub - (local.get $1) + (local.get $2) (i32.const 8) ) (i32.const 0) ) (if (i32.le_u - (local.get $2) + (local.get $1) (i32.const 24) ) (return) @@ -461,10 +461,10 @@ ) (i32.store (i32.sub - (local.tee $1 + (local.tee $2 (i32.add (local.get $0) - (local.get $2) + (local.get $1) ) ) (i32.const 28) @@ -473,28 +473,28 @@ ) (i32.store (i32.sub - (local.get $1) + (local.get $2) (i32.const 24) ) (i32.const 0) ) (i32.store (i32.sub - (local.get $1) + (local.get $2) (i32.const 20) ) (i32.const 0) ) (i32.store (i32.sub - (local.get $1) + (local.get $2) (i32.const 16) ) (i32.const 0) ) (local.set $0 (i32.add - (local.tee $1 + (local.tee $2 (i32.add (i32.and (local.get $0) @@ -506,16 +506,16 @@ (local.get $0) ) ) - (local.set $2 + (local.set $1 (i32.sub - (local.get $2) (local.get $1) + (local.get $2) ) ) (loop $label$8 (if (i32.ge_u - (local.get $2) + (local.get $1) (i32.const 32) ) (block @@ -544,9 +544,9 @@ ) (i64.const 0) ) - (local.set $2 + (local.set $1 (i32.sub - (local.get $2) + (local.get $1) (i32.const 32) ) ) @@ -727,7 +727,6 @@ (local $15 f64) (local $16 f64) (local $17 f64) - (local $18 f64) (local.set $13 (i32.load offset=4 (local.tee $12 @@ -811,20 +810,18 @@ (f64.add (f64.mul (local.tee $2 - (local.tee $18 - (f64.sub - (local.get $14) - (f64.load - (local.tee $1 - (i32.load offset=8 - (i32.add - (i32.load - (local.get $12) - ) - (i32.shl - (local.get $7) - (i32.const 2) - ) + (f64.sub + (local.get $14) + (f64.load + (local.tee $1 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $12) + ) + (i32.shl + (local.get $7) + (i32.const 2) ) ) ) @@ -910,7 +907,7 @@ (local.get $1) ) (f64.mul - (local.get $18) + (local.get $2) (local.tee $2 (f64.mul (local.get $17) @@ -1040,7 +1037,7 @@ (local.get $5) ) (block - (local.set $6 + (local.set $7 (f64.load (local.tee $0 (i32.load offset=8 @@ -1057,12 +1054,12 @@ ) ) ) - (local.set $7 + (local.set $8 (f64.load offset=8 (local.get $0) ) ) - (local.set $8 + (local.set $9 (f64.load offset=16 (local.get $0) ) @@ -1073,7 +1070,7 @@ (f64.mul (f64.mul (f64.const 0.5) - (local.tee $9 + (local.tee $10 (f64.load offset=48 (local.get $0) ) @@ -1123,64 +1120,59 @@ (local.get $5) ) (block - (local.set $10 - (local.get $1) - ) - (local.set $1 - (f64.add - (f64.mul - (local.tee $1 - (f64.sub - (local.get $6) - (f64.load - (local.tee $3 - (i32.load offset=8 - (i32.add - (i32.load - (local.get $4) - ) - (i32.shl - (local.get $0) - (i32.const 2) - ) - ) - ) + (local.set $6 + (f64.sub + (local.get $7) + (f64.load + (local.tee $3 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $4) + ) + (i32.shl + (local.get $0) + (i32.const 2) ) ) ) ) - (local.get $1) - ) - (f64.mul - (local.tee $1 - (f64.sub - (local.get $7) - (f64.load offset=8 - (local.get $3) - ) - ) - ) - (local.get $1) ) ) ) (local.set $1 (f64.sub - (local.get $10) + (local.get $1) (f64.div (f64.mul - (local.get $9) + (local.get $10) (f64.load offset=48 (local.get $3) ) ) (f64.sqrt (f64.add - (local.get $1) + (f64.add + (f64.mul + (local.get $6) + (local.get $6) + ) + (f64.mul + (local.tee $1 + (f64.sub + (local.get $8) + (f64.load offset=8 + (local.get $3) + ) + ) + ) + (local.get $1) + ) + ) (f64.mul (local.tee $1 (f64.sub - (local.get $8) + (local.get $9) (f64.load offset=16 (local.get $3) ) diff --git a/test/passes/Oz.txt b/test/passes/Oz.txt index b39d494b9..47be5654f 100644 --- a/test/passes/Oz.txt +++ b/test/passes/Oz.txt @@ -18,7 +18,7 @@ ) (func $8 (; 1 ;) (; has Stack IR ;) (type $1) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (i32.store - (local.tee $2 + (local.tee $0 (i32.add (local.get $1) (i32.const 4) @@ -26,13 +26,13 @@ ) (i32.and (i32.load - (local.get $2) + (local.get $0) ) (i32.const -75) ) ) (i32.store - (local.tee $1 + (local.tee $0 (i32.add (local.get $1) (i32.const 4) @@ -40,7 +40,7 @@ ) (i32.or (i32.load - (local.get $1) + (local.get $0) ) (i32.const 8) ) diff --git a/test/passes/inlining-optimizing_optimize-level=3.txt b/test/passes/inlining-optimizing_optimize-level=3.txt index 29755b055..131f438c2 100644 --- a/test/passes/inlining-optimizing_optimize-level=3.txt +++ b/test/passes/inlining-optimizing_optimize-level=3.txt @@ -570,12 +570,11 @@ ) ) ) - (local.set $1 + (local.tee $0 (call $___fflush_unlocked (local.get $0) ) ) - (local.get $1) ) ) (block @@ -1120,7 +1119,7 @@ (local.get $0) ) ) - (local.set $9 + (local.set $4 (i32.load (local.get $0) ) @@ -1135,14 +1134,14 @@ (i32.store (local.get $0) (i32.and - (local.get $9) + (local.get $4) (i32.const -33) ) ) ) (if (i32.load - (local.tee $10 + (local.tee $9 (i32.add (local.get $0) (i32.const 48) @@ -1159,9 +1158,9 @@ ) ) (block - (local.set $12 + (local.set $11 (i32.load - (local.tee $11 + (local.tee $10 (i32.add (local.get $0) (i32.const 44) @@ -1170,7 +1169,7 @@ ) ) (i32.store - (local.get $11) + (local.get $10) (local.get $6) ) (i32.store @@ -1183,7 +1182,7 @@ (local.get $6) ) (i32.store - (local.tee $4 + (local.tee $12 (i32.add (local.get $0) (i32.const 20) @@ -1192,7 +1191,7 @@ (local.get $6) ) (i32.store - (local.get $10) + (local.get $9) (i32.const 80) ) (i32.store @@ -1217,7 +1216,7 @@ ) ) (if - (local.get $12) + (local.get $11) (block (drop (call_indirect (type $FUNCSIG$iiii) @@ -1240,16 +1239,16 @@ (local.get $1) (i32.const -1) (i32.load - (local.get $4) + (local.get $12) ) ) ) (i32.store + (local.get $10) (local.get $11) - (local.get $12) ) (i32.store - (local.get $10) + (local.get $9) (i32.const 0) ) (i32.store @@ -1261,7 +1260,7 @@ (i32.const 0) ) (i32.store - (local.get $4) + (local.get $12) (i32.const 0) ) ) @@ -1271,13 +1270,13 @@ (i32.store (local.get $0) (i32.or - (local.tee $2 + (local.tee $0 (i32.load (local.get $0) ) ) (i32.and - (local.get $9) + (local.get $4) (i32.const 32) ) ) @@ -1286,7 +1285,7 @@ (i32.const -1) (local.get $1) (i32.and - (local.get $2) + (local.get $0) (i32.const 32) ) ) @@ -2136,8 +2135,8 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 f64) + (local $14 f64) + (local $15 i32) (local $16 i32) (local $17 i32) (local $18 i32) @@ -2145,8 +2144,8 @@ (local $20 i32) (local $21 i32) (local $22 i32) - (local $23 f64) - (local $24 i32) + (local $23 i32) + (local $24 f64) (local $25 i32) (local $26 i32) (local $27 i32) @@ -2171,9 +2170,7 @@ (local $46 i32) (local $47 i32) (local $48 i32) - (local $49 i32) - (local $50 i32) - (local.set $34 + (local.set $13 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -2191,15 +2188,13 @@ ) (local.set $21 (i32.add - (local.get $34) + (local.get $13) (i32.const 16) ) ) - (local.set $35 + (local.set $33 (i32.add - (local.tee $14 - (local.get $34) - ) + (local.get $13) (i32.const 528) ) ) @@ -2209,12 +2204,12 @@ (i32.const 0) ) ) - (local.set $39 + (local.set $37 (local.tee $25 (i32.add (local.tee $5 (i32.add - (local.get $14) + (local.get $13) (i32.const 536) ) ) @@ -2222,89 +2217,87 @@ ) ) ) - (local.set $40 + (local.set $38 (i32.add (local.get $5) (i32.const 39) ) ) - (local.set $44 + (local.set $42 (i32.add - (local.tee $41 + (local.tee $39 (i32.add - (local.get $14) + (local.get $13) (i32.const 8) ) ) (i32.const 4) ) ) - (local.set $7 + (local.set $22 (i32.add (local.tee $5 (i32.add - (local.get $14) + (local.get $13) (i32.const 576) ) ) (i32.const 12) ) ) - (local.set $42 + (local.set $40 (i32.add (local.get $5) (i32.const 11) ) ) - (local.set $45 + (local.set $43 (i32.sub - (local.tee $26 - (local.get $7) - ) - (local.tee $36 - (local.tee $22 + (local.get $22) + (local.tee $34 + (local.tee $23 (i32.add - (local.get $14) + (local.get $13) (i32.const 588) ) ) ) ) ) - (local.set $46 + (local.set $44 (i32.sub (i32.const -2) - (local.get $36) + (local.get $34) ) ) - (local.set $47 + (local.set $45 (i32.add - (local.get $7) + (local.get $22) (i32.const 2) ) ) - (local.set $49 + (local.set $47 (i32.add - (local.tee $48 + (local.tee $46 (i32.add - (local.get $14) + (local.get $13) (i32.const 24) ) ) (i32.const 288) ) ) - (local.set $43 + (local.set $41 (local.tee $29 (i32.add - (local.get $22) + (local.get $23) (i32.const 9) ) ) ) - (local.set $33 + (local.set $32 (i32.add - (local.get $22) + (local.get $23) (i32.const 8) ) ) @@ -2320,16 +2313,16 @@ (block $label$break$L1 (if (i32.gt_s - (local.get $17) + (local.get $18) (i32.const -1) ) - (local.set $17 + (local.set $18 (if (result i32) (i32.gt_s (local.get $10) (i32.sub (i32.const 2147483647) - (local.get $17) + (local.get $18) ) ) (block (result i32) @@ -2341,7 +2334,7 @@ ) (i32.add (local.get $10) - (local.get $17) + (local.get $18) ) ) ) @@ -2513,7 +2506,7 @@ ) ) ) - (local.set $18 + (local.set $19 (select (local.get $8) (i32.const -1) @@ -2530,7 +2523,7 @@ (local.set $6 (local.get $12) ) - (local.set $18 + (local.set $19 (i32.const -1) ) (local.get $1) @@ -2704,7 +2697,7 @@ (local.set $8 (i32.const 1) ) - (local.set $16 + (local.set $17 (i32.load (local.get $6) ) @@ -2719,7 +2712,7 @@ (if (local.get $8) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -2736,7 +2729,7 @@ (local.set $10 (local.get $6) ) - (local.set $16 + (local.set $17 (i32.const 0) ) (br $do-once5 @@ -2744,7 +2737,7 @@ ) ) ) - (local.set $16 + (local.set $17 (i32.load (local.tee $10 (i32.and @@ -2775,14 +2768,14 @@ (local.set $12 (if (result i32) (i32.lt_s - (local.get $16) + (local.get $17) (i32.const 0) ) (block (result i32) - (local.set $16 + (local.set $17 (i32.sub (i32.const 0) - (local.get $16) + (local.get $17) ) ) (i32.or @@ -2859,7 +2852,7 @@ (i32.const 0) ) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -2868,7 +2861,7 @@ (local.set $12 (local.get $1) ) - (local.set $16 + (local.set $17 (local.get $6) ) (local.get $8) @@ -2879,7 +2872,7 @@ (local.set $12 (local.get $1) ) - (local.set $16 + (local.set $17 (i32.const 0) ) (local.get $8) @@ -2944,7 +2937,7 @@ (loop $while-in11 (drop (br_if $label$break$L46 - (local.tee $6 + (local.tee $8 (i32.add (i32.mul (local.get $8) @@ -2954,7 +2947,7 @@ ) ) (i32.ge_u - (local.tee $9 + (local.tee $6 (i32.add (i32.load8_s (local.tee $10 @@ -2971,12 +2964,6 @@ ) ) ) - (local.set $8 - (local.get $6) - ) - (local.set $6 - (local.get $9) - ) (br $while-in11) ) ) @@ -3051,7 +3038,7 @@ (if (local.get $1) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -3104,7 +3091,7 @@ (local.set $9 (i32.const 0) ) - (local.set $19 + (local.set $16 (loop $while-in13 (result i32) (if (i32.gt_u @@ -3119,7 +3106,7 @@ (i32.const 57) ) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -3136,7 +3123,7 @@ (i32.add (local.tee $11 (i32.and - (local.tee $13 + (local.tee $15 (i32.load8_s (i32.add (i32.add @@ -3173,12 +3160,12 @@ (if (i32.eqz (i32.and - (local.get $13) + (local.get $15) (i32.const 255) ) ) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -3186,7 +3173,7 @@ ) (local.set $8 (i32.gt_s - (local.get $18) + (local.get $19) (i32.const -1) ) ) @@ -3195,7 +3182,7 @@ (if (i32.eq (i32.and - (local.get $13) + (local.get $15) (i32.const 255) ) (i32.const 19) @@ -3203,7 +3190,7 @@ (if (local.get $8) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -3218,19 +3205,19 @@ (i32.add (local.get $4) (i32.shl - (local.get $18) + (local.get $19) (i32.const 2) ) ) (local.get $11) ) - (local.set $13 + (local.set $11 (i32.load offset=4 - (local.tee $11 + (local.tee $8 (i32.add (local.get $3) (i32.shl - (local.get $18) + (local.get $19) (i32.const 3) ) ) @@ -3238,14 +3225,14 @@ ) ) (i32.store - (local.get $14) + (local.get $13) (i32.load - (local.get $11) + (local.get $8) ) ) (i32.store offset=4 - (local.get $14) (local.get $13) + (local.get $11) ) (br $__rjti$2) ) @@ -3255,14 +3242,14 @@ (local.get $28) ) (block - (local.set $17 + (local.set $18 (i32.const 0) ) (br $label$break$L1) ) ) (call $_pop_arg_336 - (local.get $14) + (local.get $13) (local.get $11) (local.get $2) ) @@ -3309,14 +3296,14 @@ (i32.add (local.tee $11 (select - (local.tee $13 + (local.tee $16 (i32.sub (block $__rjto$8 (result i32) (block $__rjti$8 (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.tee $7 (block $__rjti$7 (result i32) (block $__rjti$6 @@ -3338,12 +3325,12 @@ (block $switch-case27 (br_table $switch-case42 $switch-default120 $switch-case40 $switch-default120 $switch-case42 $switch-case42 $switch-case42 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case41 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case29 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-default120 $switch-case42 $switch-default120 $switch-case37 $switch-case34 $switch-case42 $switch-case42 $switch-case42 $switch-default120 $switch-case34 $switch-default120 $switch-default120 $switch-default120 $switch-case38 $switch-case27 $switch-case33 $switch-case28 $switch-default120 $switch-default120 $switch-case39 $switch-default120 $switch-case36 $switch-default120 $switch-default120 $switch-case29 $switch-default120 (i32.sub - (local.tee $19 + (local.tee $16 (select (i32.and (local.tee $11 (i32.load8_s - (local.get $19) + (local.get $16) ) ) (i32.const -33) @@ -3382,9 +3369,9 @@ ) (i32.store (i32.load - (local.get $14) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (local.set $5 (local.get $10) @@ -3396,9 +3383,9 @@ ) (i32.store (i32.load - (local.get $14) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (local.set $5 (local.get $10) @@ -3411,17 +3398,17 @@ (i32.store (local.tee $5 (i32.load - (local.get $14) + (local.get $13) ) ) - (local.get $17) + (local.get $18) ) (i32.store offset=4 (local.get $5) (i32.shr_s (i32.shl (i32.lt_s - (local.get $17) + (local.get $18) (i32.const 0) ) (i32.const 31) @@ -3439,9 +3426,9 @@ ) (i32.store16 (i32.load - (local.get $14) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (local.set $5 (local.get $10) @@ -3453,9 +3440,9 @@ ) (i32.store8 (i32.load - (local.get $14) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (local.set $5 (local.get $10) @@ -3467,9 +3454,9 @@ ) (i32.store (i32.load - (local.get $14) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (local.set $5 (local.get $10) @@ -3482,17 +3469,17 @@ (i32.store (local.tee $5 (i32.load - (local.get $14) + (local.get $13) ) ) - (local.get $17) + (local.get $18) ) (i32.store offset=4 (local.get $5) (i32.shr_s (i32.shl (i32.lt_s - (local.get $17) + (local.get $18) (i32.const 0) ) (i32.const 31) @@ -3532,7 +3519,7 @@ ) ) ) - (local.set $19 + (local.set $16 (i32.const 120) ) (br $__rjti$3) @@ -3544,24 +3531,18 @@ ) (if (i32.or - (local.tee $7 + (local.tee $5 (i32.load - (local.get $14) + (local.get $13) ) ) - (local.tee $8 + (local.tee $7 (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) ) (block - (local.set $5 - (local.get $7) - ) - (local.set $7 - (local.get $8) - ) (local.set $8 (local.get $25) ) @@ -3612,10 +3593,10 @@ ) (local.set $6 (select - (local.tee $12 + (local.tee $5 (i32.add (i32.sub - (local.get $39) + (local.get $37) (local.get $8) ) (i32.const 1) @@ -3624,7 +3605,7 @@ (local.get $6) (i32.lt_s (local.get $6) - (local.get $12) + (local.get $5) ) ) ) @@ -3646,14 +3627,14 @@ ) (local.set $5 (i32.load - (local.get $14) + (local.get $13) ) ) (if (i32.lt_s (local.tee $7 (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) (i32.const 0) @@ -3672,7 +3653,7 @@ ) ) (i32.store - (local.get $14) + (local.get $13) (local.tee $5 (i32.sub (i32.const 0) @@ -3681,7 +3662,7 @@ ) ) (i32.store offset=4 - (local.get $14) + (local.get $13) (local.tee $7 (global.get $tempRet0) ) @@ -3728,12 +3709,12 @@ ) (local.set $5 (i32.load - (local.get $14) + (local.get $13) ) ) (local.set $7 (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) (local.set $8 @@ -3746,17 +3727,17 @@ ) (drop (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) (i32.store8 - (local.get $40) + (local.get $38) (i32.load - (local.get $14) + (local.get $13) ) ) (local.set $7 - (local.get $40) + (local.get $38) ) (local.set $12 (local.get $8) @@ -3787,7 +3768,7 @@ (select (local.tee $5 (i32.load - (local.get $14) + (local.get $13) ) ) (i32.const 4101) @@ -3798,22 +3779,22 @@ ) (drop (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) (i32.store - (local.get $41) + (local.get $39) (i32.load - (local.get $14) + (local.get $13) ) ) (i32.store - (local.get $44) + (local.get $42) (i32.const 0) ) (i32.store - (local.get $14) - (local.get $41) + (local.get $13) + (local.get $39) ) (local.set $8 (i32.const -1) @@ -3832,7 +3813,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (i32.const 0) (local.get $12) ) @@ -3842,9 +3823,9 @@ ) ) ) - (local.set $15 + (local.set $14 (f64.load - (local.get $14) + (local.get $13) ) ) (i32.store @@ -3853,7 +3834,7 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load @@ -3872,9 +3853,9 @@ (local.set $27 (i32.const 1) ) - (local.set $15 + (local.set $14 (f64.neg - (local.get $15) + (local.get $14) ) ) (i32.const 4108) @@ -3910,7 +3891,7 @@ ) (f64.store (global.get $tempDoublePtr) - (local.get $15) + (local.get $14) ) (drop (i32.load @@ -3932,10 +3913,10 @@ (if (local.tee $5 (f64.ne - (local.tee $23 + (local.tee $24 (f64.mul (call $_frexp - (local.get $15) + (local.get $14) (local.get $21) ) (f64.const 2) @@ -3956,9 +3937,9 @@ ) (if (i32.eq - (local.tee $24 + (local.tee $26 (i32.or - (local.get $19) + (local.get $16) (i32.const 32) ) ) @@ -3972,15 +3953,15 @@ (i32.const 9) ) (local.get $30) - (local.tee $13 + (local.tee $15 (i32.and - (local.get $19) + (local.get $16) (i32.const 32) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.or (i32.eqz @@ -3996,15 +3977,15 @@ (i32.const 11) ) ) - (local.get $23) + (local.get $24) (block (result f64) - (local.set $15 + (local.set $14 (f64.const 8) ) (loop $while-in54 - (local.set $15 + (local.set $14 (f64.mul - (local.get $15) + (local.get $14) (f64.const 16) ) ) @@ -4026,21 +4007,21 @@ ) (f64.neg (f64.add - (local.get $15) + (local.get $14) (f64.sub (f64.neg - (local.get $23) + (local.get $24) ) - (local.get $15) + (local.get $14) ) ) ) (f64.sub (f64.add - (local.get $23) - (local.get $15) + (local.get $24) + (local.get $14) ) - (local.get $15) + (local.get $14) ) ) ) @@ -4083,18 +4064,18 @@ ) (i32.const 31) ) - (local.get $26) + (local.get $22) ) ) - (local.get $26) + (local.get $22) ) (block (i32.store8 - (local.get $42) + (local.get $40) (i32.const 48) ) (local.set $5 - (local.get $42) + (local.get $40) ) ) ) @@ -4122,17 +4103,17 @@ ) ) (i32.add - (local.get $19) + (local.get $16) (i32.const 15) ) ) - (local.set $19 + (local.set $16 (i32.lt_s (local.get $6) (i32.const 1) ) ) - (local.set $18 + (local.set $20 (i32.eqz (i32.and (local.get $12) @@ -4141,7 +4122,7 @@ ) ) (local.set $5 - (local.get $22) + (local.get $23) ) (loop $while-in56 (i32.store8 @@ -4152,24 +4133,24 @@ (local.tee $7 (if (result i32) (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) (i32.const -2147483648) (if (result i32) (f64.ge - (local.get $15) + (local.get $14) (f64.const 2147483648) ) (i32.const -2147483648) (if (result i32) (f64.le - (local.get $15) + (local.get $14) (f64.const -2147483649) ) (i32.const -2147483648) (i32.trunc_f64_s - (local.get $15) + (local.get $14) ) ) ) @@ -4178,13 +4159,13 @@ (i32.const 4075) ) ) - (local.get $13) + (local.get $15) ) ) - (local.set $15 + (local.set $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_s (local.get $7) ) @@ -4202,17 +4183,17 @@ (i32.const 1) ) ) - (local.get $36) + (local.get $34) ) (i32.const 1) ) (if (result i32) (i32.and - (local.get $18) + (local.get $20) (i32.and - (local.get $19) + (local.get $16) (f64.eq - (local.get $15) + (local.get $14) (f64.const 0) ) ) @@ -4234,7 +4215,7 @@ ) (br_if $while-in56 (f64.ne - (local.get $15) + (local.get $14) (f64.const 0) ) ) @@ -4242,7 +4223,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.tee $7 (i32.add (local.tee $6 @@ -4250,13 +4231,13 @@ (i32.sub (i32.add (local.get $6) - (local.get $47) + (local.get $45) ) (local.get $8) ) (i32.add (i32.sub - (local.get $45) + (local.get $43) (local.get $8) ) (local.get $5) @@ -4269,7 +4250,7 @@ (i32.lt_s (i32.add (local.get $5) - (local.get $46) + (local.get $44) ) (local.get $6) ) @@ -4301,7 +4282,7 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $16) + (local.get $17) (local.get $7) (i32.xor (local.get $12) @@ -4311,7 +4292,7 @@ (local.set $5 (i32.sub (local.get $5) - (local.get $36) + (local.get $34) ) ) (if @@ -4325,7 +4306,7 @@ ) (drop (call $___fwritex - (local.get $22) + (local.get $23) (local.get $5) (local.get $0) ) @@ -4338,9 +4319,9 @@ (local.get $6) (i32.add (local.get $5) - (local.tee $5 + (local.tee $6 (i32.sub - (local.get $26) + (local.get $22) (local.get $8) ) ) @@ -4361,7 +4342,7 @@ (drop (call $___fwritex (local.get $8) - (local.get $5) + (local.get $6) (local.get $0) ) ) @@ -4369,7 +4350,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.get $7) (i32.xor (local.get $12) @@ -4378,17 +4359,17 @@ ) (br $do-once49 (select - (local.get $16) + (local.get $17) (local.get $7) (i32.lt_s (local.get $7) - (local.get $16) + (local.get $17) ) ) ) ) ) - (local.set $15 + (local.set $14 (if (result f64) (local.get $5) (block (result f64) @@ -4404,7 +4385,7 @@ ) ) (f64.mul - (local.get $23) + (local.get $24) (f64.const 268435456) ) ) @@ -4414,15 +4395,15 @@ (local.get $21) ) ) - (local.get $23) + (local.get $24) ) ) ) (local.set $7 (local.tee $8 (select - (local.get $48) - (local.get $49) + (local.get $46) + (local.get $47) (i32.lt_s (local.get $5) (i32.const 0) @@ -4436,24 +4417,24 @@ (local.tee $5 (if (result i32) (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) (i32.const -2147483648) (if (result i32) (f64.ge - (local.get $15) + (local.get $14) (f64.const 2147483648) ) (i32.const -2147483648) (if (result i32) (f64.le - (local.get $15) + (local.get $14) (f64.const -2147483649) ) (i32.const -2147483648) (i32.trunc_f64_s - (local.get $15) + (local.get $14) ) ) ) @@ -4468,10 +4449,10 @@ ) (br_if $while-in60 (f64.ne - (local.tee $15 + (local.tee $14 (f64.mul (f64.sub - (local.get $15) + (local.get $14) (f64.convert_i32_u (local.get $5) ) @@ -4497,7 +4478,7 @@ (local.get $8) ) (loop $while-in62 - (local.set $13 + (local.set $15 (select (i32.const 29) (local.get $9) @@ -4538,7 +4519,7 @@ (local.get $9) ) (i32.const 0) - (local.get $13) + (local.get $15) ) ) ) @@ -4550,7 +4531,7 @@ ) (local.get $11) ) - (local.tee $18 + (local.tee $20 (global.get $tempRet0) ) (i32.const 1000000000) @@ -4560,7 +4541,7 @@ (local.set $11 (call $___udivdi3 (local.get $11) - (local.get $18) + (local.get $20) (i32.const 1000000000) (i32.const 0) ) @@ -4626,7 +4607,7 @@ (i32.load (local.get $21) ) - (local.get $13) + (local.get $15) ) ) ) @@ -4642,7 +4623,7 @@ (local.get $8) ) ) - (local.set $18 + (local.set $19 (select (i32.const 6) (local.get $6) @@ -4662,7 +4643,7 @@ (i32.add (i32.div_s (i32.add - (local.get $18) + (local.get $19) (i32.const 25) ) (i32.const 9) @@ -4672,7 +4653,7 @@ ) (local.set $31 (i32.eq - (local.get $24) + (local.get $26) (i32.const 102) ) ) @@ -4684,7 +4665,7 @@ ) (local.set $5 (loop $while-in70 (result i32) - (local.set $13 + (local.set $15 (select (i32.const 9) (local.tee $7 @@ -4709,15 +4690,15 @@ (i32.add (i32.shl (i32.const 1) - (local.get $13) + (local.get $15) ) (i32.const -1) ) ) - (local.set $37 + (local.set $35 (i32.shr_u (i32.const 1000000000) - (local.get $13) + (local.get $15) ) ) (local.set $9 @@ -4730,24 +4711,24 @@ (i32.store (local.get $7) (i32.add + (local.get $9) (i32.shr_u - (local.tee $32 + (local.tee $9 (i32.load (local.get $7) ) ) - (local.get $13) + (local.get $15) ) - (local.get $9) ) ) (local.set $9 (i32.mul (i32.and + (local.get $9) (local.get $11) - (local.get $32) ) - (local.get $37) + (local.get $35) ) ) (br_if $while-in74 @@ -4838,7 +4819,7 @@ (i32.load (local.get $21) ) - (local.get $13) + (local.get $15) ) ) ) @@ -4893,7 +4874,7 @@ ) (br_if $do-once75 (i32.lt_u - (local.tee $11 + (local.tee $8 (i32.load (local.get $5) ) @@ -4913,7 +4894,7 @@ ) (br_if $while-in78 (i32.ge_u - (local.get $11) + (local.get $8) (local.tee $6 (i32.mul (local.get $6) @@ -4934,12 +4915,12 @@ (local.tee $6 (i32.add (i32.sub - (local.get $18) + (local.get $19) (select (local.get $7) (i32.const 0) (i32.ne - (local.get $24) + (local.get $26) (i32.const 102) ) ) @@ -4949,13 +4930,13 @@ (i32.and (local.tee $31 (i32.ne - (local.get $18) + (local.get $19) (i32.const 0) ) ) - (local.tee $37 + (local.tee $35 (i32.eq - (local.get $24) + (local.get $26) (i32.const 103) ) ) @@ -4981,7 +4962,7 @@ ) ) (block (result i32) - (local.set $13 + (local.set $8 (i32.div_s (local.tee $6 (i32.add @@ -5033,15 +5014,15 @@ (i32.const 10) ) ) - (local.set $13 - (local.tee $24 + (local.set $15 + (local.tee $8 (i32.load (local.tee $6 (i32.add (i32.add - (local.get $8) + (local.get $20) (i32.shl - (local.get $13) + (local.get $8) (i32.const 2) ) ) @@ -5051,11 +5032,11 @@ ) ) ) - (local.set $13 + (local.set $15 (if (result i32) (local.get $11) (i32.rem_u - (local.get $13) + (local.get $15) (local.get $11) ) (i32.const 0) @@ -5064,7 +5045,7 @@ (if (i32.eqz (i32.and - (local.tee $32 + (local.tee $26 (i32.eq (i32.add (local.get $6) @@ -5074,26 +5055,26 @@ ) ) (i32.eqz - (local.get $13) + (local.get $15) ) ) ) (block $do-once81 - (local.set $50 + (local.set $36 (if (result i32) (local.get $11) (i32.div_u - (local.get $24) + (local.get $8) (local.get $11) ) (i32.const 0) ) ) - (local.set $15 + (local.set $14 (if (result f64) (i32.lt_u - (local.get $13) - (local.tee $38 + (local.get $15) + (local.tee $48 (i32.div_s (local.get $11) (i32.const 2) @@ -5105,21 +5086,21 @@ (f64.const 1) (f64.const 1.5) (i32.and - (local.get $32) + (local.get $26) (i32.eq - (local.get $13) - (local.get $38) + (local.get $15) + (local.get $48) ) ) ) ) ) - (local.set $23 + (local.set $24 (select (f64.const 9007199254740994) (f64.const 9007199254740992) (i32.and - (local.get $50) + (local.get $36) (i32.const 1) ) ) @@ -5134,14 +5115,14 @@ (i32.const 45) ) (block - (local.set $23 + (local.set $24 (f64.neg - (local.get $23) + (local.get $24) ) ) - (local.set $15 + (local.set $14 (f64.neg - (local.get $15) + (local.get $14) ) ) ) @@ -5149,28 +5130,28 @@ ) (i32.store (local.get $6) - (local.tee $13 + (local.tee $8 (i32.sub - (local.get $24) - (local.get $13) + (local.get $8) + (local.get $15) ) ) ) (br_if $do-once81 (f64.eq (f64.add - (local.get $23) - (local.get $15) + (local.get $24) + (local.get $14) ) - (local.get $23) + (local.get $24) ) ) (i32.store (local.get $6) (local.tee $7 (i32.add + (local.get $8) (local.get $11) - (local.get $13) ) ) ) @@ -5237,7 +5218,7 @@ ) (br_if $do-once81 (i32.lt_u - (local.tee $13 + (local.tee $8 (i32.load (local.get $5) ) @@ -5257,7 +5238,7 @@ ) (br_if $while-in88 (i32.ge_u - (local.get $13) + (local.get $8) (local.tee $11 (i32.mul (local.get $11) @@ -5272,7 +5253,7 @@ (local.set $11 (local.get $5) ) - (local.set $13 + (local.set $8 (local.get $7) ) (select @@ -5293,17 +5274,17 @@ (local.set $11 (local.get $5) ) - (local.set $13 + (local.set $8 (local.get $7) ) (local.get $9) ) ) ) - (local.set $32 + (local.set $36 (i32.sub (i32.const 0) - (local.get $13) + (local.get $8) ) ) (local.set $9 @@ -5315,7 +5296,7 @@ (local.get $11) ) (block - (local.set $24 + (local.set $26 (i32.const 0) ) (br $while-out89 @@ -5333,7 +5314,7 @@ ) ) (block (result i32) - (local.set $24 + (local.set $26 (i32.const 1) ) (local.get $5) @@ -5351,14 +5332,14 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) - (local.tee $13 + (local.get $17) + (local.tee $8 (i32.add (i32.add (i32.add (local.tee $5 (if (result i32) - (local.get $37) + (local.get $35) (block $do-once91 (result i32) (local.set $7 (if (result i32) @@ -5370,67 +5351,62 @@ (local.get $31) (i32.const 1) ) - (local.get $18) + (local.get $19) ) ) - (local.get $13) + (local.get $8) ) (i32.gt_s - (local.get $13) + (local.get $8) (i32.const -5) ) ) (block (result i32) - (local.set $18 + (local.set $19 (i32.sub (i32.add (local.get $5) (i32.const -1) ) - (local.get $13) + (local.get $8) ) ) (i32.add - (local.get $19) + (local.get $16) (i32.const -1) ) ) (block (result i32) - (local.set $18 + (local.set $19 (i32.add (local.get $5) (i32.const -1) ) ) (i32.add - (local.get $19) + (local.get $16) (i32.const -2) ) ) ) ) - (if - (local.tee $5 - (i32.and - (local.get $12) - (i32.const 8) - ) - ) - (block - (local.set $20 - (local.get $5) - ) - (br $do-once91 - (local.get $18) + (drop + (br_if $do-once91 + (local.get $19) + (local.tee $15 + (i32.and + (local.get $12) + (i32.const 8) + ) ) ) ) (if - (local.get $24) + (local.get $26) (block $do-once93 (if (i32.eqz - (local.tee $19 + (local.tee $16 (i32.load (i32.add (local.get $9) @@ -5449,7 +5425,7 @@ (local.set $5 (if (result i32) (i32.rem_u - (local.get $19) + (local.get $16) (i32.const 10) ) (block @@ -5476,7 +5452,7 @@ (br_if $while-in96 (i32.eqz (if (result i32) - (local.tee $38 + (local.tee $15 (local.tee $6 (i32.mul (local.get $6) @@ -5485,8 +5461,8 @@ ) ) (i32.rem_u - (local.get $19) - (local.get $38) + (local.get $16) + (local.get $15) ) (i32.const 0) ) @@ -5522,11 +5498,11 @@ (i32.const 102) ) (block (result i32) - (local.set $20 + (local.set $15 (i32.const 0) ) (select - (local.get $18) + (local.get $19) (local.tee $5 (select (i32.const 0) @@ -5543,17 +5519,17 @@ ) ) (i32.lt_s - (local.get $18) + (local.get $19) (local.get $5) ) ) ) (block (result i32) - (local.set $20 + (local.set $15 (i32.const 0) ) (select - (local.get $18) + (local.get $19) (local.tee $5 (select (i32.const 0) @@ -5561,7 +5537,7 @@ (i32.sub (i32.add (local.get $6) - (local.get $13) + (local.get $8) ) (local.get $5) ) @@ -5573,7 +5549,7 @@ ) ) (i32.lt_s - (local.get $18) + (local.get $19) (local.get $5) ) ) @@ -5581,16 +5557,16 @@ ) ) (block (result i32) - (local.set $20 + (local.set $15 (i32.and (local.get $12) (i32.const 8) ) ) (local.set $7 - (local.get $19) + (local.get $16) ) - (local.get $18) + (local.get $19) ) ) ) @@ -5600,17 +5576,17 @@ ) ) (i32.ne - (local.tee $31 + (local.tee $19 (i32.or (local.get $5) - (local.get $20) + (local.get $15) ) ) (i32.const 0) ) ) (if (result i32) - (local.tee $18 + (local.tee $31 (i32.eq (i32.or (local.get $7) @@ -5620,14 +5596,14 @@ ) ) (block (result i32) - (local.set $19 + (local.set $16 (i32.const 0) ) (select - (local.get $13) + (local.get $8) (i32.const 0) (i32.gt_s - (local.get $13) + (local.get $8) (i32.const 0) ) ) @@ -5636,15 +5612,15 @@ (if (i32.lt_s (i32.sub - (local.get $26) + (local.get $22) (local.tee $6 (call $_fmt_u (local.tee $6 (select - (local.get $32) - (local.get $13) + (local.get $36) + (local.get $8) (i32.lt_s - (local.get $13) + (local.get $8) (i32.const 0) ) ) @@ -5659,7 +5635,7 @@ ) (i32.const 31) ) - (local.get $26) + (local.get $22) ) ) ) @@ -5678,7 +5654,7 @@ (br_if $while-in98 (i32.lt_s (i32.sub - (local.get $26) + (local.get $22) (local.get $6) ) (i32.const 2) @@ -5694,7 +5670,7 @@ (i32.add (i32.and (i32.shr_s - (local.get $13) + (local.get $8) (i32.const 31) ) (i32.const 2) @@ -5703,7 +5679,7 @@ ) ) (i32.store8 - (local.tee $6 + (local.tee $16 (i32.add (local.get $6) (i32.const -2) @@ -5712,10 +5688,8 @@ (local.get $7) ) (i32.sub - (local.get $26) - (local.tee $19 - (local.get $6) - ) + (local.get $22) + (local.get $16) ) ) ) @@ -5743,24 +5717,24 @@ (call $_pad (local.get $0) (i32.const 48) - (local.get $16) - (local.get $13) + (local.get $17) + (local.get $8) (i32.xor (local.get $12) (i32.const 65536) ) ) (if - (local.get $18) + (local.get $31) (block (local.set $6 (local.tee $11 (select - (local.get $8) + (local.get $20) (local.get $11) (i32.gt_u (local.get $11) - (local.get $8) + (local.get $20) ) ) ) @@ -5789,18 +5763,18 @@ ) ) (i32.store8 - (local.get $33) + (local.get $32) (i32.const 48) ) (local.set $7 - (local.get $33) + (local.get $32) ) ) (block (br_if $do-once103 (i32.le_u (local.get $7) - (local.get $22) + (local.get $23) ) ) (loop $while-in106 @@ -5816,7 +5790,7 @@ (br_if $while-in106 (i32.gt_u (local.get $7) - (local.get $22) + (local.get $23) ) ) ) @@ -5836,7 +5810,7 @@ (call $___fwritex (local.get $7) (i32.sub - (local.get $43) + (local.get $41) (local.get $7) ) (local.get $0) @@ -5851,7 +5825,7 @@ (i32.const 4) ) ) - (local.get $8) + (local.get $20) ) (block (local.set $6 @@ -5862,7 +5836,7 @@ ) ) (if - (local.get $31) + (local.get $19) (if (i32.eqz (i32.and @@ -5908,7 +5882,7 @@ (local.get $29) ) ) - (local.get $22) + (local.get $23) ) (loop $while-in112 (i32.store8 @@ -5923,7 +5897,7 @@ (br_if $while-in112 (i32.gt_u (local.get $6) - (local.get $22) + (local.get $23) ) ) ) @@ -5992,14 +5966,14 @@ ) ) (block $do-once99 - (local.set $9 + (local.set $20 (select (local.get $9) (i32.add (local.get $11) (i32.const 4) ) - (local.get $24) + (local.get $26) ) ) (call $_pad @@ -6012,9 +5986,9 @@ (i32.const -1) ) (block (result i32) - (local.set $18 + (local.set $15 (i32.eqz - (local.get $20) + (local.get $15) ) ) (local.set $6 @@ -6039,11 +6013,11 @@ ) (block (i32.store8 - (local.get $33) + (local.get $32) (i32.const 48) ) (local.set $5 - (local.get $33) + (local.get $32) ) ) ) @@ -6079,7 +6053,7 @@ ) (br_if $do-once115 (i32.and - (local.get $18) + (local.get $15) (i32.lt_s (local.get $7) (i32.const 1) @@ -6106,7 +6080,7 @@ (br_if $do-once115 (i32.le_u (local.get $5) - (local.get $22) + (local.get $23) ) ) (loop $while-in118 @@ -6122,16 +6096,16 @@ (br_if $while-in118 (i32.gt_u (local.get $5) - (local.get $22) + (local.get $23) ) ) ) ) ) ) - (local.set $8 + (local.set $9 (i32.sub - (local.get $43) + (local.get $41) (local.get $5) ) ) @@ -6148,11 +6122,11 @@ (call $___fwritex (local.get $5) (select - (local.get $8) + (local.get $9) (local.get $7) (i32.gt_s (local.get $7) - (local.get $8) + (local.get $9) ) ) (local.get $0) @@ -6168,13 +6142,13 @@ (i32.const 4) ) ) - (local.get $9) + (local.get $20) ) (i32.gt_s (local.tee $7 (i32.sub (local.get $7) - (local.get $8) + (local.get $9) ) ) (i32.const -1) @@ -6201,10 +6175,10 @@ ) (drop (call $___fwritex - (local.get $19) + (local.get $16) (i32.sub - (local.get $26) - (local.get $19) + (local.get $22) + (local.get $16) ) (local.get $0) ) @@ -6214,19 +6188,19 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) - (local.get $13) + (local.get $17) + (local.get $8) (i32.xor (local.get $12) (i32.const 8192) ) ) (select - (local.get $16) - (local.get $13) + (local.get $17) + (local.get $8) (i32.lt_s - (local.get $13) - (local.get $16) + (local.get $8) + (local.get $17) ) ) ) @@ -6234,7 +6208,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.tee $7 (i32.add (local.tee $9 @@ -6243,8 +6217,8 @@ (local.get $27) (local.tee $6 (f64.ne - (local.get $15) - (local.get $15) + (local.get $14) + (local.get $14) ) ) ) @@ -6262,7 +6236,7 @@ (local.tee $8 (i32.ne (i32.and - (local.get $19) + (local.get $16) (i32.const 32) ) (i32.const 0) @@ -6317,7 +6291,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.get $7) (i32.xor (local.get $12) @@ -6325,11 +6299,11 @@ ) ) (select - (local.get $16) + (local.get $17) (local.get $7) (i32.lt_s (local.get $7) - (local.get $16) + (local.get $17) ) ) ) @@ -6361,27 +6335,24 @@ ) (local.set $9 (i32.and - (local.get $19) + (local.get $16) (i32.const 32) ) ) (if (i32.or - (local.tee $8 + (local.tee $5 (i32.load - (local.get $14) + (local.get $13) ) ) (local.tee $12 (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) ) (block - (local.set $5 - (local.get $8) - ) (local.set $8 (local.get $25) ) @@ -6436,10 +6407,10 @@ (i32.eqz (i32.or (i32.load - (local.get $14) + (local.get $13) ) (i32.load offset=4 - (local.get $14) + (local.get $13) ) ) ) @@ -6454,7 +6425,7 @@ (local.set $9 (i32.add (i32.shr_s - (local.get $19) + (local.get $16) (i32.const 4) ) (i32.const 4091) @@ -6491,9 +6462,9 @@ ) (br $__rjti$8) ) - (local.set $19 + (local.set $15 (i32.eqz - (local.tee $13 + (local.tee $16 (call $_memchr (local.get $5) (i32.const 0) @@ -6509,12 +6480,12 @@ (select (local.get $6) (i32.sub - (local.get $13) + (local.get $16) (local.tee $7 (local.get $5) ) ) - (local.get $19) + (local.get $15) ) ) (local.set $8 @@ -6529,8 +6500,8 @@ (local.get $5) (local.get $6) ) - (local.get $13) - (local.get $19) + (local.get $16) + (local.get $15) ) ) ) @@ -6542,7 +6513,7 @@ ) (local.set $6 (i32.load - (local.get $14) + (local.get $13) ) ) (loop $while-in125 @@ -6561,7 +6532,7 @@ (i32.lt_s (local.tee $7 (call $_wctomb - (local.get $35) + (local.get $33) (local.get $9) ) ) @@ -6601,7 +6572,7 @@ (i32.const 0) ) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L1) @@ -6610,7 +6581,7 @@ (call $_pad (local.get $0) (i32.const 32) - (local.get $16) + (local.get $17) (local.get $5) (local.get $12) ) @@ -6622,7 +6593,7 @@ ) (local.set $7 (i32.load - (local.get $14) + (local.get $13) ) ) (loop $while-in127 (result i32) @@ -6646,7 +6617,7 @@ (i32.add (local.tee $8 (call $_wctomb - (local.get $35) + (local.get $33) (local.get $8) ) ) @@ -6668,7 +6639,7 @@ ) (drop (call $___fwritex - (local.get $35) + (local.get $33) (local.get $8) (local.get $0) ) @@ -6703,10 +6674,10 @@ ) (local.set $10 (select - (local.get $16) + (local.get $17) (local.get $7) (i32.gt_s - (local.get $16) + (local.get $17) (local.get $7) ) ) @@ -6734,13 +6705,13 @@ (i32.or (i32.ne (i32.load - (local.get $14) + (local.get $13) ) (i32.const 0) ) (i32.ne (i32.load offset=4 - (local.get $14) + (local.get $13) ) (i32.const 0) ) @@ -6752,16 +6723,13 @@ (local.tee $5 (i32.add (i32.sub - (local.get $39) + (local.get $37) (local.tee $7 (local.get $5) ) ) (i32.xor - (i32.and - (local.get $11) - (i32.const 1) - ) + (local.get $11) (i32.const 1) ) ) @@ -6787,16 +6755,16 @@ (local.get $11) (i32.lt_s (local.get $11) - (local.get $13) + (local.get $16) ) ) ) (local.get $8) ) ) - (local.get $16) + (local.get $17) (i32.lt_s - (local.get $16) + (local.get $17) (local.get $5) ) ) @@ -6835,7 +6803,7 @@ (local.get $0) (i32.const 48) (local.get $11) - (local.get $13) + (local.get $16) (i32.const 0) ) (if @@ -6850,7 +6818,7 @@ (drop (call $___fwritex (local.get $7) - (local.get $13) + (local.get $16) (local.get $0) ) ) @@ -6880,7 +6848,7 @@ (i32.eqz (local.get $0) ) - (local.set $17 + (local.set $18 (if (result i32) (local.get $1) (block (result i32) @@ -6923,7 +6891,7 @@ (i32.const 10) ) ) - (local.set $17 + (local.set $18 (i32.const 1) ) (br $label$break$L343) @@ -6947,7 +6915,7 @@ ) ) (block - (local.set $17 + (local.set $18 (i32.const -1) ) (br $label$break$L343) @@ -6975,9 +6943,9 @@ ) ) (global.set $STACKTOP - (local.get $34) + (local.get $13) ) - (local.get $17) + (local.get $18) ) (func $_pop_arg_336 (; 45 ;) (type $10) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -7479,23 +7447,19 @@ (i32.const 48) ) ) - (local.set $1 + (local.set $0 (i32.div_u - (local.get $0) + (local.tee $1 + (local.get $0) + ) (i32.const 10) ) ) - (if + (br_if $while-in1 (i32.ge_u - (local.get $0) + (local.get $1) (i32.const 10) ) - (block - (local.set $0 - (local.get $1) - ) - (br $while-in1) - ) ) ) ) diff --git a/test/passes/ssa-nomerge.txt b/test/passes/ssa-nomerge.txt new file mode 100644 index 000000000..fbe9b0c76 --- /dev/null +++ b/test/passes/ssa-nomerge.txt @@ -0,0 +1,202 @@ +(module + (type $0 (func (param i32))) + (type $1 (func (param i32 i32))) + (global $global$0 (mut i32) (i32.const 1)) + (func $basics (; 0 ;) (type $0) (param $x i32) + (local $y i32) + (local $z f32) + (local $w i64) + (local $t f64) + (local $5 i32) + (local $6 f64) + (local $7 f64) + (drop + (local.get $x) + ) + (drop + (i32.const 0) + ) + (drop + (f32.const 0) + ) + (drop + (i64.const 0) + ) + (drop + (f64.const 0) + ) + (local.set $5 + (i32.const 100) + ) + (drop + (local.get $5) + ) + (local.set $6 + (f64.const 2) + ) + (drop + (local.get $6) + ) + (local.set $7 + (f64.const 33) + ) + (drop + (local.get $7) + ) + (drop + (local.get $7) + ) + ) + (func $if (; 1 ;) (type $0) (param $p i32) + (local $x i32) + (local $y i32) + (local $3 i32) + (drop + (if (result i32) + (i32.const 1) + (i32.const 0) + (i32.const 0) + ) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 1) + ) + ) + (drop + (local.get $x) + ) + (if + (i32.const 1) + (local.set $p + (i32.const 1) + ) + ) + (drop + (local.get $p) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 2) + ) + (nop) + ) + (drop + (local.get $x) + ) + (if + (i32.const 1) + (nop) + (local.set $x + (i32.const 3) + ) + ) + (drop + (local.get $x) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 4) + ) + (local.set $x + (i32.const 5) + ) + ) + (drop + (local.get $x) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 6) + ) + (block $block + (local.set $3 + (i32.const 7) + ) + (local.set $x + (i32.const 8) + ) + ) + ) + (drop + (local.get $x) + ) + ) + (func $if2 (; 2 ;) (type $0) (param $x i32) + (if + (i32.const 1) + (block $block + (local.set $x + (i32.const 1) + ) + (drop + (local.get $x) + ) + ) + ) + (drop + (local.get $x) + ) + ) + (func $nomerge (; 3 ;) (type $1) (param $p i32) (param $q i32) + (local $x i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local.set $3 + (i32.const 1) + ) + (call $nomerge + (local.get $3) + (local.get $3) + ) + (local.set $4 + (i32.const 2) + ) + (call $nomerge + (local.get $4) + (local.get $4) + ) + (local.set $x + (i32.const 3) + ) + (call $nomerge + (local.get $x) + (local.get $x) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 4) + ) + ) + (call $nomerge + (local.get $x) + (local.get $x) + ) + (local.set $5 + (i32.const 5) + ) + (call $nomerge + (local.get $5) + (local.get $5) + ) + (if + (i32.const 1) + (local.set $x + (i32.const 6) + ) + (local.set $x + (i32.const 7) + ) + ) + (call $nomerge + (local.get $x) + (local.get $x) + ) + ) +) diff --git a/test/passes/ssa-nomerge.wast b/test/passes/ssa-nomerge.wast new file mode 100644 index 000000000..dec7c89e5 --- /dev/null +++ b/test/passes/ssa-nomerge.wast @@ -0,0 +1,102 @@ +(module + (global $global$0 (mut i32) (i32.const 1)) + (func $basics (param $x i32) + (local $y i32) + (local $z f32) + (local $w i64) + (local $t f64) + (drop (local.get $x)) ;; keep as param get + (drop (local.get $y)) ;; turn into get of 0-init + (drop (local.get $z)) + (drop (local.get $w)) + (drop (local.get $t)) + (local.set $x (i32.const 100)) ;; overwrite param + (drop (local.get $x)) ;; no longer a param! + (local.set $t (f64.const 2)) ;; overwrite local + (drop (local.get $t)) + (local.set $t (f64.const 33)) ;; overwrite local AGAIN + (drop (local.get $t)) + (drop (local.get $t)) ;; use twice + ) + (func $if (param $p i32) + (local $x i32) + (local $y i32) + (drop + (if i32 + (i32.const 1) + (local.get $x) + (local.get $y) + ) + ) + (if + (i32.const 1) + (local.set $x (i32.const 1)) + ) + (drop (local.get $x)) + ;; same but with param + (if + (i32.const 1) + (local.set $p (i32.const 1)) + ) + (drop (local.get $p)) + ;; if-else + (if + (i32.const 1) + (local.set $x (i32.const 2)) + (nop) + ) + (drop (local.get $x)) + (if + (i32.const 1) + (nop) + (local.set $x (i32.const 3)) + ) + (drop (local.get $x)) + (if + (i32.const 1) + (local.set $x (i32.const 4)) + (local.set $x (i32.const 5)) + ) + (drop (local.get $x)) + (if + (i32.const 1) + (local.set $x (i32.const 6)) + (block + (local.set $x (i32.const 7)) + (local.set $x (i32.const 8)) + ) + ) + (drop (local.get $x)) + ) + (func $if2 (param $x i32) + (if + (i32.const 1) + (block + (local.set $x (i32.const 1)) + (drop (local.get $x)) ;; use between phi set and use + ) + ) + (drop (local.get $x)) + ) + (func $nomerge (param $p i32) (param $q i32) + (local $x i32) + (local.set $x (i32.const 1)) ;; untangle this + (call $nomerge (local.get $x) (local.get $x)) + (local.set $x (i32.const 2)) ;; and this + (call $nomerge (local.get $x) (local.get $x)) + (local.set $x (i32.const 3)) ;; but this reaches a merge later + (call $nomerge (local.get $x) (local.get $x)) + (if (i32.const 1) + (local.set $x (i32.const 4)) + ) + (call $nomerge (local.get $x) (local.get $x)) + (local.set $x (i32.const 5)) ;; this is good again + (call $nomerge (local.get $x) (local.get $x)) + (if (i32.const 1) + (local.set $x (i32.const 6)) ;; these merge, + (local.set $x (i32.const 7)) ;; so no + ) + (call $nomerge (local.get $x) (local.get $x)) + ) +) + diff --git a/test/passes/ssa.txt b/test/passes/ssa.txt index b4e874108..54a5cd757 100644 --- a/test/passes/ssa.txt +++ b/test/passes/ssa.txt @@ -442,10 +442,9 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) (local.set $3 - (local.tee $7 - (local.tee $6 + (local.tee $6 + (local.tee $5 (local.get $param) ) ) @@ -456,16 +455,16 @@ (i32.const 1) (br $stop) ) - (local.set $4 + (local.set $inc (i32.add - (local.get $6) + (local.get $5) (i32.const 1) ) ) - (local.set $5 - (local.tee $7 - (local.tee $6 - (local.get $4) + (local.set $4 + (local.tee $6 + (local.tee $5 + (local.get $inc) ) ) ) @@ -473,7 +472,7 @@ ) ) (drop - (local.get $7) + (local.get $6) ) ) (func $real-loop-outblock (; 9 ;) (type $0) (param $param i32) @@ -483,10 +482,9 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) (local.set $3 - (local.tee $7 - (local.tee $6 + (local.tee $6 + (local.tee $5 (local.get $param) ) ) @@ -497,16 +495,16 @@ (i32.const 1) (br $stop) ) - (local.set $4 + (local.set $inc (i32.add - (local.get $6) + (local.get $5) (i32.const 1) ) ) - (local.set $5 - (local.tee $7 - (local.tee $6 - (local.get $4) + (local.set $4 + (local.tee $6 + (local.tee $5 + (local.get $inc) ) ) ) @@ -514,7 +512,7 @@ ) ) (drop - (local.get $7) + (local.get $6) ) ) (func $loop-loop-param (; 10 ;) (type $0) (param $param i32) diff --git a/test/passes/ssa_fuzz-exec.txt b/test/passes/ssa_fuzz-exec.txt index b15ae5775..35499266e 100644 --- a/test/passes/ssa_fuzz-exec.txt +++ b/test/passes/ssa_fuzz-exec.txt @@ -16,11 +16,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 f64) (local $10 i32) - (local $11 f64) - (local $12 i32) - (local $13 i32) + (local $11 i32) (block $label$1 (result i32) (if (result i32) (i32.const 0) @@ -29,9 +27,9 @@ (loop $label$5 (block $label$6 (block $label$7 - (local.set $10 + (local.set $8 (if (result i32) - (local.get $12) + (local.get $10) (select (loop $label$9 (result i32) (if (result i32) @@ -44,7 +42,7 @@ ) (br_if $label$4 (i32.const 0) - (local.tee $6 + (local.tee $var$1 (local.tee $5 (block $label$12 (result i32) (br_if $label$5 @@ -62,13 +60,13 @@ (if (i32.const 0) (return - (local.get $13) + (local.get $11) ) ) (if - (local.tee $8 - (local.tee $7 - (local.tee $13 + (local.tee $var$1 + (local.tee $6 + (local.tee $11 (i32.const 0) ) ) @@ -81,9 +79,9 @@ ) (br_if $label$15 (i32.eqz - (local.tee $9 - (local.tee $13 - (local.tee $12 + (local.tee $7 + (local.tee $11 + (local.tee $10 (i32.const 129) ) ) @@ -98,10 +96,10 @@ ) (br_if $label$6 (if (result i32) - (local.get $8) + (local.get $var$1) (unreachable) (block $label$25 (result i32) - (local.set $11 + (local.set $9 (block $label$26 (result f64) (drop (br_if $label$4 diff --git a/test/threads.wasm-only.fromasm b/test/threads.wasm-only.fromasm index 87e3cd806..abe8312a7 100644 --- a/test/threads.wasm-only.fromasm +++ b/test/threads.wasm-only.fromasm @@ -8,7 +8,6 @@ (func $test64 (; 1 ;) (; has Stack IR ;) (result i64) (local $0 i64) (local $1 i64) - (local $2 i32) (i64.atomic.store (i32.const 4656) (i64.const 92) @@ -34,7 +33,7 @@ (i64.atomic.rmw.sub (i32.const 1024) (i64.atomic.rmw.add - (local.get $2) + (i32.const 0) (i64.const 26) ) ) diff --git a/test/threads.wasm-only.fromasm.clamp b/test/threads.wasm-only.fromasm.clamp index 87e3cd806..abe8312a7 100644 --- a/test/threads.wasm-only.fromasm.clamp +++ b/test/threads.wasm-only.fromasm.clamp @@ -8,7 +8,6 @@ (func $test64 (; 1 ;) (; has Stack IR ;) (result i64) (local $0 i64) (local $1 i64) - (local $2 i32) (i64.atomic.store (i32.const 4656) (i64.const 92) @@ -34,7 +33,7 @@ (i64.atomic.rmw.sub (i32.const 1024) (i64.atomic.rmw.add - (local.get $2) + (i32.const 0) (i64.const 26) ) ) diff --git a/test/threads.wasm-only.fromasm.imprecise b/test/threads.wasm-only.fromasm.imprecise index 4952b5021..9426be3eb 100644 --- a/test/threads.wasm-only.fromasm.imprecise +++ b/test/threads.wasm-only.fromasm.imprecise @@ -6,7 +6,6 @@ (func $test64 (; 1 ;) (; has Stack IR ;) (result i64) (local $0 i64) (local $1 i64) - (local $2 i32) (i64.atomic.store (i32.const 4656) (i64.const 92) @@ -32,7 +31,7 @@ (i64.atomic.rmw.sub (i32.const 1024) (i64.atomic.rmw.add - (local.get $2) + (i32.const 0) (i64.const 26) ) ) diff --git a/test/unit.fromasm b/test/unit.fromasm index 575013dbb..1c0954564 100644 --- a/test/unit.fromasm +++ b/test/unit.fromasm @@ -219,11 +219,8 @@ (f64.const -0) ) (func $neg (; 17 ;) (; has Stack IR ;) - (local $0 f32) (call_indirect (type $FUNCSIG$vf) - (f32.neg - (local.get $0) - ) + (f32.const -0) (i32.const 9) ) ) diff --git a/test/unit.fromasm.clamp b/test/unit.fromasm.clamp index 73fe3f4a1..654171c6a 100644 --- a/test/unit.fromasm.clamp +++ b/test/unit.fromasm.clamp @@ -271,11 +271,8 @@ (f64.const -0) ) (func $neg (; 18 ;) (; has Stack IR ;) - (local $0 f32) (call_indirect (type $FUNCSIG$vf) - (f32.neg - (local.get $0) - ) + (f32.const -0) (i32.const 9) ) ) diff --git a/test/unit.fromasm.imprecise b/test/unit.fromasm.imprecise index bf5a9ae22..fb55716e8 100644 --- a/test/unit.fromasm.imprecise +++ b/test/unit.fromasm.imprecise @@ -218,11 +218,8 @@ (f64.const -0) ) (func $neg (; 16 ;) (; has Stack IR ;) - (local $0 f32) (call_indirect (type $FUNCSIG$vf) - (f32.neg - (local.get $0) - ) + (f32.const -0) (i32.const 9) ) ) diff --git a/test/wasm-only.fromasm b/test/wasm-only.fromasm index 36611ca94..6eedc642a 100644 --- a/test/wasm-only.fromasm +++ b/test/wasm-only.fromasm @@ -132,96 +132,93 @@ ) ) (func $stores (; 7 ;) (; has Stack IR ;) - (local $0 i32) - (local $1 f64) - (local $2 f32) (i32.store8 (i32.const 100) - (local.get $0) + (i32.const 0) ) (i32.store8 (i32.const 101) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 102) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 103) - (local.get $0) + (i32.const 0) ) (i32.store16 align=1 (i32.const 104) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 105) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 106) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 107) - (local.get $0) + (i32.const 0) ) (i32.store align=1 (i32.const 108) - (local.get $0) + (i32.const 0) ) (i32.store align=2 (i32.const 109) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 110) - (local.get $0) + (i32.const 0) ) (f32.store (i32.const 111) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 112) - (local.get $2) + (f32.const 0) ) (f32.store align=1 (i32.const 113) - (local.get $2) + (f32.const 0) ) (f32.store align=2 (i32.const 114) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 115) - (local.get $2) + (f32.const 0) ) (f64.store (i32.const 116) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 117) - (local.get $1) + (f64.const 0) ) (f64.store align=1 (i32.const 118) - (local.get $1) + (f64.const 0) ) (f64.store align=2 (i32.const 119) - (local.get $1) + (f64.const 0) ) (f64.store align=4 (i32.const 120) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 121) - (local.get $1) + (f64.const 0) ) ) (func $i64s-div (; 8 ;) (; has Stack IR ;) (param $0 i64) (param $1 i64) (result i64) diff --git a/test/wasm-only.fromasm.clamp b/test/wasm-only.fromasm.clamp index 36611ca94..6eedc642a 100644 --- a/test/wasm-only.fromasm.clamp +++ b/test/wasm-only.fromasm.clamp @@ -132,96 +132,93 @@ ) ) (func $stores (; 7 ;) (; has Stack IR ;) - (local $0 i32) - (local $1 f64) - (local $2 f32) (i32.store8 (i32.const 100) - (local.get $0) + (i32.const 0) ) (i32.store8 (i32.const 101) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 102) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 103) - (local.get $0) + (i32.const 0) ) (i32.store16 align=1 (i32.const 104) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 105) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 106) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 107) - (local.get $0) + (i32.const 0) ) (i32.store align=1 (i32.const 108) - (local.get $0) + (i32.const 0) ) (i32.store align=2 (i32.const 109) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 110) - (local.get $0) + (i32.const 0) ) (f32.store (i32.const 111) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 112) - (local.get $2) + (f32.const 0) ) (f32.store align=1 (i32.const 113) - (local.get $2) + (f32.const 0) ) (f32.store align=2 (i32.const 114) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 115) - (local.get $2) + (f32.const 0) ) (f64.store (i32.const 116) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 117) - (local.get $1) + (f64.const 0) ) (f64.store align=1 (i32.const 118) - (local.get $1) + (f64.const 0) ) (f64.store align=2 (i32.const 119) - (local.get $1) + (f64.const 0) ) (f64.store align=4 (i32.const 120) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 121) - (local.get $1) + (f64.const 0) ) ) (func $i64s-div (; 8 ;) (; has Stack IR ;) (param $0 i64) (param $1 i64) (result i64) diff --git a/test/wasm-only.fromasm.imprecise b/test/wasm-only.fromasm.imprecise index 87e328ab1..38206b1bc 100644 --- a/test/wasm-only.fromasm.imprecise +++ b/test/wasm-only.fromasm.imprecise @@ -18,101 +18,97 @@ (export "illegalResult" (func $legalstub$illegalResult)) (export "keepAlive" (func $keepAlive)) (func $stores (; 6 ;) (; has Stack IR ;) - (local $0 i32) - (local $1 f64) - (local $2 f32) (i32.store8 (i32.const 100) - (local.get $0) + (i32.const 0) ) (i32.store8 (i32.const 101) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 102) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 103) - (local.get $0) + (i32.const 0) ) (i32.store16 align=1 (i32.const 104) - (local.get $0) + (i32.const 0) ) (i32.store16 (i32.const 105) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 106) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 107) - (local.get $0) + (i32.const 0) ) (i32.store align=1 (i32.const 108) - (local.get $0) + (i32.const 0) ) (i32.store align=2 (i32.const 109) - (local.get $0) + (i32.const 0) ) (i32.store (i32.const 110) - (local.get $0) + (i32.const 0) ) (f32.store (i32.const 111) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 112) - (local.get $2) + (f32.const 0) ) (f32.store align=1 (i32.const 113) - (local.get $2) + (f32.const 0) ) (f32.store align=2 (i32.const 114) - (local.get $2) + (f32.const 0) ) (f32.store (i32.const 115) - (local.get $2) + (f32.const 0) ) (f64.store (i32.const 116) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 117) - (local.get $1) + (f64.const 0) ) (f64.store align=1 (i32.const 118) - (local.get $1) + (f64.const 0) ) (f64.store align=2 (i32.const 119) - (local.get $1) + (f64.const 0) ) (f64.store align=4 (i32.const 120) - (local.get $1) + (f64.const 0) ) (f64.store (i32.const 121) - (local.get $1) + (f64.const 0) ) ) (func $test64 (; 7 ;) (; has Stack IR ;) (local $0 i64) - (local $1 i32) (i64.store (i32.const 120) (local.tee $0 @@ -137,11 +133,6 @@ (i32.const 120) (local.get $0) ) - (local.set $1 - (i32.wrap_i64 - (local.get $0) - ) - ) ) (func $imports (; 8 ;) (; has Stack IR ;) (call $legalfunc$illegalImport |