summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/passes/SSAify.cpp57
-rw-r--r--src/passes/pass.cpp6
-rw-r--r--src/passes/passes.h1
-rw-r--r--test/debugInfo.fromasm41
-rw-r--r--test/debugInfo.fromasm.clamp41
-rw-r--r--test/debugInfo.fromasm.clamp.map2
-rw-r--r--test/debugInfo.fromasm.imprecise35
-rw-r--r--test/debugInfo.fromasm.imprecise.map2
-rw-r--r--test/debugInfo.fromasm.map2
-rw-r--r--test/debugInfo.fromasm.read-written41
-rw-r--r--test/emcc_O2_hello_world.fromasm8415
-rw-r--r--test/emcc_O2_hello_world.fromasm.clamp8415
-rw-r--r--test/emcc_O2_hello_world.fromasm.imprecise8414
-rw-r--r--test/emcc_hello_world.fromasm1000
-rw-r--r--test/emcc_hello_world.fromasm.clamp1000
-rw-r--r--test/emcc_hello_world.fromasm.imprecise1000
-rw-r--r--test/memorygrowth.fromasm9608
-rw-r--r--test/memorygrowth.fromasm.clamp9608
-rw-r--r--test/memorygrowth.fromasm.imprecise9617
-rw-r--r--test/passes/O3_low-memory-unused_metrics.txt318
-rw-r--r--test/passes/O4.txt158
-rw-r--r--test/passes/Oz.txt8
-rw-r--r--test/passes/inlining-optimizing_optimize-level=3.txt840
-rw-r--r--test/passes/ssa-nomerge.txt202
-rw-r--r--test/passes/ssa-nomerge.wast102
-rw-r--r--test/passes/ssa.txt38
-rw-r--r--test/passes/ssa_fuzz-exec.txt30
-rw-r--r--test/threads.wasm-only.fromasm3
-rw-r--r--test/threads.wasm-only.fromasm.clamp3
-rw-r--r--test/threads.wasm-only.fromasm.imprecise3
-rw-r--r--test/unit.fromasm5
-rw-r--r--test/unit.fromasm.clamp5
-rw-r--r--test/unit.fromasm.imprecise5
-rw-r--r--test/wasm-only.fromasm47
-rw-r--r--test/wasm-only.fromasm.clamp47
-rw-r--r--test/wasm-only.fromasm.imprecise53
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