summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2018-05-01 08:25:45 -0700
committerGitHub <noreply@github.com>2018-05-01 08:25:45 -0700
commit1bd0b00d54d9863449d357db7f390a24437bc537 (patch)
tree0e065185054cdd5b2966aa75a7524d2acced8a46
parente020f4a2cb44fcbfd56c95a4a097f08cddc8367e (diff)
downloadbinaryen-1bd0b00d54d9863449d357db7f390a24437bc537.tar.gz
binaryen-1bd0b00d54d9863449d357db7f390a24437bc537.tar.bz2
binaryen-1bd0b00d54d9863449d357db7f390a24437bc537.zip
More simplify-locals opts (#1526)
* Use an if return value when one side is unreachable. * Undo an if return value if we can use a br_if instead
-rw-r--r--src/asm2wasm.h1
-rw-r--r--src/passes/RemoveUnusedBrs.cpp52
-rw-r--r--src/passes/SimplifyLocals.cpp85
-rw-r--r--test/debugInfo.fromasm35
-rw-r--r--test/debugInfo.fromasm.clamp35
-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/emcc_O2_hello_world.fromasm5716
-rw-r--r--test/emcc_O2_hello_world.fromasm.clamp5716
-rw-r--r--test/emcc_O2_hello_world.fromasm.imprecise5718
-rw-r--r--test/emcc_hello_world.fromasm6105
-rw-r--r--test/emcc_hello_world.fromasm.clamp6105
-rw-r--r--test/emcc_hello_world.fromasm.imprecise6107
-rw-r--r--test/memorygrowth.fromasm7201
-rw-r--r--test/memorygrowth.fromasm.clamp7201
-rw-r--r--test/memorygrowth.fromasm.imprecise7201
-rw-r--r--test/passes/inlining-optimizing_optimize-level=3.txt5994
-rw-r--r--test/passes/remove-unused-brs.txt31
-rw-r--r--test/passes/remove-unused-brs.wast27
-rw-r--r--test/passes/simplify-locals.txt107
-rw-r--r--test/passes/simplify-locals.wast91
23 files changed, 31855 insertions, 31714 deletions
diff --git a/src/asm2wasm.h b/src/asm2wasm.h
index fdbafc413..4ee09aca5 100644
--- a/src/asm2wasm.h
+++ b/src/asm2wasm.h
@@ -1450,6 +1450,7 @@ void Asm2WasmBuilder::processAsm(Ref ast) {
// autodrop can add some garbage
passRunner.add("vacuum");
passRunner.add("remove-unused-brs");
+ passRunner.add("merge-blocks");
passRunner.add("optimize-instructions");
passRunner.add("post-emscripten");
} else {
diff --git a/src/passes/RemoveUnusedBrs.cpp b/src/passes/RemoveUnusedBrs.cpp
index 9f753024d..c8c2277dc 100644
--- a/src/passes/RemoveUnusedBrs.cpp
+++ b/src/passes/RemoveUnusedBrs.cpp
@@ -276,6 +276,8 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs>> {
}
}
// TODO: if-else can be turned into a br_if as well, if one of the sides is a dead end
+ // we handle the case of a returned value to a set_local later down, see
+ // visitSetLocal.
}
// override scan to add a pre and a post check task to all nodes
@@ -661,6 +663,56 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs>> {
}
}
+ void visitSetLocal(SetLocal* curr) {
+ // Undo an if return value into a local, if one arm is a br, as we
+ // prefer a br_if:
+ // (set_local $x
+ // (if (result i32)
+ // (..condition..)
+ // (br $somewhere)
+ // (..result)
+ // )
+ // )
+ // =>
+ // (br_if $somewhere
+ // (..condition..)
+ // )
+ // (set_local $x
+ // (..result)
+ // )
+ // TODO: handle a condition in the br? need to watch for side effects
+ auto* iff = curr->value->dynCast<If>();
+ if (!iff) return;
+ if (!isConcreteType(iff->type)) return;
+ auto tryToOptimize = [&](Expression* one, Expression* two, bool flipCondition) {
+ if (one->type == unreachable && two->type != unreachable) {
+ if (auto* br = one->dynCast<Break>()) {
+ if (ExpressionAnalyzer::isSimple(br)) {
+ // Wonderful, do it!
+ Builder builder(*getModule());
+ br->condition = iff->condition;
+ if (flipCondition) {
+ br->condition = builder.makeUnary(EqZInt32, br->condition);
+ }
+ br->finalize();
+ curr->value = two;
+ replaceCurrent(
+ builder.makeSequence(
+ br,
+ curr
+ )
+ );
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+ if (!tryToOptimize(iff->ifTrue, iff->ifFalse, false)) {
+ tryToOptimize(iff->ifFalse, iff->ifTrue, true);
+ }
+ }
+
// (br_if)+ => br_table
// we look for the specific pattern of
// (br_if ..target1..
diff --git a/src/passes/SimplifyLocals.cpp b/src/passes/SimplifyLocals.cpp
index 4db85eb3e..6c1ea3fcb 100644
--- a/src/passes/SimplifyLocals.cpp
+++ b/src/passes/SimplifyLocals.cpp
@@ -456,16 +456,46 @@ struct SimplifyLocals : public WalkerPass<LinearExecutionWalker<SimplifyLocals<a
// if this if already has a result, or is unreachable code, we have
// nothing to do
if (iff->type != none) return;
- // We now have the sinkables from both sides of the if.
+ // We now have the sinkables from both sides of the if, and can look
+ // for something to sink. That is either a shared index on both sides,
+ // *or* if one side is unreachable, we can sink anything from the other,
+ // (if
+ // (..)
+ // (br $x)
+ // (set_local $y (..))
+ // )
+ // =>
+ // (set_local $y
+ // (if (result i32)
+ // (..)
+ // (br $x)
+ // (..)
+ // )
+ // )
Sinkables& ifFalse = sinkables;
- Index sharedIndex = -1;
+ Index goodIndex = -1;
bool found = false;
- for (auto& sinkable : ifTrue) {
- Index index = sinkable.first;
- if (ifFalse.count(index) > 0) {
- sharedIndex = index;
+ if (iff->ifTrue->type == unreachable) {
+ assert(iff->ifFalse->type != unreachable); // since the if type is none
+ if (!ifFalse.empty()) {
+ goodIndex = ifFalse.begin()->first;
found = true;
- break;
+ }
+ } else if (iff->ifFalse->type == unreachable) {
+ assert(iff->ifTrue->type != unreachable); // since the if type is none
+ if (!ifTrue.empty()) {
+ goodIndex = ifTrue.begin()->first;
+ found = true;
+ }
+ } else {
+ // Look for a shared index.
+ for (auto& sinkable : ifTrue) {
+ Index index = sinkable.first;
+ if (ifFalse.count(index) > 0) {
+ goodIndex = index;
+ found = true;
+ break;
+ }
}
}
if (!found) return;
@@ -473,27 +503,38 @@ struct SimplifyLocals : public WalkerPass<LinearExecutionWalker<SimplifyLocals<a
// ensure we have a place to write the return values for, if not, we
// need another cycle
auto* ifTrueBlock = iff->ifTrue->dynCast<Block>();
+ if (iff->ifTrue->type != unreachable) {
+ if (!ifTrueBlock || ifTrueBlock->list.size() == 0 || !ifTrueBlock->list.back()->is<Nop>()) {
+ ifsToEnlarge.push_back(iff);
+ return;
+ }
+ }
auto* ifFalseBlock = iff->ifFalse->dynCast<Block>();
- if (!ifTrueBlock || ifTrueBlock->list.size() == 0 || !ifTrueBlock->list.back()->is<Nop>() ||
- !ifFalseBlock || ifFalseBlock->list.size() == 0 || !ifFalseBlock->list.back()->is<Nop>()) {
- ifsToEnlarge.push_back(iff);
- return;
+ if (iff->ifFalse->type != unreachable) {
+ if (!ifFalseBlock || ifFalseBlock->list.size() == 0 || !ifFalseBlock->list.back()->is<Nop>()) {
+ ifsToEnlarge.push_back(iff);
+ return;
+ }
}
// all set, go
- auto *ifTrueItem = ifTrue.at(sharedIndex).item;
- ifTrueBlock->list[ifTrueBlock->list.size() - 1] = (*ifTrueItem)->template cast<SetLocal>()->value;
- ExpressionManipulator::nop(*ifTrueItem);
- ifTrueBlock->finalize();
- assert(ifTrueBlock->type != none);
- auto *ifFalseItem = ifFalse.at(sharedIndex).item;
- ifFalseBlock->list[ifFalseBlock->list.size() - 1] = (*ifFalseItem)->template cast<SetLocal>()->value;
- ExpressionManipulator::nop(*ifFalseItem);
- ifFalseBlock->finalize();
- assert(ifTrueBlock->type != none);
+ if (iff->ifTrue->type != unreachable) {
+ auto *ifTrueItem = ifTrue.at(goodIndex).item;
+ ifTrueBlock->list[ifTrueBlock->list.size() - 1] = (*ifTrueItem)->template cast<SetLocal>()->value;
+ ExpressionManipulator::nop(*ifTrueItem);
+ ifTrueBlock->finalize();
+ assert(ifTrueBlock->type != none);
+ }
+ if (iff->ifFalse->type != unreachable) {
+ auto *ifFalseItem = ifFalse.at(goodIndex).item;
+ ifFalseBlock->list[ifFalseBlock->list.size() - 1] = (*ifFalseItem)->template cast<SetLocal>()->value;
+ ExpressionManipulator::nop(*ifFalseItem);
+ ifFalseBlock->finalize();
+ assert(ifFalseBlock->type != none);
+ }
iff->finalize(); // update type
assert(iff->type != none);
// finally, create a set_local on the iff itself
- auto* newSetLocal = Builder(*this->getModule()).makeSetLocal(sharedIndex, iff);
+ auto* newSetLocal = Builder(*this->getModule()).makeSetLocal(goodIndex, iff);
*currp = newSetLocal;
anotherCycle = true;
}
diff --git a/test/debugInfo.fromasm b/test/debugInfo.fromasm
index ae7751ed9..0f104af84 100644
--- a/test/debugInfo.fromasm
+++ b/test/debugInfo.fromasm
@@ -68,22 +68,27 @@
(local $2 i32)
(local $3 i32)
(local $4 i32)
- (if
- ;;@ fib.c:3:0
- (i32.gt_s
- (get_local $0)
- (i32.const 0)
- )
- (set_local $3
- (i32.const 1)
- )
- (block
- (set_local $1
- (i32.const 1)
+ (set_local $4
+ (if (result i32)
+ ;;@ fib.c:3:0
+ (i32.gt_s
+ (get_local $0)
+ (i32.const 0)
)
- ;;@ fib.c:8:0
- (return
- (get_local $1)
+ (block (result i32)
+ (set_local $3
+ (i32.const 1)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $1
+ (i32.const 1)
+ )
+ ;;@ fib.c:8:0
+ (return
+ (get_local $1)
+ )
)
)
)
diff --git a/test/debugInfo.fromasm.clamp b/test/debugInfo.fromasm.clamp
index ae7751ed9..0f104af84 100644
--- a/test/debugInfo.fromasm.clamp
+++ b/test/debugInfo.fromasm.clamp
@@ -68,22 +68,27 @@
(local $2 i32)
(local $3 i32)
(local $4 i32)
- (if
- ;;@ fib.c:3:0
- (i32.gt_s
- (get_local $0)
- (i32.const 0)
- )
- (set_local $3
- (i32.const 1)
- )
- (block
- (set_local $1
- (i32.const 1)
+ (set_local $4
+ (if (result i32)
+ ;;@ fib.c:3:0
+ (i32.gt_s
+ (get_local $0)
+ (i32.const 0)
)
- ;;@ fib.c:8:0
- (return
- (get_local $1)
+ (block (result i32)
+ (set_local $3
+ (i32.const 1)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $1
+ (i32.const 1)
+ )
+ ;;@ fib.c:8:0
+ (return
+ (get_local $1)
+ )
)
)
)
diff --git a/test/debugInfo.fromasm.clamp.map b/test/debugInfo.fromasm.clamp.map
index d1d7b8eb0..c16ed9483 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":"0IC8ylTA,QC7vlTA,OAkDA,wBCnGA,OACA,OACA,cCAA,gBAKA,MAJA,OADA,0BAKA,wECsi1DA,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":"0IC8ylTA,QC7vlTA,OAkDA,wBCnGA,OACA,OACA,cCAA,kBAKA,QAJA,OADA,0BAKA,wECsi1DA,KCrvyDA"} \ No newline at end of file
diff --git a/test/debugInfo.fromasm.imprecise b/test/debugInfo.fromasm.imprecise
index e75f6c668..9cad26249 100644
--- a/test/debugInfo.fromasm.imprecise
+++ b/test/debugInfo.fromasm.imprecise
@@ -55,22 +55,27 @@
(local $2 i32)
(local $3 i32)
(local $4 i32)
- (if
- ;;@ fib.c:3:0
- (i32.gt_s
- (get_local $0)
- (i32.const 0)
- )
- (set_local $3
- (i32.const 1)
- )
- (block
- (set_local $1
- (i32.const 1)
+ (set_local $4
+ (if (result i32)
+ ;;@ fib.c:3:0
+ (i32.gt_s
+ (get_local $0)
+ (i32.const 0)
)
- ;;@ fib.c:8:0
- (return
- (get_local $1)
+ (block (result i32)
+ (set_local $3
+ (i32.const 1)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $1
+ (i32.const 1)
+ )
+ ;;@ fib.c:8:0
+ (return
+ (get_local $1)
+ )
)
)
)
diff --git a/test/debugInfo.fromasm.imprecise.map b/test/debugInfo.fromasm.imprecise.map
index f13c4d08e..f70ea494b 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":"mGC8ylTA,QC7vlTA,OAkDA,QCnGA,OACA,OACA,aCAA,gBAKA,MAJA,OADA,0BAKA,wECsi1DA,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":"mGC8ylTA,QC7vlTA,OAkDA,QCnGA,OACA,OACA,aCAA,kBAKA,QAJA,OADA,0BAKA,wECsi1DA,KCrvyDA"} \ No newline at end of file
diff --git a/test/debugInfo.fromasm.map b/test/debugInfo.fromasm.map
index d1d7b8eb0..c16ed9483 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":"0IC8ylTA,QC7vlTA,OAkDA,wBCnGA,OACA,OACA,cCAA,gBAKA,MAJA,OADA,0BAKA,wECsi1DA,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":"0IC8ylTA,QC7vlTA,OAkDA,wBCnGA,OACA,OACA,cCAA,kBAKA,QAJA,OADA,0BAKA,wECsi1DA,KCrvyDA"} \ No newline at end of file
diff --git a/test/emcc_O2_hello_world.fromasm b/test/emcc_O2_hello_world.fromasm
index 6a2b31eb9..271013c8f 100644
--- a/test/emcc_O2_hello_world.fromasm
+++ b/test/emcc_O2_hello_world.fromasm
@@ -120,9 +120,9 @@
(i32.const 176)
)
)
- (tee_local $6
+ (tee_local $5
(i32.shr_u
- (tee_local $9
+ (tee_local $10
(select
(i32.const 16)
(i32.and
@@ -152,12 +152,12 @@
(i32.add
(tee_local $0
(i32.load
- (tee_local $5
+ (tee_local $6
(i32.add
(tee_local $1
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.xor
(i32.and
@@ -166,7 +166,7 @@
)
(i32.const 1)
)
- (get_local $6)
+ (get_local $5)
)
)
(i32.const 3)
@@ -202,7 +202,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 12)
@@ -213,11 +213,11 @@
)
(block
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $1)
)
(i32.store
- (get_local $5)
+ (get_local $6)
(get_local $2)
)
)
@@ -231,7 +231,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
@@ -243,7 +243,7 @@
(i32.or
(tee_local $2
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
)
@@ -251,7 +251,7 @@
)
)
(i32.store
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.add
(get_local $0)
@@ -262,7 +262,7 @@
)
(i32.or
(i32.load
- (get_local $5)
+ (get_local $6)
)
(i32.const 1)
)
@@ -274,8 +274,8 @@
)
(if
(i32.gt_u
- (get_local $9)
- (tee_local $5
+ (get_local $10)
+ (tee_local $6
(i32.load
(i32.const 184)
)
@@ -295,13 +295,13 @@
(i32.and
(i32.shl
(get_local $2)
- (get_local $6)
+ (get_local $5)
)
(i32.or
(tee_local $2
(i32.shl
(i32.const 2)
- (get_local $6)
+ (get_local $5)
)
)
(i32.sub
@@ -326,7 +326,7 @@
)
(set_local $1
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(tee_local $0
(i32.load
@@ -335,7 +335,7 @@
(tee_local $11
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.or
(i32.or
@@ -344,7 +344,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -357,12 +357,12 @@
)
(get_local $1)
)
- (tee_local $7
+ (tee_local $8
(i32.and
(i32.shr_u
(tee_local $0
(i32.shr_u
- (get_local $7)
+ (get_local $8)
(get_local $2)
)
)
@@ -378,7 +378,7 @@
(tee_local $11
(i32.shr_u
(get_local $0)
- (get_local $7)
+ (get_local $8)
)
)
(i32.const 1)
@@ -476,21 +476,21 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
)
)
(set_local $17
- (get_local $5)
+ (get_local $6)
)
)
)
(i32.store offset=4
(get_local $0)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -498,17 +498,17 @@
(tee_local $15
(i32.add
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
)
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.sub
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 1)
@@ -517,9 +517,9 @@
(i32.store
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
- (get_local $5)
+ (get_local $6)
)
(if
(get_local $17)
@@ -545,7 +545,7 @@
)
(if
(i32.and
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 176)
)
@@ -587,7 +587,7 @@
(i32.store
(i32.const 176)
(i32.or
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -622,14 +622,14 @@
)
(i32.store
(i32.const 184)
- (get_local $5)
+ (get_local $6)
)
(i32.store
(i32.const 196)
(get_local $15)
)
(return
- (get_local $7)
+ (get_local $8)
)
)
)
@@ -643,7 +643,7 @@
(set_local $15
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.and
(get_local $15)
@@ -672,12 +672,12 @@
(i32.or
(i32.or
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.and
(i32.shr_u
(tee_local $11
(i32.shr_u
- (get_local $5)
+ (get_local $6)
(get_local $15)
)
)
@@ -694,7 +694,7 @@
(tee_local $1
(i32.shr_u
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 2)
@@ -721,7 +721,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $6
+ (tee_local $5
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -734,7 +734,7 @@
)
)
(i32.shr_u
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -745,10 +745,10 @@
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
- (set_local $6
+ (set_local $5
(get_local $17)
)
(set_local $1
@@ -756,46 +756,43 @@
)
(loop $while-in
(block $while-out
- (if
- (tee_local $17
- (i32.load offset=16
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $17)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $11)
- )
- (block
- (set_local $8
- (get_local $2)
- )
- (set_local $3
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
(set_local $11
(i32.lt_u
(tee_local $17
(i32.sub
(i32.and
(i32.load offset=4
- (get_local $0)
+ (tee_local $0
+ (if (result i32)
+ (tee_local $17
+ (i32.load offset=16
+ (get_local $5)
+ )
+ )
+ (get_local $17)
+ (if (result i32)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
+ (get_local $11)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
(get_local $2)
@@ -808,7 +805,7 @@
(get_local $11)
)
)
- (set_local $6
+ (set_local $5
(get_local $0)
)
(set_local $1
@@ -835,10 +832,10 @@
(if
(i32.ge_u
(get_local $3)
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -852,7 +849,7 @@
(block $do-once4
(if
(i32.eq
- (tee_local $7
+ (tee_local $8
(i32.load offset=12
(get_local $3)
)
@@ -860,45 +857,43 @@
(get_local $3)
)
(block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
+ (set_local $6
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $10)
- )
- (set_local $5
+ (block (result i32)
+ (set_local $17
+ (get_local $9)
+ )
(get_local $0)
)
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $11
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
)
)
)
- )
- (set_local $5
(get_local $11)
+ (br $do-once4)
)
- (br $do-once4)
)
)
(loop $while-in7
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -910,16 +905,16 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
)
)
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -931,9 +926,9 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
@@ -942,13 +937,13 @@
)
(if
(i32.lt_u
- (get_local $5)
+ (get_local $6)
(get_local $1)
)
(call $_abort)
(block
(i32.store
- (get_local $5)
+ (get_local $6)
(i32.const 0)
)
(set_local $19
@@ -972,7 +967,7 @@
(if
(i32.ne
(i32.load
- (tee_local $10
+ (tee_local $9
(i32.add
(get_local $0)
(i32.const 12)
@@ -988,7 +983,7 @@
(i32.load
(tee_local $11
(i32.add
- (get_local $7)
+ (get_local $8)
(i32.const 8)
)
)
@@ -997,15 +992,15 @@
)
(block
(i32.store
- (get_local $10)
- (get_local $7)
+ (get_local $9)
+ (get_local $8)
)
(i32.store
(get_local $11)
(get_local $0)
)
(set_local $19
- (get_local $7)
+ (get_local $8)
)
)
(call $_abort)
@@ -1024,7 +1019,7 @@
(tee_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.load offset=28
(get_local $3)
)
@@ -1055,7 +1050,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
(i32.const -1)
)
@@ -1078,7 +1073,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 16)
@@ -1088,7 +1083,7 @@
(get_local $3)
)
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $19)
)
(i32.store offset=20
@@ -1106,7 +1101,7 @@
(if
(i32.lt_u
(get_local $19)
- (tee_local $7
+ (tee_local $8
(i32.load
(i32.const 192)
)
@@ -1127,7 +1122,7 @@
(if
(i32.lt_u
(get_local $1)
- (get_local $7)
+ (get_local $8)
)
(call $_abort)
(block
@@ -1173,7 +1168,7 @@
)
(if
(i32.lt_u
- (get_local $8)
+ (get_local $7)
(i32.const 16)
)
(block
@@ -1182,8 +1177,8 @@
(i32.or
(tee_local $2
(i32.add
- (get_local $8)
- (get_local $9)
+ (get_local $7)
+ (get_local $10)
)
)
(i32.const 3)
@@ -1211,23 +1206,23 @@
(i32.store offset=4
(get_local $3)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
(i32.store offset=4
- (get_local $6)
+ (get_local $5)
(i32.or
- (get_local $8)
+ (get_local $7)
(i32.const 1)
)
)
(i32.store
(i32.add
- (get_local $6)
- (get_local $8)
+ (get_local $5)
+ (get_local $7)
)
- (get_local $8)
+ (get_local $7)
)
(if
(tee_local $1
@@ -1244,7 +1239,7 @@
(set_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $1)
(i32.const 3)
@@ -1265,15 +1260,15 @@
(tee_local $11
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
)
)
(if
(i32.lt_u
- (tee_local $10
+ (tee_local $9
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $1)
(i32.const 8)
@@ -1288,10 +1283,10 @@
(call $_abort)
(block
(set_local $39
- (get_local $7)
+ (get_local $8)
)
(set_local $32
- (get_local $10)
+ (get_local $9)
)
)
)
@@ -1334,11 +1329,11 @@
)
(i32.store
(i32.const 184)
- (get_local $8)
+ (get_local $7)
)
(i32.store
(i32.const 196)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -1353,246 +1348,248 @@
)
)
)
- (if
- (i32.le_u
- (get_local $0)
- (i32.const -65)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
- )
- )
- (i32.const -8)
- )
+ (set_local $10
+ (if (result i32)
+ (i32.le_u
+ (get_local $0)
+ (i32.const -65)
)
- (if
- (tee_local $11
- (i32.load
- (i32.const 180)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ )
+ (i32.const -8)
)
)
- (block
- (set_local $0
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (i32.const 180)
)
)
- (block $label$break$L123
- (if
- (tee_local $15
- (i32.load offset=480
- (i32.shl
- (tee_local $9
- (if (result i32)
- (tee_local $10
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $0
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
+ )
+ (block $label$break$L123
+ (if
+ (tee_local $15
+ (i32.load offset=480
+ (i32.shl
+ (tee_local $10
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $9
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $15
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $15
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $7
- (i32.shl
- (get_local $10)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $10)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $8
+ (i32.shl
+ (get_local $9)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $9)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $17
- (i32.shl
- (get_local $7)
- (get_local $10)
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $17
+ (i32.shl
+ (get_local $8)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $17)
- (get_local $7)
+ (i32.shr_u
+ (i32.shl
+ (get_local $17)
+ (get_local $8)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $15)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
)
)
- )
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $17
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $9)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $9)
- (i32.const 31)
- )
- )
+ (block
+ (set_local $8
+ (get_local $0)
)
- )
- (set_local $10
- (get_local $15)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $0
+ (set_local $17
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
(i32.sub
- (tee_local $19
- (i32.and
- (i32.load offset=4
- (get_local $10)
- )
- (i32.const -8)
- )
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $10)
+ (i32.const 1)
)
- (get_local $2)
+ )
+ (i32.eq
+ (get_local $10)
+ (i32.const 31)
)
)
- (get_local $7)
)
+ )
+ (set_local $9
+ (get_local $15)
+ )
+ (loop $while-in14
(if
- (i32.eq
- (get_local $19)
- (get_local $2)
- )
- (block
- (set_local $27
- (get_local $0)
- )
- (set_local $25
- (get_local $10)
- )
- (set_local $29
- (get_local $10)
- )
- (set_local $7
- (i32.const 90)
+ (i32.lt_u
+ (tee_local $0
+ (i32.sub
+ (tee_local $19
+ (i32.and
+ (i32.load offset=4
+ (get_local $9)
+ )
+ (i32.const -8)
+ )
+ )
+ (get_local $2)
+ )
)
- (br $label$break$L123)
+ (get_local $8)
)
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $5
- (get_local $10)
+ (set_local $6
+ (if (result i32)
+ (i32.eq
+ (get_local $19)
+ (get_local $2)
+ )
+ (block
+ (set_local $27
+ (get_local $0)
+ )
+ (set_local $25
+ (get_local $9)
+ )
+ (set_local $29
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
+ (br $label$break$L123)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $0)
+ )
+ (get_local $9)
+ )
)
)
)
- )
- (set_local $19
- (select
- (get_local $17)
- (tee_local $0
- (i32.load offset=20
- (get_local $10)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $0)
+ (set_local $19
+ (select
+ (get_local $17)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $9)
+ )
)
- (i32.eq
- (get_local $0)
- (tee_local $10
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $0)
+ )
+ (i32.eq
+ (get_local $0)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $10)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1600,1198 +1597,1189 @@
)
)
)
- )
- (if
- (tee_local $0
- (i32.eqz
- (get_local $10)
- )
- )
- (block
- (set_local $33
- (get_local $7)
- )
- (set_local $6
- (get_local $19)
- )
- (set_local $30
- (get_local $5)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $17
- (get_local $19)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $0)
- (i32.const 1)
+ (set_local $5
+ (if (result i32)
+ (tee_local $0
+ (i32.eqz
+ (get_local $9)
+ )
+ )
+ (block (result i32)
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $30
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
+ (get_local $19)
+ )
+ (block
+ (set_local $17
+ (get_local $19)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $0)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $33
- (get_local $0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $33
+ (get_local $0)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
- (block
- (if
- (i32.eqz
- (i32.or
- (get_local $6)
- (get_local $30)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 86)
+ )
+ (block
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $5)
+ (get_local $30)
+ )
)
- )
- (block
- (if
- (i32.eqz
- (tee_local $0
- (i32.and
- (get_local $11)
- (i32.or
- (tee_local $15
- (i32.shl
- (i32.const 2)
- (get_local $9)
+ (block
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.and
+ (get_local $11)
+ (i32.or
+ (tee_local $15
+ (i32.shl
+ (i32.const 2)
+ (get_local $10)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $15)
)
)
)
)
- )
- (block
- (set_local $9
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $0
- (i32.and
- (i32.shr_u
- (tee_local $15
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (set_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $15
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $6
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $5
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $15
+ (i32.or
+ (tee_local $15
+ (i32.and
+ (i32.shr_u
+ (tee_local $10
+ (i32.shr_u
+ (get_local $15)
+ (get_local $0)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $0)
+ )
+ (tee_local $10
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $5
(i32.shr_u
+ (get_local $10)
(get_local $15)
- (get_local $0)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $0)
)
- (tee_local $9
+ (tee_local $5
(i32.and
(i32.shr_u
(tee_local $6
(i32.shr_u
- (get_local $9)
- (get_local $15)
+ (get_local $5)
+ (get_local $10)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
(tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $1
(i32.shr_u
(get_local $6)
- (get_local $9)
+ (get_local $5)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $5
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (get_local $6)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $6)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $5)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $27
- (get_local $33)
- )
- (set_local $25
- (get_local $6)
- )
- (set_local $29
- (get_local $30)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $3
- (get_local $33)
+ (if
+ (get_local $5)
+ (block
+ (set_local $27
+ (get_local $33)
+ )
+ (set_local $25
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $30)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
)
- (set_local $12
- (get_local $30)
+ (block
+ (set_local $3
+ (get_local $33)
+ )
+ (set_local $12
+ (get_local $30)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $5
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $25)
+ (loop $while-in16
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $6
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $25)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
- )
- (get_local $27)
- )
- )
- (set_local $6
- (select
- (get_local $5)
- (get_local $27)
- (get_local $1)
- )
- )
- (set_local $5
- (select
- (get_local $25)
- (get_local $29)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $25)
+ (get_local $27)
)
)
- (block
- (set_local $27
+ (set_local $5
+ (select
(get_local $6)
- )
- (set_local $25
+ (get_local $27)
(get_local $1)
)
- (set_local $29
- (get_local $5)
- )
- (br $while-in16)
)
- )
- (if
- (tee_local $25
- (i32.load offset=20
+ (set_local $6
+ (select
(get_local $25)
+ (get_local $29)
+ (get_local $1)
)
)
- (block
- (set_local $27
- (get_local $6)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $25)
+ )
)
- (set_local $29
- (get_local $5)
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $25
+ (get_local $1)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- (block
- (set_local $3
- (get_local $6)
- )
- (set_local $12
- (get_local $5)
+ (set_local $3
+ (if (result i32)
+ (tee_local $25
+ (i32.load offset=20
+ (get_local $25)
+ )
+ )
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $12
+ (get_local $6)
+ )
+ (get_local $5)
+ )
)
)
)
)
- )
- (if
(if (result i32)
- (get_local $12)
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (get_local $2)
- )
- )
- (i32.const 0)
- )
- (block
- (if
+ (if (result i32)
+ (get_local $12)
(i32.lt_u
- (get_local $12)
- (tee_local $11
+ (get_local $3)
+ (i32.sub
(i32.load
- (i32.const 192)
+ (i32.const 184)
)
+ (get_local $2)
)
)
- (call $_abort)
+ (i32.const 0)
)
- (if
- (i32.ge_u
- (get_local $12)
- (tee_local $5
- (i32.add
- (get_local $12)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $11
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $6
- (i32.load offset=24
- (get_local $12)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $12)
+ (tee_local $6
+ (i32.add
(get_local $12)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $12)
)
- (block
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $12)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $17
- (get_local $0)
- )
- (set_local $1
- (get_local $9)
- )
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $12)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $15)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $12)
)
- (br $do-once17)
)
+ (get_local $12)
)
- (loop $while-in20
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $12)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $0)
+ (block (result i32)
+ (set_local $17
+ (get_local $0)
+ )
+ (get_local $10)
)
- (set_local $1
- (get_local $9)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $15)
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $17
- (get_local $0)
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $9)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $11)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $8
- (get_local $17)
+ (get_local $11)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $12)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $7
+ (get_local $17)
)
)
- (get_local $11)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $12)
)
)
+ (get_local $11)
)
- (get_local $12)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $12)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $1)
- )
- (i32.store
- (get_local $15)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $12)
)
- (set_local $8
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $10)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $6)
- (block
- (if
- (i32.eq
- (get_local $12)
- (i32.load
- (tee_local $11
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $12)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $12)
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $12)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $11)
- (get_local $8)
- )
- (if
- (i32.eqz
- (get_local $8)
+ (block
+ (i32.store
+ (get_local $11)
+ (get_local $7)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $7)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $12)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $7)
)
- (get_local $12)
- )
- (i32.store
- (get_local $1)
- (get_local $8)
- )
- (i32.store offset=20
- (get_local $6)
- (get_local $8)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $8)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $8)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $6)
- )
- (if
- (tee_local $11
- (i32.load offset=16
- (get_local $12)
- )
+ (i32.store offset=24
+ (get_local $7)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $11)
- (get_local $1)
+ (tee_local $11
+ (i32.load offset=16
+ (get_local $12)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $12)
- )
- )
(if
- (i32.lt_u
- (get_local $11)
- (i32.load
- (i32.const 192)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $12)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.ge_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $2)
- (i32.const 3)
- )
+ (block $do-once25
+ (if
+ (i32.ge_u
+ (get_local $3)
+ (i32.const 16)
)
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
- (get_local $3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $6
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $11
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $9
+ (block
+ (set_local $11
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $6)
+ (get_local $5)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $15
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $6
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $10
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $15
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $16
+ (get_local $5)
+ )
+ (set_local $26
+ (get_local $15)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $10)
+ )
+ )
(set_local $16
- (get_local $6)
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
(set_local $26
- (get_local $15)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $16
- (i32.add
(get_local $11)
- (i32.const 8)
)
)
- (set_local $26
- (get_local $11)
- )
)
+ (i32.store
+ (get_local $16)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $26)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $26)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $11)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $16)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $26)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $26)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $11)
- )
- (br $do-once25)
)
- )
- (set_local $6
- (i32.add
- (i32.shl
- (tee_local $10
- (if (result i32)
- (tee_local $11
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $11
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $11
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $11)
- (tee_local $9
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $11)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $11
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $11)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $11)
+ (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)
)
+ (get_local $10)
)
- (get_local $9)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $15
- (i32.shl
- (get_local $1)
- (get_local $11)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $15
+ (i32.shl
+ (get_local $1)
+ (get_local $11)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $15)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $15)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $5)
- (get_local $10)
- )
- (i32.store offset=4
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $1)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $15
- (i32.shl
- (i32.const 1)
- (get_local $10)
)
+ (i32.const 2)
)
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $15)
- )
- )
- (i32.store
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=24
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $5)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $9)
)
- )
- (set_local $15
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $10)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $10)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $1
- (i32.load
- (get_local $6)
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
- )
- (i32.const -8)
- )
- (get_local $3)
- )
- (block
- (set_local $14
- (get_local $1)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (tee_local $6
- (i32.add
- (i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $15)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $15
+ (tee_local $15
(i32.shl
- (get_local $15)
(i32.const 1)
+ (get_local $9)
)
)
- (set_local $1
- (get_local $9)
- )
- (br $while-in28)
)
- (block
- (set_local $23
- (get_local $6)
- )
- (set_local $21
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $1)
- )
- (set_local $7
- (i32.const 145)
+ (get_local $15)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
(i32.store
- (get_local $23)
(get_local $5)
+ (get_local $6)
)
(i32.store offset=24
+ (get_local $6)
(get_local $5)
- (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
(i32.store offset=8
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $15
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $9)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $15
+ )
+ (set_local $1
+ (i32.load
+ (get_local $5)
+ )
+ )
+ (loop $while-in28
+ (set_local $8
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $1)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $10
(i32.load
- (tee_local $1
+ (tee_local $5
(i32.add
- (get_local $14)
- (i32.const 8)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $9
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $15
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
+ )
+ )
+ (set_local $1
+ (get_local $10)
)
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $23
+ (get_local $5)
+ )
+ (set_local $21
+ (get_local $1)
+ )
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $14)
- (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $15)
- (get_local $5)
- )
(i32.store
- (get_local $1)
- (get_local $5)
+ (get_local $23)
+ (get_local $6)
)
- (i32.store offset=8
- (get_local $5)
- (get_local $15)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $14)
+ (get_local $6)
+ (get_local $6)
)
- (i32.store offset=24
- (get_local $5)
- (i32.const 0)
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $15
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $14)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $10
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $14)
+ (get_local $10)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $15)
+ (get_local $6)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $15)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $14)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $15
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $15
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $12)
- (get_local $15)
+ (i32.add
+ (get_local $12)
+ (get_local $15)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(i32.const -1)
)
)
@@ -2804,7 +2792,7 @@
(i32.const 184)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(set_local $14
@@ -2817,7 +2805,7 @@
(tee_local $3
(i32.sub
(get_local $12)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 15)
@@ -2828,7 +2816,7 @@
(tee_local $21
(i32.add
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2853,7 +2841,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -2908,7 +2896,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -2916,7 +2904,7 @@
(tee_local $3
(i32.sub
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2929,7 +2917,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2943,7 +2931,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -3016,7 +3004,7 @@
)
(set_local $14
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 48)
)
)
@@ -3033,7 +3021,7 @@
)
(tee_local $12
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 47)
)
)
@@ -3047,7 +3035,7 @@
)
)
)
- (get_local $9)
+ (get_local $10)
)
(return
(i32.const 0)
@@ -3055,7 +3043,7 @@
)
(if
(if (result i32)
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 616)
)
@@ -3076,7 +3064,7 @@
)
(i32.gt_u
(get_local $16)
- (get_local $10)
+ (get_local $9)
)
)
(i32.const 0)
@@ -3095,7 +3083,7 @@
)
(i32.const 0)
(i32.eq
- (tee_local $7
+ (tee_local $8
(block $label$break$L257 (result i32)
(if
(i32.eqz
@@ -3109,7 +3097,7 @@
(block
(block $label$break$L259
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 200)
)
@@ -3128,13 +3116,13 @@
(get_local $16)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.gt_u
(i32.add
(get_local $26)
(i32.load
- (tee_local $8
+ (tee_local $7
(i32.add
(get_local $16)
(i32.const 4)
@@ -3142,16 +3130,16 @@
)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.const 0)
)
(block
- (set_local $6
+ (set_local $5
(get_local $16)
)
(set_local $1
- (get_local $8)
+ (get_local $7)
)
(br $while-out33)
)
@@ -3163,7 +3151,7 @@
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
(br $label$break$L259)
@@ -3186,14 +3174,14 @@
)
(if
(i32.eq
- (tee_local $8
+ (tee_local $7
(call $_sbrk
(get_local $16)
)
)
(i32.add
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.load
(get_local $1)
@@ -3202,12 +3190,12 @@
)
(if
(i32.ne
- (get_local $8)
+ (get_local $7)
(i32.const -1)
)
(block
(set_local $20
- (get_local $8)
+ (get_local $7)
)
(set_local $22
(get_local $16)
@@ -3219,19 +3207,19 @@
)
(block
(set_local $13
- (get_local $8)
+ (get_local $7)
)
(set_local $18
(get_local $16)
)
- (set_local $7
+ (set_local $8
(i32.const 183)
)
)
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
)
@@ -3240,11 +3228,11 @@
(if
(if (result i32)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 173)
)
(i32.ne
- (tee_local $10
+ (tee_local $9
(call $_sbrk
(i32.const 0)
)
@@ -3257,7 +3245,7 @@
(set_local $0
(if (result i32)
(i32.and
- (tee_local $8
+ (tee_local $7
(i32.add
(tee_local $16
(i32.load
@@ -3268,7 +3256,7 @@
)
)
(tee_local $2
- (get_local $10)
+ (get_local $9)
)
)
(i32.add
@@ -3278,7 +3266,7 @@
)
(i32.and
(i32.add
- (get_local $8)
+ (get_local $7)
(get_local $2)
)
(i32.sub
@@ -3304,7 +3292,7 @@
(i32.and
(i32.gt_u
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
(i32.lt_u
(get_local $0)
@@ -3321,7 +3309,7 @@
)
(i32.gt_u
(get_local $2)
- (tee_local $8
+ (tee_local $7
(i32.load
(i32.const 616)
)
@@ -3329,39 +3317,39 @@
)
)
(i32.const 0)
- (get_local $8)
+ (get_local $7)
)
)
- (if
- (i32.eq
- (tee_local $8
- (call $_sbrk
- (get_local $0)
+ (set_local $18
+ (if (result i32)
+ (i32.eq
+ (tee_local $7
+ (call $_sbrk
+ (get_local $0)
+ )
)
+ (get_local $9)
)
- (get_local $10)
- )
- (block
- (set_local $20
- (get_local $10)
- )
- (set_local $22
- (get_local $0)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- (block
- (set_local $13
- (get_local $8)
+ (block
+ (set_local $20
+ (get_local $9)
+ )
+ (set_local $22
+ (get_local $0)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
)
- (set_local $18
+ (block (result i32)
+ (set_local $13
+ (get_local $7)
+ )
+ (set_local $8
+ (i32.const 183)
+ )
(get_local $0)
)
- (set_local $7
- (i32.const 183)
- )
)
)
)
@@ -3372,81 +3360,79 @@
(block $label$break$L279
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 183)
)
(block
- (set_local $8
+ (set_local $7
(i32.sub
(i32.const 0)
(get_local $18)
)
)
- (if
+ (set_local $4
(if (result i32)
- (i32.and
- (i32.gt_u
- (get_local $14)
- (get_local $18)
- )
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $14)
(get_local $18)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $13)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
+ )
)
)
- )
- (i32.lt_u
- (tee_local $2
- (i32.and
- (i32.add
- (i32.sub
- (get_local $12)
- (get_local $18)
- )
- (tee_local $10
- (i32.load
- (i32.const 656)
+ (i32.lt_u
+ (tee_local $2
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $12)
+ (get_local $18)
+ )
+ (tee_local $9
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $10)
+ (i32.sub
+ (i32.const 0)
+ (get_local $9)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (i32.const 0)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $2)
- )
- (i32.const -1)
+ (i32.const 0)
)
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $8)
+ (get_local $2)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $7)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
(i32.add
(get_local $2)
(get_local $18)
)
)
- )
- (set_local $4
(get_local $18)
)
)
@@ -3521,7 +3507,7 @@
)
)
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 40)
)
)
@@ -3534,14 +3520,14 @@
(set_local $22
(get_local $13)
)
- (set_local $7
+ (set_local $8
(i32.const 193)
)
)
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 193)
)
(block
@@ -3615,7 +3601,7 @@
(set_local $49
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 203)
)
(br $do-out)
@@ -3634,7 +3620,7 @@
(if (result i32)
(if (result i32)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 203)
)
(i32.eqz
@@ -3735,7 +3721,7 @@
(br $do-once40)
)
)
- (set_local $5
+ (set_local $6
(if (result i32)
(i32.lt_u
(get_local $20)
@@ -3780,7 +3766,7 @@
(set_local $40
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 211)
)
(br $while-out42)
@@ -3800,1070 +3786,942 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 211)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $40)
+ (set_local $28
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $40)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $28
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $50)
- (get_local $20)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $40)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $50)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $4)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $40)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $4)
+ )
+ (get_local $22)
)
- (get_local $22)
)
- )
- (set_local $12
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $12
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $3
- (i32.add
- (get_local $18)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $18)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (get_local $18)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $18)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $4
- (i32.add
- (get_local $12)
- (get_local $9)
- )
- )
- (set_local $14
- (i32.sub
- (i32.sub
- (get_local $3)
+ (set_local $4
+ (i32.add
(get_local $12)
+ (get_local $10)
)
- (get_local $9)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $9)
- (i32.const 3)
+ (set_local $14
+ (i32.sub
+ (i32.sub
+ (get_local $3)
+ (get_local $12)
+ )
+ (get_local $10)
+ )
)
- )
- (block $do-once44
- (if
- (i32.ne
- (get_local $3)
- (get_local $13)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
)
- (block
- (if
- (i32.eq
- (get_local $3)
- (i32.load
- (i32.const 196)
+ )
+ (block $do-once44
+ (if
+ (i32.ne
+ (get_local $3)
+ (get_local $13)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $3)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $4)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $4)
- (get_local $0)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
)
- (get_local $0)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $3)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $0)
)
+ (get_local $0)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $1
+ (if
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $3)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.ge_u
+ (block
+ (set_local $1
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $23
- (i32.load offset=24
- (get_local $3)
- )
+ )
+ (set_local $5
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.ge_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.eq
- (tee_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
+ (block
+ (set_local $23
+ (i32.load offset=24
(get_local $3)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $2
- (i32.add
- (tee_local $8
+ )
+ (block $do-once47
+ (if
+ (i32.eq
+ (tee_local $21
+ (i32.load offset=12
+ (get_local $3)
+ )
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $3)
- (i32.const 16)
+ (tee_local $7
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $7
+ (get_local $2)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (get_local $7)
+ )
+ )
+ (get_local $16)
+ (br $do-once47)
+ )
)
)
- (block
- (set_local $0
- (get_local $10)
+ (loop $while-in50
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
- (set_local $8
- (get_local $2)
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
)
(if
- (tee_local $16
- (i32.load
- (get_local $8)
- )
+ (i32.lt_u
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $16)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $7)
+ (i32.const 0)
+ )
+ (set_local $24
+ (get_local $0)
+ )
)
- (br $do-once47)
)
)
- (loop $while-in50
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $3)
+ )
+ )
+ (get_local $6)
+ )
+ (call $_abort)
+ )
(if
- (tee_local $10
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $9
(i32.add
- (get_local $0)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $3)
)
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $8
- (get_local $2)
- )
- (br $while-in50)
- )
+ (call $_abort)
)
(if
- (tee_local $10
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
+ (get_local $21)
+ (i32.const 8)
)
)
)
+ (get_local $3)
)
(block
- (set_local $0
- (get_local $10)
+ (i32.store
+ (get_local $9)
+ (get_local $21)
)
- (set_local $8
+ (i32.store
+ (get_local $7)
(get_local $2)
)
- (br $while-in50)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $8)
- (i32.const 0)
- )
- (set_local $24
- (get_local $0)
+ (set_local $24
+ (get_local $21)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $23)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (get_local $3)
+ (i32.load
(tee_local $2
- (i32.load offset=8
- (get_local $3)
+ (i32.add
+ (i32.shl
+ (tee_local $21
+ (i32.load offset=28
+ (get_local $3)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $5)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $2)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $3)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $23)
+ (i32.const 16)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
(i32.store
- (get_local $10)
- (get_local $21)
+ (get_local $7)
+ (get_local $24)
)
- (i32.store
- (get_local $8)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $24)
)
- (set_local $24
- (get_local $21)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $24)
)
)
- (call $_abort)
+ )
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $24)
+ )
+ (br_if $do-once51
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $21)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $label$break$L331)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $21
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $23)
)
- )
- (block $do-once51
(if
- (i32.ne
- (get_local $3)
+ (tee_local $7
(i32.load
(tee_local $2
(i32.add
- (i32.shl
- (tee_local $21
- (i32.load offset=28
- (get_local $3)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
+ (get_local $3)
+ (i32.const 16)
)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (get_local $21)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $23)
- (i32.const 16)
- )
- )
- )
- (get_local $3)
- )
- (i32.store
- (get_local $8)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $23)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $7)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $7)
(get_local $24)
)
)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $24)
- )
- (br_if $do-once51
- (get_local $24)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $21)
- )
- (i32.const -1)
- )
- )
- )
- (br $label$break$L331)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $21
- (i32.load
- (i32.const 192)
- )
- )
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $23)
- )
- (if
- (tee_local $8
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (br_if $label$break$L331
+ (i32.eqz
+ (tee_local $7
+ (i32.load offset=4
+ (get_local $2)
)
)
)
)
(if
(i32.lt_u
- (get_local $8)
- (get_local $21)
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
- (get_local $8)
+ (get_local $7)
)
(i32.store offset=24
- (get_local $8)
+ (get_local $7)
(get_local $24)
)
)
)
)
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $8
- (i32.load offset=4
- (get_local $2)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $24)
+ (block
+ (set_local $21
+ (i32.load offset=12
+ (get_local $3)
)
)
- )
- )
- (block
- (set_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
- (block $do-once55
- (if
- (i32.ne
- (tee_local $8
- (i32.load offset=8
- (get_local $3)
- )
- )
- (tee_local $23
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (block $do-once55
+ (if
+ (i32.ne
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $3)
)
- (i32.const 216)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
)
- (call $_abort)
- )
- (br_if $do-once55
- (i32.eq
- (i32.load offset=12
- (get_local $8)
+ (tee_local $23
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (get_local $3)
)
)
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $21)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
(get_local $6)
)
- (i32.const -1)
+ (call $_abort)
)
+ (br_if $do-once55
+ (i32.eq
+ (i32.load offset=12
+ (get_local $7)
+ )
+ (get_local $3)
+ )
+ )
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once57
(if
(i32.eq
(get_local $21)
- (get_local $23)
+ (get_local $7)
)
- (set_local $41
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once57
+ (if
+ (i32.eq
+ (get_local $21)
+ (get_local $23)
+ )
+ (set_local $41
+ (i32.add
(get_local $21)
- (get_local $5)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (get_local $6)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $21)
+ (i32.const 8)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
- (set_local $41
- (get_local $2)
+ (block
+ (set_local $41
+ (get_local $2)
+ )
+ (br $do-once57)
)
- (br $do-once57)
)
+ (call $_abort)
)
- (call $_abort)
)
)
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $21)
+ )
+ (i32.store
+ (get_local $41)
+ (get_local $7)
+ )
)
- (i32.store offset=12
- (get_local $8)
- (get_local $21)
- )
- (i32.store
- (get_local $41)
- (get_local $8)
- )
+ )
+ )
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (set_local $14
+ (i32.add
+ (get_local $1)
+ (get_local $14)
)
)
)
- (set_local $3
+ )
+ (i32.store
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $1)
+ (i32.const 4)
)
)
- (set_local $14
- (i32.add
- (get_local $1)
- (get_local $14)
+ (i32.and
+ (i32.load
+ (get_local $5)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $14)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $6)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $14)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $14)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $4)
(get_local $14)
)
- (get_local $14)
- )
- (set_local $6
- (i32.shr_u
- (get_local $14)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $14)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 3)
+ )
)
- (block
- (set_local $0
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $14)
+ (i32.const 256)
+ )
+ (block
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $23
- (i32.load
- (i32.const 176)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $23
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $2
- (i32.shl
- (i32.const 1)
- (get_local $6)
+ (tee_local $2
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $42
+ (get_local $5)
+ )
+ (set_local $34
+ (get_local $9)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $42
- (get_local $6)
- )
- (set_local $34
- (get_local $10)
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $23)
+ (get_local $2)
)
- (br $do-once59)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $23)
- (get_local $2)
+ (set_local $42
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
- )
- (set_local $42
- (i32.add
+ (set_local $34
(get_local $0)
- (i32.const 8)
)
)
- (set_local $34
- (get_local $0)
- )
)
)
+ (i32.store
+ (get_local $42)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $34)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $34)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $0)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $42)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $34)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $34)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $0)
- )
- (br $do-once44)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $1
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $2
- (i32.shr_u
- (get_local $14)
- (i32.const 8)
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $2
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $14)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $14)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $14)
- (i32.add
- (tee_local $16
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $14)
+ (i32.add
+ (tee_local $16
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $2)
- (tee_local $23
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $2)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $2)
+ (tee_local $23
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $2)
+ (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)
)
+ (get_local $23)
)
- (get_local $23)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $6
- (i32.shl
- (get_local $1)
- (get_local $10)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $5
+ (i32.shl
+ (get_local $1)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $6)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $16)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $4)
- (get_local $1)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $16
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- )
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $0)
- (get_local $16)
- )
- )
- (i32.store
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=24
- (get_local $4)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $4)
+ (get_local $1)
)
- )
- (set_local $16
- (i32.shl
- (get_local $14)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $1)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $1)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
- )
- (i32.const -8)
- )
- (get_local $14)
- )
- (block
- (set_local $35
- (get_local $0)
- )
- (set_local $7
- (i32.const 281)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
- (i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $16)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $16
+ (tee_local $16
(i32.shl
- (get_local $16)
(i32.const 1)
+ (get_local $1)
)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in64)
)
- (block
- (set_local $43
- (get_local $2)
- )
- (set_local $51
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $0)
+ (get_local $16)
)
- (set_local $7
- (i32.const 278)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 278)
- )
- (if
- (i32.lt_u
- (get_local $43)
- (i32.load
- (i32.const 192)
)
- )
- (call $_abort)
- (block
(i32.store
- (get_local $43)
+ (get_local $2)
(get_local $4)
)
(i32.store offset=24
(get_local $4)
- (get_local $51)
+ (get_local $2)
)
(i32.store offset=12
(get_local $4)
@@ -4873,133 +4731,258 @@
(get_local $4)
(get_local $4)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 281)
+ (set_local $16
+ (i32.shl
+ (get_local $14)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $1)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $16
+ )
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
+ )
+ (loop $while-in64
+ (set_local $8
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
+ )
+ (get_local $14)
+ )
+ (block
+ (set_local $35
+ (get_local $0)
+ )
+ (br $while-out63
+ (i32.const 281)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $0
+ (tee_local $2
(i32.add
- (get_local $35)
- (i32.const 8)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $43
+ (get_local $2)
)
+ (set_local $51
+ (get_local $0)
+ )
+ (i32.const 278)
)
)
- (i32.ge_u
- (get_local $35)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 278)
+ )
+ (if
+ (i32.lt_u
+ (get_local $43)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $16)
- (get_local $4)
- )
(i32.store
- (get_local $0)
+ (get_local $43)
(get_local $4)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $4)
- (get_local $16)
+ (get_local $51)
)
(i32.store offset=12
(get_local $4)
- (get_local $35)
+ (get_local $4)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $4)
(get_local $4)
- (i32.const 0)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 281)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $16
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $35)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $35)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $16)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $16)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $35)
+ )
+ (i32.store offset=24
+ (get_local $4)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $16
- (i32.add
- (i32.load
- (i32.const 188)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $16
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $16)
- (i32.const 1)
+ (i32.store
+ (i32.const 200)
+ (get_local $4)
+ )
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $16)
+ (i32.const 1)
+ )
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
)
)
)
(loop $while-in66
- (if
+ (set_local $0
(if (result i32)
- (i32.le_u
- (tee_local $4
- (i32.load
- (get_local $28)
+ (if (result i32)
+ (i32.le_u
+ (tee_local $4
+ (i32.load
+ (get_local $28)
+ )
)
+ (get_local $13)
)
- (get_local $13)
- )
- (i32.gt_u
- (tee_local $14
- (i32.add
- (get_local $4)
- (i32.load offset=4
- (get_local $28)
+ (i32.gt_u
+ (tee_local $14
+ (i32.add
+ (get_local $4)
+ (i32.load offset=4
+ (get_local $28)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (set_local $0
(get_local $14)
- )
- (block
- (set_local $28
- (i32.load offset=8
- (get_local $28)
+ (block
+ (set_local $28
+ (i32.load offset=8
+ (get_local $28)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
)
)
@@ -5503,67 +5486,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $8
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $4)
- )
- (block
- (set_local $37
- (get_local $0)
+ (get_local $4)
)
- (set_local $7
- (i32.const 307)
+ (block
+ (set_local $37
+ (get_local $0)
+ )
+ (br $while-out69
+ (i32.const 307)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $3
- (i32.add
+ (if (result i32)
+ (tee_local $1
+ (i32.load
+ (tee_local $3
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $2
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (block
+ (set_local $2
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in70)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in70)
- )
- (block
- (set_local $45
- (get_local $3)
- )
- (set_local $52
- (get_local $0)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $45
+ (get_local $3)
+ )
+ (set_local $52
+ (get_local $0)
+ )
(i32.const 304)
)
)
@@ -5572,7 +5554,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 304)
)
(if
@@ -5604,7 +5586,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 307)
)
(if
@@ -5805,7 +5787,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -5813,7 +5795,7 @@
(tee_local $20
(i32.sub
(get_local $22)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5826,7 +5808,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5840,7 +5822,7 @@
(i32.store offset=4
(get_local $22)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -6249,33 +6231,33 @@
(br $while-in)
)
)
- (if
- (tee_local $10
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $7
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $4
- (get_local $7)
+ (block
+ (set_local $0
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $7)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (block
- (set_local $7
+ (block (result i32)
+ (set_local $9
+ (get_local $4)
+ )
(get_local $0)
)
- (set_local $9
- (get_local $4)
- )
)
)
)
@@ -6578,641 +6560,636 @@
)
(call $_abort)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $5)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $3)
- )
- (get_local $3)
- )
- (set_local $0
- (get_local $3)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 200)
+ (set_local $3
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $6
- (i32.add
- (i32.load
- (i32.const 188)
- )
- (get_local $3)
+ (block (result i32)
+ (i32.store
+ (get_local $5)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 196)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 196)
- )
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $6
+ (i32.store
(i32.add
- (i32.load
- (i32.const 184)
- )
+ (get_local $2)
(get_local $3)
)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.store
- (i32.const 196)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (return)
- )
- )
- (set_local $6
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $3)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.ge_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $7
- (i32.load offset=24
+ (block (result i32)
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (i32.const 200)
+ )
)
- )
- (block $do-once6
- (if
- (i32.eq
- (tee_local $9
- (i32.load offset=12
- (get_local $8)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $3)
)
)
- (get_local $8)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
- )
- )
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
- (block
- (set_local $3
- (get_local $10)
- )
- (set_local $4
- (get_local $0)
+ )
+ (return)
+ )
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
+ )
+ (return)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 184)
)
+ (get_local $3)
)
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
- )
- )
- (set_local $3
- (get_local $0)
- )
- (br $do-once6)
+ )
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
+ )
+ (get_local $6)
+ )
+ (return)
+ )
+ )
+ (set_local $6
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ )
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (block $do-once4
+ (if
+ (i32.ge_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $7
+ (i32.load offset=24
+ (get_local $8)
)
)
- (loop $while-in9
+ (block $do-once6
(if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
- )
+ (i32.eq
+ (tee_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
(block
(set_local $3
- (get_local $10)
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $10)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
+ )
)
- (set_local $4
- (get_local $0)
+ (loop $while-in9
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
)
- (br $while-in9)
- )
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $12
(get_local $3)
- (i32.const 16)
)
)
)
)
(block
- (set_local $3
- (get_local $10)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $10)
+ (get_local $9)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $12
+ (get_local $9)
+ )
+ )
+ (call $_abort)
)
- (br $while-in9)
)
)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (get_local $7)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
- )
- (set_local $12
- (get_local $3)
- )
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
)
- )
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $12)
+ )
+ (if
+ (i32.eqz
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
)
)
- )
- (get_local $8)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $9)
+ (get_local $12)
+ )
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $12)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $12)
+ )
)
)
)
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $10)
- (get_local $9)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $9
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
)
- (set_local $12
- (get_local $9)
+ (i32.store offset=24
+ (get_local $12)
+ (get_local $7)
)
- )
- (call $_abort)
- )
- )
- )
- )
- (if
- (get_local $7)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $5
- (i32.add
- (i32.shl
- (tee_local $9
- (i32.load offset=28
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $5
+ (i32.add
(get_local $8)
+ (i32.const 16)
)
)
- (i32.const 2)
)
- (i32.const 480)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $12)
- )
- (if
- (i32.eqz
- (get_local $12)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $9)
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $12)
+ (get_local $1)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $9)
- )
- (i32.const -1)
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (br $do-once4)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $5)
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $7)
- (i32.const 16)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (get_local $8)
- )
- (i32.store
- (get_local $9)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $7)
- (get_local $12)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $9
- (i32.load
- (i32.const 192)
- )
+ (block
+ (set_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $7)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $5
+ (if
+ (i32.ne
+ (tee_local $1
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (tee_local $7
(i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $1)
+ )
(get_local $8)
- (i32.const 16)
)
+ (call $_abort)
)
)
)
(if
- (i32.lt_u
- (get_local $1)
+ (i32.eq
(get_local $9)
+ (get_local $1)
)
- (call $_abort)
(block
- (i32.store offset=16
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ (i32.const -1)
+ )
+ )
)
- )
- )
- )
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $5)
+ (br $do-once4)
)
)
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (i32.ne
+ (get_local $9)
+ (get_local $7)
)
- (call $_abort)
(block
- (i32.store offset=20
- (get_local $12)
- (get_local $1)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $16
+ (get_local $7)
+ )
+ (call $_abort)
)
)
- )
- )
- )
- )
- )
- (block
- (set_local $9
- (i32.load offset=12
- (get_local $8)
- )
- )
- (if
- (i32.ne
- (tee_local $1
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $7
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
+ (set_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
+ (i32.store offset=12
(get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (get_local $9)
)
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load offset=12
- (get_local $1)
- )
- (get_local $8)
+ (i32.store
+ (get_local $16)
+ (get_local $1)
)
- (call $_abort)
)
)
)
- (if
- (i32.eq
- (get_local $9)
- (get_local $1)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
- )
- (i32.const -1)
- )
- )
- )
- (br $do-once4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
)
)
- (if
- (i32.ne
- (get_local $9)
- (get_local $7)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
)
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $9)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $16
- (get_local $7)
- )
- (call $_abort)
+ (get_local $6)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
)
- (set_local $16
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $6)
)
+ (return)
)
+ (get_local $6)
)
- (i32.store offset=12
- (get_local $1)
- (get_local $9)
- )
- (i32.store
- (get_local $16)
- (get_local $1)
- )
- )
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
)
)
- (block
- (i32.store
- (i32.const 184)
- (get_local $6)
- )
- (return)
- )
- (set_local $0
- (get_local $6)
- )
)
- )
- )
- (set_local $3
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7466,67 +7443,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $17
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $17
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $16
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $16
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $3)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $16)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $16)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7658,10 +7634,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 632)
)
)
@@ -8427,12 +8403,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8455,35 +8431,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/emcc_O2_hello_world.fromasm.clamp b/test/emcc_O2_hello_world.fromasm.clamp
index 6a2b31eb9..271013c8f 100644
--- a/test/emcc_O2_hello_world.fromasm.clamp
+++ b/test/emcc_O2_hello_world.fromasm.clamp
@@ -120,9 +120,9 @@
(i32.const 176)
)
)
- (tee_local $6
+ (tee_local $5
(i32.shr_u
- (tee_local $9
+ (tee_local $10
(select
(i32.const 16)
(i32.and
@@ -152,12 +152,12 @@
(i32.add
(tee_local $0
(i32.load
- (tee_local $5
+ (tee_local $6
(i32.add
(tee_local $1
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.xor
(i32.and
@@ -166,7 +166,7 @@
)
(i32.const 1)
)
- (get_local $6)
+ (get_local $5)
)
)
(i32.const 3)
@@ -202,7 +202,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 12)
@@ -213,11 +213,11 @@
)
(block
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $1)
)
(i32.store
- (get_local $5)
+ (get_local $6)
(get_local $2)
)
)
@@ -231,7 +231,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
@@ -243,7 +243,7 @@
(i32.or
(tee_local $2
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
)
@@ -251,7 +251,7 @@
)
)
(i32.store
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.add
(get_local $0)
@@ -262,7 +262,7 @@
)
(i32.or
(i32.load
- (get_local $5)
+ (get_local $6)
)
(i32.const 1)
)
@@ -274,8 +274,8 @@
)
(if
(i32.gt_u
- (get_local $9)
- (tee_local $5
+ (get_local $10)
+ (tee_local $6
(i32.load
(i32.const 184)
)
@@ -295,13 +295,13 @@
(i32.and
(i32.shl
(get_local $2)
- (get_local $6)
+ (get_local $5)
)
(i32.or
(tee_local $2
(i32.shl
(i32.const 2)
- (get_local $6)
+ (get_local $5)
)
)
(i32.sub
@@ -326,7 +326,7 @@
)
(set_local $1
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(tee_local $0
(i32.load
@@ -335,7 +335,7 @@
(tee_local $11
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.or
(i32.or
@@ -344,7 +344,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -357,12 +357,12 @@
)
(get_local $1)
)
- (tee_local $7
+ (tee_local $8
(i32.and
(i32.shr_u
(tee_local $0
(i32.shr_u
- (get_local $7)
+ (get_local $8)
(get_local $2)
)
)
@@ -378,7 +378,7 @@
(tee_local $11
(i32.shr_u
(get_local $0)
- (get_local $7)
+ (get_local $8)
)
)
(i32.const 1)
@@ -476,21 +476,21 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
)
)
(set_local $17
- (get_local $5)
+ (get_local $6)
)
)
)
(i32.store offset=4
(get_local $0)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -498,17 +498,17 @@
(tee_local $15
(i32.add
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
)
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.sub
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 1)
@@ -517,9 +517,9 @@
(i32.store
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
- (get_local $5)
+ (get_local $6)
)
(if
(get_local $17)
@@ -545,7 +545,7 @@
)
(if
(i32.and
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 176)
)
@@ -587,7 +587,7 @@
(i32.store
(i32.const 176)
(i32.or
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -622,14 +622,14 @@
)
(i32.store
(i32.const 184)
- (get_local $5)
+ (get_local $6)
)
(i32.store
(i32.const 196)
(get_local $15)
)
(return
- (get_local $7)
+ (get_local $8)
)
)
)
@@ -643,7 +643,7 @@
(set_local $15
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.and
(get_local $15)
@@ -672,12 +672,12 @@
(i32.or
(i32.or
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.and
(i32.shr_u
(tee_local $11
(i32.shr_u
- (get_local $5)
+ (get_local $6)
(get_local $15)
)
)
@@ -694,7 +694,7 @@
(tee_local $1
(i32.shr_u
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 2)
@@ -721,7 +721,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $6
+ (tee_local $5
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -734,7 +734,7 @@
)
)
(i32.shr_u
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -745,10 +745,10 @@
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
- (set_local $6
+ (set_local $5
(get_local $17)
)
(set_local $1
@@ -756,46 +756,43 @@
)
(loop $while-in
(block $while-out
- (if
- (tee_local $17
- (i32.load offset=16
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $17)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $11)
- )
- (block
- (set_local $8
- (get_local $2)
- )
- (set_local $3
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
(set_local $11
(i32.lt_u
(tee_local $17
(i32.sub
(i32.and
(i32.load offset=4
- (get_local $0)
+ (tee_local $0
+ (if (result i32)
+ (tee_local $17
+ (i32.load offset=16
+ (get_local $5)
+ )
+ )
+ (get_local $17)
+ (if (result i32)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
+ (get_local $11)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
(get_local $2)
@@ -808,7 +805,7 @@
(get_local $11)
)
)
- (set_local $6
+ (set_local $5
(get_local $0)
)
(set_local $1
@@ -835,10 +832,10 @@
(if
(i32.ge_u
(get_local $3)
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -852,7 +849,7 @@
(block $do-once4
(if
(i32.eq
- (tee_local $7
+ (tee_local $8
(i32.load offset=12
(get_local $3)
)
@@ -860,45 +857,43 @@
(get_local $3)
)
(block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
+ (set_local $6
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $10)
- )
- (set_local $5
+ (block (result i32)
+ (set_local $17
+ (get_local $9)
+ )
(get_local $0)
)
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $11
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
)
)
)
- )
- (set_local $5
(get_local $11)
+ (br $do-once4)
)
- (br $do-once4)
)
)
(loop $while-in7
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -910,16 +905,16 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
)
)
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -931,9 +926,9 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
@@ -942,13 +937,13 @@
)
(if
(i32.lt_u
- (get_local $5)
+ (get_local $6)
(get_local $1)
)
(call $_abort)
(block
(i32.store
- (get_local $5)
+ (get_local $6)
(i32.const 0)
)
(set_local $19
@@ -972,7 +967,7 @@
(if
(i32.ne
(i32.load
- (tee_local $10
+ (tee_local $9
(i32.add
(get_local $0)
(i32.const 12)
@@ -988,7 +983,7 @@
(i32.load
(tee_local $11
(i32.add
- (get_local $7)
+ (get_local $8)
(i32.const 8)
)
)
@@ -997,15 +992,15 @@
)
(block
(i32.store
- (get_local $10)
- (get_local $7)
+ (get_local $9)
+ (get_local $8)
)
(i32.store
(get_local $11)
(get_local $0)
)
(set_local $19
- (get_local $7)
+ (get_local $8)
)
)
(call $_abort)
@@ -1024,7 +1019,7 @@
(tee_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.load offset=28
(get_local $3)
)
@@ -1055,7 +1050,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
(i32.const -1)
)
@@ -1078,7 +1073,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 16)
@@ -1088,7 +1083,7 @@
(get_local $3)
)
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $19)
)
(i32.store offset=20
@@ -1106,7 +1101,7 @@
(if
(i32.lt_u
(get_local $19)
- (tee_local $7
+ (tee_local $8
(i32.load
(i32.const 192)
)
@@ -1127,7 +1122,7 @@
(if
(i32.lt_u
(get_local $1)
- (get_local $7)
+ (get_local $8)
)
(call $_abort)
(block
@@ -1173,7 +1168,7 @@
)
(if
(i32.lt_u
- (get_local $8)
+ (get_local $7)
(i32.const 16)
)
(block
@@ -1182,8 +1177,8 @@
(i32.or
(tee_local $2
(i32.add
- (get_local $8)
- (get_local $9)
+ (get_local $7)
+ (get_local $10)
)
)
(i32.const 3)
@@ -1211,23 +1206,23 @@
(i32.store offset=4
(get_local $3)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
(i32.store offset=4
- (get_local $6)
+ (get_local $5)
(i32.or
- (get_local $8)
+ (get_local $7)
(i32.const 1)
)
)
(i32.store
(i32.add
- (get_local $6)
- (get_local $8)
+ (get_local $5)
+ (get_local $7)
)
- (get_local $8)
+ (get_local $7)
)
(if
(tee_local $1
@@ -1244,7 +1239,7 @@
(set_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $1)
(i32.const 3)
@@ -1265,15 +1260,15 @@
(tee_local $11
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
)
)
(if
(i32.lt_u
- (tee_local $10
+ (tee_local $9
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $1)
(i32.const 8)
@@ -1288,10 +1283,10 @@
(call $_abort)
(block
(set_local $39
- (get_local $7)
+ (get_local $8)
)
(set_local $32
- (get_local $10)
+ (get_local $9)
)
)
)
@@ -1334,11 +1329,11 @@
)
(i32.store
(i32.const 184)
- (get_local $8)
+ (get_local $7)
)
(i32.store
(i32.const 196)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -1353,246 +1348,248 @@
)
)
)
- (if
- (i32.le_u
- (get_local $0)
- (i32.const -65)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
- )
- )
- (i32.const -8)
- )
+ (set_local $10
+ (if (result i32)
+ (i32.le_u
+ (get_local $0)
+ (i32.const -65)
)
- (if
- (tee_local $11
- (i32.load
- (i32.const 180)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ )
+ (i32.const -8)
)
)
- (block
- (set_local $0
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (i32.const 180)
)
)
- (block $label$break$L123
- (if
- (tee_local $15
- (i32.load offset=480
- (i32.shl
- (tee_local $9
- (if (result i32)
- (tee_local $10
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $0
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
+ )
+ (block $label$break$L123
+ (if
+ (tee_local $15
+ (i32.load offset=480
+ (i32.shl
+ (tee_local $10
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $9
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $15
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $15
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $7
- (i32.shl
- (get_local $10)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $10)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $8
+ (i32.shl
+ (get_local $9)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $9)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $17
- (i32.shl
- (get_local $7)
- (get_local $10)
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $17
+ (i32.shl
+ (get_local $8)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $17)
- (get_local $7)
+ (i32.shr_u
+ (i32.shl
+ (get_local $17)
+ (get_local $8)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $15)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
)
)
- )
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $17
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $9)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $9)
- (i32.const 31)
- )
- )
+ (block
+ (set_local $8
+ (get_local $0)
)
- )
- (set_local $10
- (get_local $15)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $0
+ (set_local $17
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
(i32.sub
- (tee_local $19
- (i32.and
- (i32.load offset=4
- (get_local $10)
- )
- (i32.const -8)
- )
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $10)
+ (i32.const 1)
)
- (get_local $2)
+ )
+ (i32.eq
+ (get_local $10)
+ (i32.const 31)
)
)
- (get_local $7)
)
+ )
+ (set_local $9
+ (get_local $15)
+ )
+ (loop $while-in14
(if
- (i32.eq
- (get_local $19)
- (get_local $2)
- )
- (block
- (set_local $27
- (get_local $0)
- )
- (set_local $25
- (get_local $10)
- )
- (set_local $29
- (get_local $10)
- )
- (set_local $7
- (i32.const 90)
+ (i32.lt_u
+ (tee_local $0
+ (i32.sub
+ (tee_local $19
+ (i32.and
+ (i32.load offset=4
+ (get_local $9)
+ )
+ (i32.const -8)
+ )
+ )
+ (get_local $2)
+ )
)
- (br $label$break$L123)
+ (get_local $8)
)
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $5
- (get_local $10)
+ (set_local $6
+ (if (result i32)
+ (i32.eq
+ (get_local $19)
+ (get_local $2)
+ )
+ (block
+ (set_local $27
+ (get_local $0)
+ )
+ (set_local $25
+ (get_local $9)
+ )
+ (set_local $29
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
+ (br $label$break$L123)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $0)
+ )
+ (get_local $9)
+ )
)
)
)
- )
- (set_local $19
- (select
- (get_local $17)
- (tee_local $0
- (i32.load offset=20
- (get_local $10)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $0)
+ (set_local $19
+ (select
+ (get_local $17)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $9)
+ )
)
- (i32.eq
- (get_local $0)
- (tee_local $10
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $0)
+ )
+ (i32.eq
+ (get_local $0)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $10)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1600,1198 +1597,1189 @@
)
)
)
- )
- (if
- (tee_local $0
- (i32.eqz
- (get_local $10)
- )
- )
- (block
- (set_local $33
- (get_local $7)
- )
- (set_local $6
- (get_local $19)
- )
- (set_local $30
- (get_local $5)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $17
- (get_local $19)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $0)
- (i32.const 1)
+ (set_local $5
+ (if (result i32)
+ (tee_local $0
+ (i32.eqz
+ (get_local $9)
+ )
+ )
+ (block (result i32)
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $30
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
+ (get_local $19)
+ )
+ (block
+ (set_local $17
+ (get_local $19)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $0)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $33
- (get_local $0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $33
+ (get_local $0)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
- (block
- (if
- (i32.eqz
- (i32.or
- (get_local $6)
- (get_local $30)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 86)
+ )
+ (block
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $5)
+ (get_local $30)
+ )
)
- )
- (block
- (if
- (i32.eqz
- (tee_local $0
- (i32.and
- (get_local $11)
- (i32.or
- (tee_local $15
- (i32.shl
- (i32.const 2)
- (get_local $9)
+ (block
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.and
+ (get_local $11)
+ (i32.or
+ (tee_local $15
+ (i32.shl
+ (i32.const 2)
+ (get_local $10)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $15)
)
)
)
)
- )
- (block
- (set_local $9
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $0
- (i32.and
- (i32.shr_u
- (tee_local $15
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (set_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $15
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $6
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $5
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $15
+ (i32.or
+ (tee_local $15
+ (i32.and
+ (i32.shr_u
+ (tee_local $10
+ (i32.shr_u
+ (get_local $15)
+ (get_local $0)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $0)
+ )
+ (tee_local $10
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $5
(i32.shr_u
+ (get_local $10)
(get_local $15)
- (get_local $0)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $0)
)
- (tee_local $9
+ (tee_local $5
(i32.and
(i32.shr_u
(tee_local $6
(i32.shr_u
- (get_local $9)
- (get_local $15)
+ (get_local $5)
+ (get_local $10)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
(tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $1
(i32.shr_u
(get_local $6)
- (get_local $9)
+ (get_local $5)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $5
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (get_local $6)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $6)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $5)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $27
- (get_local $33)
- )
- (set_local $25
- (get_local $6)
- )
- (set_local $29
- (get_local $30)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $3
- (get_local $33)
+ (if
+ (get_local $5)
+ (block
+ (set_local $27
+ (get_local $33)
+ )
+ (set_local $25
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $30)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
)
- (set_local $12
- (get_local $30)
+ (block
+ (set_local $3
+ (get_local $33)
+ )
+ (set_local $12
+ (get_local $30)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $5
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $25)
+ (loop $while-in16
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $6
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $25)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
- )
- (get_local $27)
- )
- )
- (set_local $6
- (select
- (get_local $5)
- (get_local $27)
- (get_local $1)
- )
- )
- (set_local $5
- (select
- (get_local $25)
- (get_local $29)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $25)
+ (get_local $27)
)
)
- (block
- (set_local $27
+ (set_local $5
+ (select
(get_local $6)
- )
- (set_local $25
+ (get_local $27)
(get_local $1)
)
- (set_local $29
- (get_local $5)
- )
- (br $while-in16)
)
- )
- (if
- (tee_local $25
- (i32.load offset=20
+ (set_local $6
+ (select
(get_local $25)
+ (get_local $29)
+ (get_local $1)
)
)
- (block
- (set_local $27
- (get_local $6)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $25)
+ )
)
- (set_local $29
- (get_local $5)
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $25
+ (get_local $1)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- (block
- (set_local $3
- (get_local $6)
- )
- (set_local $12
- (get_local $5)
+ (set_local $3
+ (if (result i32)
+ (tee_local $25
+ (i32.load offset=20
+ (get_local $25)
+ )
+ )
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $12
+ (get_local $6)
+ )
+ (get_local $5)
+ )
)
)
)
)
- )
- (if
(if (result i32)
- (get_local $12)
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (get_local $2)
- )
- )
- (i32.const 0)
- )
- (block
- (if
+ (if (result i32)
+ (get_local $12)
(i32.lt_u
- (get_local $12)
- (tee_local $11
+ (get_local $3)
+ (i32.sub
(i32.load
- (i32.const 192)
+ (i32.const 184)
)
+ (get_local $2)
)
)
- (call $_abort)
+ (i32.const 0)
)
- (if
- (i32.ge_u
- (get_local $12)
- (tee_local $5
- (i32.add
- (get_local $12)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $11
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $6
- (i32.load offset=24
- (get_local $12)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $12)
+ (tee_local $6
+ (i32.add
(get_local $12)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $12)
)
- (block
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $12)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $17
- (get_local $0)
- )
- (set_local $1
- (get_local $9)
- )
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $12)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $15)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $12)
)
- (br $do-once17)
)
+ (get_local $12)
)
- (loop $while-in20
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $12)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $0)
+ (block (result i32)
+ (set_local $17
+ (get_local $0)
+ )
+ (get_local $10)
)
- (set_local $1
- (get_local $9)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $15)
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $17
- (get_local $0)
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $9)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $11)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $8
- (get_local $17)
+ (get_local $11)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $12)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $7
+ (get_local $17)
)
)
- (get_local $11)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $12)
)
)
+ (get_local $11)
)
- (get_local $12)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $12)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $1)
- )
- (i32.store
- (get_local $15)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $12)
)
- (set_local $8
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $10)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $6)
- (block
- (if
- (i32.eq
- (get_local $12)
- (i32.load
- (tee_local $11
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $12)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $12)
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $12)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $11)
- (get_local $8)
- )
- (if
- (i32.eqz
- (get_local $8)
+ (block
+ (i32.store
+ (get_local $11)
+ (get_local $7)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $7)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $12)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $7)
)
- (get_local $12)
- )
- (i32.store
- (get_local $1)
- (get_local $8)
- )
- (i32.store offset=20
- (get_local $6)
- (get_local $8)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $8)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $8)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $6)
- )
- (if
- (tee_local $11
- (i32.load offset=16
- (get_local $12)
- )
+ (i32.store offset=24
+ (get_local $7)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $11)
- (get_local $1)
+ (tee_local $11
+ (i32.load offset=16
+ (get_local $12)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $12)
- )
- )
(if
- (i32.lt_u
- (get_local $11)
- (i32.load
- (i32.const 192)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $12)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.ge_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $2)
- (i32.const 3)
- )
+ (block $do-once25
+ (if
+ (i32.ge_u
+ (get_local $3)
+ (i32.const 16)
)
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
- (get_local $3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $6
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $11
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $9
+ (block
+ (set_local $11
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $6)
+ (get_local $5)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $15
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $6
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $10
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $15
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $16
+ (get_local $5)
+ )
+ (set_local $26
+ (get_local $15)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $10)
+ )
+ )
(set_local $16
- (get_local $6)
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
(set_local $26
- (get_local $15)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $16
- (i32.add
(get_local $11)
- (i32.const 8)
)
)
- (set_local $26
- (get_local $11)
- )
)
+ (i32.store
+ (get_local $16)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $26)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $26)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $11)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $16)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $26)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $26)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $11)
- )
- (br $do-once25)
)
- )
- (set_local $6
- (i32.add
- (i32.shl
- (tee_local $10
- (if (result i32)
- (tee_local $11
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $11
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $11
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $11)
- (tee_local $9
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $11)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $11
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $11)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $11)
+ (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)
)
+ (get_local $10)
)
- (get_local $9)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $15
- (i32.shl
- (get_local $1)
- (get_local $11)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $15
+ (i32.shl
+ (get_local $1)
+ (get_local $11)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $15)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $15)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $5)
- (get_local $10)
- )
- (i32.store offset=4
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $1)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $15
- (i32.shl
- (i32.const 1)
- (get_local $10)
)
+ (i32.const 2)
)
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $15)
- )
- )
- (i32.store
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=24
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $5)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $9)
)
- )
- (set_local $15
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $10)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $10)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $1
- (i32.load
- (get_local $6)
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
- )
- (i32.const -8)
- )
- (get_local $3)
- )
- (block
- (set_local $14
- (get_local $1)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (tee_local $6
- (i32.add
- (i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $15)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $15
+ (tee_local $15
(i32.shl
- (get_local $15)
(i32.const 1)
+ (get_local $9)
)
)
- (set_local $1
- (get_local $9)
- )
- (br $while-in28)
)
- (block
- (set_local $23
- (get_local $6)
- )
- (set_local $21
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $1)
- )
- (set_local $7
- (i32.const 145)
+ (get_local $15)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
(i32.store
- (get_local $23)
(get_local $5)
+ (get_local $6)
)
(i32.store offset=24
+ (get_local $6)
(get_local $5)
- (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
(i32.store offset=8
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $15
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $9)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $15
+ )
+ (set_local $1
+ (i32.load
+ (get_local $5)
+ )
+ )
+ (loop $while-in28
+ (set_local $8
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $1)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $10
(i32.load
- (tee_local $1
+ (tee_local $5
(i32.add
- (get_local $14)
- (i32.const 8)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $9
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $15
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
+ )
+ )
+ (set_local $1
+ (get_local $10)
)
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $23
+ (get_local $5)
+ )
+ (set_local $21
+ (get_local $1)
+ )
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $14)
- (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $15)
- (get_local $5)
- )
(i32.store
- (get_local $1)
- (get_local $5)
+ (get_local $23)
+ (get_local $6)
)
- (i32.store offset=8
- (get_local $5)
- (get_local $15)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $14)
+ (get_local $6)
+ (get_local $6)
)
- (i32.store offset=24
- (get_local $5)
- (i32.const 0)
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $15
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $14)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $10
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $14)
+ (get_local $10)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $15)
+ (get_local $6)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $15)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $14)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $15
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $15
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $12)
- (get_local $15)
+ (i32.add
+ (get_local $12)
+ (get_local $15)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(i32.const -1)
)
)
@@ -2804,7 +2792,7 @@
(i32.const 184)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(set_local $14
@@ -2817,7 +2805,7 @@
(tee_local $3
(i32.sub
(get_local $12)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 15)
@@ -2828,7 +2816,7 @@
(tee_local $21
(i32.add
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2853,7 +2841,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -2908,7 +2896,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -2916,7 +2904,7 @@
(tee_local $3
(i32.sub
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2929,7 +2917,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2943,7 +2931,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -3016,7 +3004,7 @@
)
(set_local $14
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 48)
)
)
@@ -3033,7 +3021,7 @@
)
(tee_local $12
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 47)
)
)
@@ -3047,7 +3035,7 @@
)
)
)
- (get_local $9)
+ (get_local $10)
)
(return
(i32.const 0)
@@ -3055,7 +3043,7 @@
)
(if
(if (result i32)
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 616)
)
@@ -3076,7 +3064,7 @@
)
(i32.gt_u
(get_local $16)
- (get_local $10)
+ (get_local $9)
)
)
(i32.const 0)
@@ -3095,7 +3083,7 @@
)
(i32.const 0)
(i32.eq
- (tee_local $7
+ (tee_local $8
(block $label$break$L257 (result i32)
(if
(i32.eqz
@@ -3109,7 +3097,7 @@
(block
(block $label$break$L259
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 200)
)
@@ -3128,13 +3116,13 @@
(get_local $16)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.gt_u
(i32.add
(get_local $26)
(i32.load
- (tee_local $8
+ (tee_local $7
(i32.add
(get_local $16)
(i32.const 4)
@@ -3142,16 +3130,16 @@
)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.const 0)
)
(block
- (set_local $6
+ (set_local $5
(get_local $16)
)
(set_local $1
- (get_local $8)
+ (get_local $7)
)
(br $while-out33)
)
@@ -3163,7 +3151,7 @@
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
(br $label$break$L259)
@@ -3186,14 +3174,14 @@
)
(if
(i32.eq
- (tee_local $8
+ (tee_local $7
(call $_sbrk
(get_local $16)
)
)
(i32.add
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.load
(get_local $1)
@@ -3202,12 +3190,12 @@
)
(if
(i32.ne
- (get_local $8)
+ (get_local $7)
(i32.const -1)
)
(block
(set_local $20
- (get_local $8)
+ (get_local $7)
)
(set_local $22
(get_local $16)
@@ -3219,19 +3207,19 @@
)
(block
(set_local $13
- (get_local $8)
+ (get_local $7)
)
(set_local $18
(get_local $16)
)
- (set_local $7
+ (set_local $8
(i32.const 183)
)
)
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
)
@@ -3240,11 +3228,11 @@
(if
(if (result i32)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 173)
)
(i32.ne
- (tee_local $10
+ (tee_local $9
(call $_sbrk
(i32.const 0)
)
@@ -3257,7 +3245,7 @@
(set_local $0
(if (result i32)
(i32.and
- (tee_local $8
+ (tee_local $7
(i32.add
(tee_local $16
(i32.load
@@ -3268,7 +3256,7 @@
)
)
(tee_local $2
- (get_local $10)
+ (get_local $9)
)
)
(i32.add
@@ -3278,7 +3266,7 @@
)
(i32.and
(i32.add
- (get_local $8)
+ (get_local $7)
(get_local $2)
)
(i32.sub
@@ -3304,7 +3292,7 @@
(i32.and
(i32.gt_u
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
(i32.lt_u
(get_local $0)
@@ -3321,7 +3309,7 @@
)
(i32.gt_u
(get_local $2)
- (tee_local $8
+ (tee_local $7
(i32.load
(i32.const 616)
)
@@ -3329,39 +3317,39 @@
)
)
(i32.const 0)
- (get_local $8)
+ (get_local $7)
)
)
- (if
- (i32.eq
- (tee_local $8
- (call $_sbrk
- (get_local $0)
+ (set_local $18
+ (if (result i32)
+ (i32.eq
+ (tee_local $7
+ (call $_sbrk
+ (get_local $0)
+ )
)
+ (get_local $9)
)
- (get_local $10)
- )
- (block
- (set_local $20
- (get_local $10)
- )
- (set_local $22
- (get_local $0)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- (block
- (set_local $13
- (get_local $8)
+ (block
+ (set_local $20
+ (get_local $9)
+ )
+ (set_local $22
+ (get_local $0)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
)
- (set_local $18
+ (block (result i32)
+ (set_local $13
+ (get_local $7)
+ )
+ (set_local $8
+ (i32.const 183)
+ )
(get_local $0)
)
- (set_local $7
- (i32.const 183)
- )
)
)
)
@@ -3372,81 +3360,79 @@
(block $label$break$L279
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 183)
)
(block
- (set_local $8
+ (set_local $7
(i32.sub
(i32.const 0)
(get_local $18)
)
)
- (if
+ (set_local $4
(if (result i32)
- (i32.and
- (i32.gt_u
- (get_local $14)
- (get_local $18)
- )
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $14)
(get_local $18)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $13)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
+ )
)
)
- )
- (i32.lt_u
- (tee_local $2
- (i32.and
- (i32.add
- (i32.sub
- (get_local $12)
- (get_local $18)
- )
- (tee_local $10
- (i32.load
- (i32.const 656)
+ (i32.lt_u
+ (tee_local $2
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $12)
+ (get_local $18)
+ )
+ (tee_local $9
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $10)
+ (i32.sub
+ (i32.const 0)
+ (get_local $9)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (i32.const 0)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $2)
- )
- (i32.const -1)
+ (i32.const 0)
)
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $8)
+ (get_local $2)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $7)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
(i32.add
(get_local $2)
(get_local $18)
)
)
- )
- (set_local $4
(get_local $18)
)
)
@@ -3521,7 +3507,7 @@
)
)
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 40)
)
)
@@ -3534,14 +3520,14 @@
(set_local $22
(get_local $13)
)
- (set_local $7
+ (set_local $8
(i32.const 193)
)
)
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 193)
)
(block
@@ -3615,7 +3601,7 @@
(set_local $49
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 203)
)
(br $do-out)
@@ -3634,7 +3620,7 @@
(if (result i32)
(if (result i32)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 203)
)
(i32.eqz
@@ -3735,7 +3721,7 @@
(br $do-once40)
)
)
- (set_local $5
+ (set_local $6
(if (result i32)
(i32.lt_u
(get_local $20)
@@ -3780,7 +3766,7 @@
(set_local $40
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 211)
)
(br $while-out42)
@@ -3800,1070 +3786,942 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 211)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $40)
+ (set_local $28
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $40)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $28
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $50)
- (get_local $20)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $40)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $50)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $4)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $40)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $4)
+ )
+ (get_local $22)
)
- (get_local $22)
)
- )
- (set_local $12
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $12
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $3
- (i32.add
- (get_local $18)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $18)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (get_local $18)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $18)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $4
- (i32.add
- (get_local $12)
- (get_local $9)
- )
- )
- (set_local $14
- (i32.sub
- (i32.sub
- (get_local $3)
+ (set_local $4
+ (i32.add
(get_local $12)
+ (get_local $10)
)
- (get_local $9)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $9)
- (i32.const 3)
+ (set_local $14
+ (i32.sub
+ (i32.sub
+ (get_local $3)
+ (get_local $12)
+ )
+ (get_local $10)
+ )
)
- )
- (block $do-once44
- (if
- (i32.ne
- (get_local $3)
- (get_local $13)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
)
- (block
- (if
- (i32.eq
- (get_local $3)
- (i32.load
- (i32.const 196)
+ )
+ (block $do-once44
+ (if
+ (i32.ne
+ (get_local $3)
+ (get_local $13)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $3)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $4)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $4)
- (get_local $0)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
)
- (get_local $0)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $3)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $0)
)
+ (get_local $0)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $1
+ (if
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $3)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.ge_u
+ (block
+ (set_local $1
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $23
- (i32.load offset=24
- (get_local $3)
- )
+ )
+ (set_local $5
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.ge_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.eq
- (tee_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
+ (block
+ (set_local $23
+ (i32.load offset=24
(get_local $3)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $2
- (i32.add
- (tee_local $8
+ )
+ (block $do-once47
+ (if
+ (i32.eq
+ (tee_local $21
+ (i32.load offset=12
+ (get_local $3)
+ )
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $3)
- (i32.const 16)
+ (tee_local $7
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $7
+ (get_local $2)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (get_local $7)
+ )
+ )
+ (get_local $16)
+ (br $do-once47)
+ )
)
)
- (block
- (set_local $0
- (get_local $10)
+ (loop $while-in50
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
- (set_local $8
- (get_local $2)
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
)
(if
- (tee_local $16
- (i32.load
- (get_local $8)
- )
+ (i32.lt_u
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $16)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $7)
+ (i32.const 0)
+ )
+ (set_local $24
+ (get_local $0)
+ )
)
- (br $do-once47)
)
)
- (loop $while-in50
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $3)
+ )
+ )
+ (get_local $6)
+ )
+ (call $_abort)
+ )
(if
- (tee_local $10
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $9
(i32.add
- (get_local $0)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $3)
)
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $8
- (get_local $2)
- )
- (br $while-in50)
- )
+ (call $_abort)
)
(if
- (tee_local $10
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
+ (get_local $21)
+ (i32.const 8)
)
)
)
+ (get_local $3)
)
(block
- (set_local $0
- (get_local $10)
+ (i32.store
+ (get_local $9)
+ (get_local $21)
)
- (set_local $8
+ (i32.store
+ (get_local $7)
(get_local $2)
)
- (br $while-in50)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $8)
- (i32.const 0)
- )
- (set_local $24
- (get_local $0)
+ (set_local $24
+ (get_local $21)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $23)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (get_local $3)
+ (i32.load
(tee_local $2
- (i32.load offset=8
- (get_local $3)
+ (i32.add
+ (i32.shl
+ (tee_local $21
+ (i32.load offset=28
+ (get_local $3)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $5)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $2)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $3)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $23)
+ (i32.const 16)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
(i32.store
- (get_local $10)
- (get_local $21)
+ (get_local $7)
+ (get_local $24)
)
- (i32.store
- (get_local $8)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $24)
)
- (set_local $24
- (get_local $21)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $24)
)
)
- (call $_abort)
+ )
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $24)
+ )
+ (br_if $do-once51
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $21)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $label$break$L331)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $21
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $23)
)
- )
- (block $do-once51
(if
- (i32.ne
- (get_local $3)
+ (tee_local $7
(i32.load
(tee_local $2
(i32.add
- (i32.shl
- (tee_local $21
- (i32.load offset=28
- (get_local $3)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
+ (get_local $3)
+ (i32.const 16)
)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (get_local $21)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $23)
- (i32.const 16)
- )
- )
- )
- (get_local $3)
- )
- (i32.store
- (get_local $8)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $23)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $7)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $7)
(get_local $24)
)
)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $24)
- )
- (br_if $do-once51
- (get_local $24)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $21)
- )
- (i32.const -1)
- )
- )
- )
- (br $label$break$L331)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $21
- (i32.load
- (i32.const 192)
- )
- )
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $23)
- )
- (if
- (tee_local $8
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (br_if $label$break$L331
+ (i32.eqz
+ (tee_local $7
+ (i32.load offset=4
+ (get_local $2)
)
)
)
)
(if
(i32.lt_u
- (get_local $8)
- (get_local $21)
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
- (get_local $8)
+ (get_local $7)
)
(i32.store offset=24
- (get_local $8)
+ (get_local $7)
(get_local $24)
)
)
)
)
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $8
- (i32.load offset=4
- (get_local $2)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $24)
+ (block
+ (set_local $21
+ (i32.load offset=12
+ (get_local $3)
)
)
- )
- )
- (block
- (set_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
- (block $do-once55
- (if
- (i32.ne
- (tee_local $8
- (i32.load offset=8
- (get_local $3)
- )
- )
- (tee_local $23
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (block $do-once55
+ (if
+ (i32.ne
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $3)
)
- (i32.const 216)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
)
- (call $_abort)
- )
- (br_if $do-once55
- (i32.eq
- (i32.load offset=12
- (get_local $8)
+ (tee_local $23
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (get_local $3)
)
)
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $21)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
(get_local $6)
)
- (i32.const -1)
+ (call $_abort)
)
+ (br_if $do-once55
+ (i32.eq
+ (i32.load offset=12
+ (get_local $7)
+ )
+ (get_local $3)
+ )
+ )
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once57
(if
(i32.eq
(get_local $21)
- (get_local $23)
+ (get_local $7)
)
- (set_local $41
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once57
+ (if
+ (i32.eq
+ (get_local $21)
+ (get_local $23)
+ )
+ (set_local $41
+ (i32.add
(get_local $21)
- (get_local $5)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (get_local $6)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $21)
+ (i32.const 8)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
- (set_local $41
- (get_local $2)
+ (block
+ (set_local $41
+ (get_local $2)
+ )
+ (br $do-once57)
)
- (br $do-once57)
)
+ (call $_abort)
)
- (call $_abort)
)
)
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $21)
+ )
+ (i32.store
+ (get_local $41)
+ (get_local $7)
+ )
)
- (i32.store offset=12
- (get_local $8)
- (get_local $21)
- )
- (i32.store
- (get_local $41)
- (get_local $8)
- )
+ )
+ )
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (set_local $14
+ (i32.add
+ (get_local $1)
+ (get_local $14)
)
)
)
- (set_local $3
+ )
+ (i32.store
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $1)
+ (i32.const 4)
)
)
- (set_local $14
- (i32.add
- (get_local $1)
- (get_local $14)
+ (i32.and
+ (i32.load
+ (get_local $5)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $14)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $6)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $14)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $14)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $4)
(get_local $14)
)
- (get_local $14)
- )
- (set_local $6
- (i32.shr_u
- (get_local $14)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $14)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 3)
+ )
)
- (block
- (set_local $0
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $14)
+ (i32.const 256)
+ )
+ (block
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $23
- (i32.load
- (i32.const 176)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $23
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $2
- (i32.shl
- (i32.const 1)
- (get_local $6)
+ (tee_local $2
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $42
+ (get_local $5)
+ )
+ (set_local $34
+ (get_local $9)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $42
- (get_local $6)
- )
- (set_local $34
- (get_local $10)
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $23)
+ (get_local $2)
)
- (br $do-once59)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $23)
- (get_local $2)
+ (set_local $42
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
- )
- (set_local $42
- (i32.add
+ (set_local $34
(get_local $0)
- (i32.const 8)
)
)
- (set_local $34
- (get_local $0)
- )
)
)
+ (i32.store
+ (get_local $42)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $34)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $34)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $0)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $42)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $34)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $34)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $0)
- )
- (br $do-once44)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $1
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $2
- (i32.shr_u
- (get_local $14)
- (i32.const 8)
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $2
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $14)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $14)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $14)
- (i32.add
- (tee_local $16
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $14)
+ (i32.add
+ (tee_local $16
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $2)
- (tee_local $23
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $2)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $2)
+ (tee_local $23
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $2)
+ (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)
)
+ (get_local $23)
)
- (get_local $23)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $6
- (i32.shl
- (get_local $1)
- (get_local $10)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $5
+ (i32.shl
+ (get_local $1)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $6)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $16)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $4)
- (get_local $1)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $16
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- )
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $0)
- (get_local $16)
- )
- )
- (i32.store
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=24
- (get_local $4)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $4)
+ (get_local $1)
)
- )
- (set_local $16
- (i32.shl
- (get_local $14)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $1)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $1)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
- )
- (i32.const -8)
- )
- (get_local $14)
- )
- (block
- (set_local $35
- (get_local $0)
- )
- (set_local $7
- (i32.const 281)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
- (i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $16)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $16
+ (tee_local $16
(i32.shl
- (get_local $16)
(i32.const 1)
+ (get_local $1)
)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in64)
)
- (block
- (set_local $43
- (get_local $2)
- )
- (set_local $51
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $0)
+ (get_local $16)
)
- (set_local $7
- (i32.const 278)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 278)
- )
- (if
- (i32.lt_u
- (get_local $43)
- (i32.load
- (i32.const 192)
)
- )
- (call $_abort)
- (block
(i32.store
- (get_local $43)
+ (get_local $2)
(get_local $4)
)
(i32.store offset=24
(get_local $4)
- (get_local $51)
+ (get_local $2)
)
(i32.store offset=12
(get_local $4)
@@ -4873,133 +4731,258 @@
(get_local $4)
(get_local $4)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 281)
+ (set_local $16
+ (i32.shl
+ (get_local $14)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $1)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $16
+ )
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
+ )
+ (loop $while-in64
+ (set_local $8
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
+ )
+ (get_local $14)
+ )
+ (block
+ (set_local $35
+ (get_local $0)
+ )
+ (br $while-out63
+ (i32.const 281)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $0
+ (tee_local $2
(i32.add
- (get_local $35)
- (i32.const 8)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $43
+ (get_local $2)
)
+ (set_local $51
+ (get_local $0)
+ )
+ (i32.const 278)
)
)
- (i32.ge_u
- (get_local $35)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 278)
+ )
+ (if
+ (i32.lt_u
+ (get_local $43)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $16)
- (get_local $4)
- )
(i32.store
- (get_local $0)
+ (get_local $43)
(get_local $4)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $4)
- (get_local $16)
+ (get_local $51)
)
(i32.store offset=12
(get_local $4)
- (get_local $35)
+ (get_local $4)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $4)
(get_local $4)
- (i32.const 0)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 281)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $16
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $35)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $35)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $16)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $16)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $35)
+ )
+ (i32.store offset=24
+ (get_local $4)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $16
- (i32.add
- (i32.load
- (i32.const 188)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $16
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $16)
- (i32.const 1)
+ (i32.store
+ (i32.const 200)
+ (get_local $4)
+ )
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $16)
+ (i32.const 1)
+ )
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
)
)
)
(loop $while-in66
- (if
+ (set_local $0
(if (result i32)
- (i32.le_u
- (tee_local $4
- (i32.load
- (get_local $28)
+ (if (result i32)
+ (i32.le_u
+ (tee_local $4
+ (i32.load
+ (get_local $28)
+ )
)
+ (get_local $13)
)
- (get_local $13)
- )
- (i32.gt_u
- (tee_local $14
- (i32.add
- (get_local $4)
- (i32.load offset=4
- (get_local $28)
+ (i32.gt_u
+ (tee_local $14
+ (i32.add
+ (get_local $4)
+ (i32.load offset=4
+ (get_local $28)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (set_local $0
(get_local $14)
- )
- (block
- (set_local $28
- (i32.load offset=8
- (get_local $28)
+ (block
+ (set_local $28
+ (i32.load offset=8
+ (get_local $28)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
)
)
@@ -5503,67 +5486,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $8
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $4)
- )
- (block
- (set_local $37
- (get_local $0)
+ (get_local $4)
)
- (set_local $7
- (i32.const 307)
+ (block
+ (set_local $37
+ (get_local $0)
+ )
+ (br $while-out69
+ (i32.const 307)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $3
- (i32.add
+ (if (result i32)
+ (tee_local $1
+ (i32.load
+ (tee_local $3
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $2
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (block
+ (set_local $2
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in70)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in70)
- )
- (block
- (set_local $45
- (get_local $3)
- )
- (set_local $52
- (get_local $0)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $45
+ (get_local $3)
+ )
+ (set_local $52
+ (get_local $0)
+ )
(i32.const 304)
)
)
@@ -5572,7 +5554,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 304)
)
(if
@@ -5604,7 +5586,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 307)
)
(if
@@ -5805,7 +5787,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -5813,7 +5795,7 @@
(tee_local $20
(i32.sub
(get_local $22)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5826,7 +5808,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5840,7 +5822,7 @@
(i32.store offset=4
(get_local $22)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -6249,33 +6231,33 @@
(br $while-in)
)
)
- (if
- (tee_local $10
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $7
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $4
- (get_local $7)
+ (block
+ (set_local $0
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $7)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (block
- (set_local $7
+ (block (result i32)
+ (set_local $9
+ (get_local $4)
+ )
(get_local $0)
)
- (set_local $9
- (get_local $4)
- )
)
)
)
@@ -6578,641 +6560,636 @@
)
(call $_abort)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $5)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $3)
- )
- (get_local $3)
- )
- (set_local $0
- (get_local $3)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 200)
+ (set_local $3
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $6
- (i32.add
- (i32.load
- (i32.const 188)
- )
- (get_local $3)
+ (block (result i32)
+ (i32.store
+ (get_local $5)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 196)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 196)
- )
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $6
+ (i32.store
(i32.add
- (i32.load
- (i32.const 184)
- )
+ (get_local $2)
(get_local $3)
)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.store
- (i32.const 196)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (return)
- )
- )
- (set_local $6
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $3)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.ge_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $7
- (i32.load offset=24
+ (block (result i32)
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (i32.const 200)
+ )
)
- )
- (block $do-once6
- (if
- (i32.eq
- (tee_local $9
- (i32.load offset=12
- (get_local $8)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $3)
)
)
- (get_local $8)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
- )
- )
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
- (block
- (set_local $3
- (get_local $10)
- )
- (set_local $4
- (get_local $0)
+ )
+ (return)
+ )
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
+ )
+ (return)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 184)
)
+ (get_local $3)
)
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
- )
- )
- (set_local $3
- (get_local $0)
- )
- (br $do-once6)
+ )
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
+ )
+ (get_local $6)
+ )
+ (return)
+ )
+ )
+ (set_local $6
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ )
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (block $do-once4
+ (if
+ (i32.ge_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $7
+ (i32.load offset=24
+ (get_local $8)
)
)
- (loop $while-in9
+ (block $do-once6
(if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
- )
+ (i32.eq
+ (tee_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
(block
(set_local $3
- (get_local $10)
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $10)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
+ )
)
- (set_local $4
- (get_local $0)
+ (loop $while-in9
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
)
- (br $while-in9)
- )
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $12
(get_local $3)
- (i32.const 16)
)
)
)
)
(block
- (set_local $3
- (get_local $10)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $10)
+ (get_local $9)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $12
+ (get_local $9)
+ )
+ )
+ (call $_abort)
)
- (br $while-in9)
)
)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (get_local $7)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
- )
- (set_local $12
- (get_local $3)
- )
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
)
- )
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $12)
+ )
+ (if
+ (i32.eqz
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
)
)
- )
- (get_local $8)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $9)
+ (get_local $12)
+ )
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $12)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $12)
+ )
)
)
)
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $10)
- (get_local $9)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $9
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
)
- (set_local $12
- (get_local $9)
+ (i32.store offset=24
+ (get_local $12)
+ (get_local $7)
)
- )
- (call $_abort)
- )
- )
- )
- )
- (if
- (get_local $7)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $5
- (i32.add
- (i32.shl
- (tee_local $9
- (i32.load offset=28
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $5
+ (i32.add
(get_local $8)
+ (i32.const 16)
)
)
- (i32.const 2)
)
- (i32.const 480)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $12)
- )
- (if
- (i32.eqz
- (get_local $12)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $9)
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $12)
+ (get_local $1)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $9)
- )
- (i32.const -1)
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (br $do-once4)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $5)
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $7)
- (i32.const 16)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (get_local $8)
- )
- (i32.store
- (get_local $9)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $7)
- (get_local $12)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $9
- (i32.load
- (i32.const 192)
- )
+ (block
+ (set_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $7)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $5
+ (if
+ (i32.ne
+ (tee_local $1
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (tee_local $7
(i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $1)
+ )
(get_local $8)
- (i32.const 16)
)
+ (call $_abort)
)
)
)
(if
- (i32.lt_u
- (get_local $1)
+ (i32.eq
(get_local $9)
+ (get_local $1)
)
- (call $_abort)
(block
- (i32.store offset=16
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ (i32.const -1)
+ )
+ )
)
- )
- )
- )
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $5)
+ (br $do-once4)
)
)
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (i32.ne
+ (get_local $9)
+ (get_local $7)
)
- (call $_abort)
(block
- (i32.store offset=20
- (get_local $12)
- (get_local $1)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $16
+ (get_local $7)
+ )
+ (call $_abort)
)
)
- )
- )
- )
- )
- )
- (block
- (set_local $9
- (i32.load offset=12
- (get_local $8)
- )
- )
- (if
- (i32.ne
- (tee_local $1
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $7
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
+ (set_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
+ (i32.store offset=12
(get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (get_local $9)
)
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load offset=12
- (get_local $1)
- )
- (get_local $8)
+ (i32.store
+ (get_local $16)
+ (get_local $1)
)
- (call $_abort)
)
)
)
- (if
- (i32.eq
- (get_local $9)
- (get_local $1)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
- )
- (i32.const -1)
- )
- )
- )
- (br $do-once4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
)
)
- (if
- (i32.ne
- (get_local $9)
- (get_local $7)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
)
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $9)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $16
- (get_local $7)
- )
- (call $_abort)
+ (get_local $6)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
)
- (set_local $16
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $6)
)
+ (return)
)
+ (get_local $6)
)
- (i32.store offset=12
- (get_local $1)
- (get_local $9)
- )
- (i32.store
- (get_local $16)
- (get_local $1)
- )
- )
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
)
)
- (block
- (i32.store
- (i32.const 184)
- (get_local $6)
- )
- (return)
- )
- (set_local $0
- (get_local $6)
- )
)
- )
- )
- (set_local $3
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7466,67 +7443,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $17
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $17
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $16
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $16
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $3)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $16)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $16)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7658,10 +7634,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 632)
)
)
@@ -8427,12 +8403,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8455,35 +8431,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/emcc_O2_hello_world.fromasm.imprecise b/test/emcc_O2_hello_world.fromasm.imprecise
index 0c2914079..5701f97bd 100644
--- a/test/emcc_O2_hello_world.fromasm.imprecise
+++ b/test/emcc_O2_hello_world.fromasm.imprecise
@@ -119,9 +119,9 @@
(i32.const 176)
)
)
- (tee_local $6
+ (tee_local $5
(i32.shr_u
- (tee_local $9
+ (tee_local $10
(select
(i32.const 16)
(i32.and
@@ -151,12 +151,12 @@
(i32.add
(tee_local $0
(i32.load
- (tee_local $5
+ (tee_local $6
(i32.add
(tee_local $1
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.xor
(i32.and
@@ -165,7 +165,7 @@
)
(i32.const 1)
)
- (get_local $6)
+ (get_local $5)
)
)
(i32.const 3)
@@ -201,7 +201,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 12)
@@ -212,11 +212,11 @@
)
(block
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $1)
)
(i32.store
- (get_local $5)
+ (get_local $6)
(get_local $2)
)
)
@@ -230,7 +230,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
@@ -242,7 +242,7 @@
(i32.or
(tee_local $2
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
)
@@ -250,7 +250,7 @@
)
)
(i32.store
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.add
(get_local $0)
@@ -261,7 +261,7 @@
)
(i32.or
(i32.load
- (get_local $5)
+ (get_local $6)
)
(i32.const 1)
)
@@ -273,8 +273,8 @@
)
(if
(i32.gt_u
- (get_local $9)
- (tee_local $5
+ (get_local $10)
+ (tee_local $6
(i32.load
(i32.const 184)
)
@@ -294,13 +294,13 @@
(i32.and
(i32.shl
(get_local $2)
- (get_local $6)
+ (get_local $5)
)
(i32.or
(tee_local $2
(i32.shl
(i32.const 2)
- (get_local $6)
+ (get_local $5)
)
)
(i32.sub
@@ -325,7 +325,7 @@
)
(set_local $1
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(tee_local $0
(i32.load
@@ -334,7 +334,7 @@
(tee_local $11
(i32.add
(i32.shl
- (tee_local $10
+ (tee_local $9
(i32.add
(i32.or
(i32.or
@@ -343,7 +343,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -356,12 +356,12 @@
)
(get_local $1)
)
- (tee_local $7
+ (tee_local $8
(i32.and
(i32.shr_u
(tee_local $0
(i32.shr_u
- (get_local $7)
+ (get_local $8)
(get_local $2)
)
)
@@ -377,7 +377,7 @@
(tee_local $11
(i32.shr_u
(get_local $0)
- (get_local $7)
+ (get_local $8)
)
)
(i32.const 1)
@@ -475,21 +475,21 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $10)
+ (get_local $9)
)
(i32.const -1)
)
)
)
(set_local $17
- (get_local $5)
+ (get_local $6)
)
)
)
(i32.store offset=4
(get_local $0)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -497,17 +497,17 @@
(tee_local $15
(i32.add
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
)
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.sub
(i32.shl
- (get_local $10)
+ (get_local $9)
(i32.const 3)
)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 1)
@@ -516,9 +516,9 @@
(i32.store
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
- (get_local $5)
+ (get_local $6)
)
(if
(get_local $17)
@@ -544,7 +544,7 @@
)
(if
(i32.and
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 176)
)
@@ -586,7 +586,7 @@
(i32.store
(i32.const 176)
(i32.or
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -621,14 +621,14 @@
)
(i32.store
(i32.const 184)
- (get_local $5)
+ (get_local $6)
)
(i32.store
(i32.const 196)
(get_local $15)
)
(return
- (get_local $7)
+ (get_local $8)
)
)
)
@@ -642,7 +642,7 @@
(set_local $15
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $6
(i32.add
(i32.and
(get_local $15)
@@ -671,12 +671,12 @@
(i32.or
(i32.or
(i32.or
- (tee_local $5
+ (tee_local $6
(i32.and
(i32.shr_u
(tee_local $11
(i32.shr_u
- (get_local $5)
+ (get_local $6)
(get_local $15)
)
)
@@ -693,7 +693,7 @@
(tee_local $1
(i32.shr_u
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 2)
@@ -720,7 +720,7 @@
(tee_local $2
(i32.and
(i32.shr_u
- (tee_local $6
+ (tee_local $5
(i32.shr_u
(get_local $2)
(get_local $1)
@@ -733,7 +733,7 @@
)
)
(i32.shr_u
- (get_local $6)
+ (get_local $5)
(get_local $2)
)
)
@@ -744,10 +744,10 @@
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
- (set_local $6
+ (set_local $5
(get_local $17)
)
(set_local $1
@@ -755,46 +755,43 @@
)
(loop $while-in
(block $while-out
- (if
- (tee_local $17
- (i32.load offset=16
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $17)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $6)
- )
- )
- (set_local $0
- (get_local $11)
- )
- (block
- (set_local $8
- (get_local $2)
- )
- (set_local $3
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
(set_local $11
(i32.lt_u
(tee_local $17
(i32.sub
(i32.and
(i32.load offset=4
- (get_local $0)
+ (tee_local $0
+ (if (result i32)
+ (tee_local $17
+ (i32.load offset=16
+ (get_local $5)
+ )
+ )
+ (get_local $17)
+ (if (result i32)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
+ (get_local $11)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
)
(i32.const -8)
)
- (get_local $9)
+ (get_local $10)
)
)
(get_local $2)
@@ -807,7 +804,7 @@
(get_local $11)
)
)
- (set_local $6
+ (set_local $5
(get_local $0)
)
(set_local $1
@@ -834,10 +831,10 @@
(if
(i32.ge_u
(get_local $3)
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -851,7 +848,7 @@
(block $do-once4
(if
(i32.eq
- (tee_local $7
+ (tee_local $8
(i32.load offset=12
(get_local $3)
)
@@ -859,45 +856,43 @@
(get_local $3)
)
(block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
+ (set_local $6
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $10)
- )
- (set_local $5
+ (block (result i32)
+ (set_local $17
+ (get_local $9)
+ )
(get_local $0)
)
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $11
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
)
)
)
- )
- (set_local $5
(get_local $11)
+ (br $do-once4)
)
- (br $do-once4)
)
)
(loop $while-in7
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -909,16 +904,16 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
)
)
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(tee_local $0
(i32.add
@@ -930,9 +925,9 @@
)
(block
(set_local $17
- (get_local $10)
+ (get_local $9)
)
- (set_local $5
+ (set_local $6
(get_local $0)
)
(br $while-in7)
@@ -941,13 +936,13 @@
)
(if
(i32.lt_u
- (get_local $5)
+ (get_local $6)
(get_local $1)
)
(call $_abort)
(block
(i32.store
- (get_local $5)
+ (get_local $6)
(i32.const 0)
)
(set_local $19
@@ -971,7 +966,7 @@
(if
(i32.ne
(i32.load
- (tee_local $10
+ (tee_local $9
(i32.add
(get_local $0)
(i32.const 12)
@@ -987,7 +982,7 @@
(i32.load
(tee_local $11
(i32.add
- (get_local $7)
+ (get_local $8)
(i32.const 8)
)
)
@@ -996,15 +991,15 @@
)
(block
(i32.store
- (get_local $10)
- (get_local $7)
+ (get_local $9)
+ (get_local $8)
)
(i32.store
(get_local $11)
(get_local $0)
)
(set_local $19
- (get_local $7)
+ (get_local $8)
)
)
(call $_abort)
@@ -1023,7 +1018,7 @@
(tee_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.load offset=28
(get_local $3)
)
@@ -1054,7 +1049,7 @@
(i32.xor
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
(i32.const -1)
)
@@ -1077,7 +1072,7 @@
(if
(i32.eq
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $2)
(i32.const 16)
@@ -1087,7 +1082,7 @@
(get_local $3)
)
(i32.store
- (get_local $7)
+ (get_local $8)
(get_local $19)
)
(i32.store offset=20
@@ -1105,7 +1100,7 @@
(if
(i32.lt_u
(get_local $19)
- (tee_local $7
+ (tee_local $8
(i32.load
(i32.const 192)
)
@@ -1126,7 +1121,7 @@
(if
(i32.lt_u
(get_local $1)
- (get_local $7)
+ (get_local $8)
)
(call $_abort)
(block
@@ -1172,7 +1167,7 @@
)
(if
(i32.lt_u
- (get_local $8)
+ (get_local $7)
(i32.const 16)
)
(block
@@ -1181,8 +1176,8 @@
(i32.or
(tee_local $2
(i32.add
- (get_local $8)
- (get_local $9)
+ (get_local $7)
+ (get_local $10)
)
)
(i32.const 3)
@@ -1210,23 +1205,23 @@
(i32.store offset=4
(get_local $3)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
(i32.store offset=4
- (get_local $6)
+ (get_local $5)
(i32.or
- (get_local $8)
+ (get_local $7)
(i32.const 1)
)
)
(i32.store
(i32.add
- (get_local $6)
- (get_local $8)
+ (get_local $5)
+ (get_local $7)
)
- (get_local $8)
+ (get_local $7)
)
(if
(tee_local $1
@@ -1243,7 +1238,7 @@
(set_local $1
(i32.add
(i32.shl
- (tee_local $7
+ (tee_local $8
(i32.shr_u
(get_local $1)
(i32.const 3)
@@ -1264,15 +1259,15 @@
(tee_local $11
(i32.shl
(i32.const 1)
- (get_local $7)
+ (get_local $8)
)
)
)
(if
(i32.lt_u
- (tee_local $10
+ (tee_local $9
(i32.load
- (tee_local $7
+ (tee_local $8
(i32.add
(get_local $1)
(i32.const 8)
@@ -1287,10 +1282,10 @@
(call $_abort)
(block
(set_local $39
- (get_local $7)
+ (get_local $8)
)
(set_local $32
- (get_local $10)
+ (get_local $9)
)
)
)
@@ -1333,11 +1328,11 @@
)
(i32.store
(i32.const 184)
- (get_local $8)
+ (get_local $7)
)
(i32.store
(i32.const 196)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -1352,246 +1347,248 @@
)
)
)
- (if
- (i32.le_u
- (get_local $0)
- (i32.const -65)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
- )
- )
- (i32.const -8)
- )
+ (set_local $10
+ (if (result i32)
+ (i32.le_u
+ (get_local $0)
+ (i32.const -65)
)
- (if
- (tee_local $11
- (i32.load
- (i32.const 180)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ )
+ (i32.const -8)
)
)
- (block
- (set_local $0
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (i32.const 180)
)
)
- (block $label$break$L123
- (if
- (tee_local $15
- (i32.load offset=480
- (i32.shl
- (tee_local $9
- (if (result i32)
- (tee_local $10
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $0
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
+ )
+ (block $label$break$L123
+ (if
+ (tee_local $15
+ (i32.load offset=480
+ (i32.shl
+ (tee_local $10
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $9
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $15
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $15
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $7
- (i32.shl
- (get_local $10)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $10)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $8
+ (i32.shl
+ (get_local $9)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $9)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $17
- (i32.shl
- (get_local $7)
- (get_local $10)
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $17
+ (i32.shl
+ (get_local $8)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $17)
- (get_local $7)
+ (i32.shr_u
+ (i32.shl
+ (get_local $17)
+ (get_local $8)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $15)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
)
)
- )
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $17
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $9)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $9)
- (i32.const 31)
- )
- )
+ (block
+ (set_local $8
+ (get_local $0)
)
- )
- (set_local $10
- (get_local $15)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $0
+ (set_local $17
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
(i32.sub
- (tee_local $19
- (i32.and
- (i32.load offset=4
- (get_local $10)
- )
- (i32.const -8)
- )
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $10)
+ (i32.const 1)
)
- (get_local $2)
+ )
+ (i32.eq
+ (get_local $10)
+ (i32.const 31)
)
)
- (get_local $7)
)
+ )
+ (set_local $9
+ (get_local $15)
+ )
+ (loop $while-in14
(if
- (i32.eq
- (get_local $19)
- (get_local $2)
- )
- (block
- (set_local $27
- (get_local $0)
- )
- (set_local $25
- (get_local $10)
- )
- (set_local $29
- (get_local $10)
- )
- (set_local $7
- (i32.const 90)
+ (i32.lt_u
+ (tee_local $0
+ (i32.sub
+ (tee_local $19
+ (i32.and
+ (i32.load offset=4
+ (get_local $9)
+ )
+ (i32.const -8)
+ )
+ )
+ (get_local $2)
+ )
)
- (br $label$break$L123)
+ (get_local $8)
)
- (block
- (set_local $7
- (get_local $0)
- )
- (set_local $5
- (get_local $10)
+ (set_local $6
+ (if (result i32)
+ (i32.eq
+ (get_local $19)
+ (get_local $2)
+ )
+ (block
+ (set_local $27
+ (get_local $0)
+ )
+ (set_local $25
+ (get_local $9)
+ )
+ (set_local $29
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
+ (br $label$break$L123)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $0)
+ )
+ (get_local $9)
+ )
)
)
)
- )
- (set_local $19
- (select
- (get_local $17)
- (tee_local $0
- (i32.load offset=20
- (get_local $10)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $0)
+ (set_local $19
+ (select
+ (get_local $17)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $9)
+ )
)
- (i32.eq
- (get_local $0)
- (tee_local $10
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $0)
+ )
+ (i32.eq
+ (get_local $0)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $10)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1599,1198 +1596,1189 @@
)
)
)
- )
- (if
- (tee_local $0
- (i32.eqz
- (get_local $10)
- )
- )
- (block
- (set_local $33
- (get_local $7)
- )
- (set_local $6
- (get_local $19)
- )
- (set_local $30
- (get_local $5)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $17
- (get_local $19)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $0)
- (i32.const 1)
+ (set_local $5
+ (if (result i32)
+ (tee_local $0
+ (i32.eqz
+ (get_local $9)
+ )
+ )
+ (block (result i32)
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $30
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
+ (get_local $19)
+ )
+ (block
+ (set_local $17
+ (get_local $19)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $0)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $33
- (get_local $0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $33
+ (get_local $0)
+ )
+ (set_local $8
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
- (block
- (if
- (i32.eqz
- (i32.or
- (get_local $6)
- (get_local $30)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 86)
+ )
+ (block
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $5)
+ (get_local $30)
+ )
)
- )
- (block
- (if
- (i32.eqz
- (tee_local $0
- (i32.and
- (get_local $11)
- (i32.or
- (tee_local $15
- (i32.shl
- (i32.const 2)
- (get_local $9)
+ (block
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.and
+ (get_local $11)
+ (i32.or
+ (tee_local $15
+ (i32.shl
+ (i32.const 2)
+ (get_local $10)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $15)
)
)
)
)
- )
- (block
- (set_local $9
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $0
- (i32.and
- (i32.shr_u
- (tee_local $15
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (set_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $15
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $6
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $5
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $15
+ (i32.or
+ (tee_local $15
+ (i32.and
+ (i32.shr_u
+ (tee_local $10
+ (i32.shr_u
+ (get_local $15)
+ (get_local $0)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $0)
+ )
+ (tee_local $10
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $5
(i32.shr_u
+ (get_local $10)
(get_local $15)
- (get_local $0)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $0)
)
- (tee_local $9
+ (tee_local $5
(i32.and
(i32.shr_u
(tee_local $6
(i32.shr_u
- (get_local $9)
- (get_local $15)
+ (get_local $5)
+ (get_local $10)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
(tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $1
(i32.shr_u
(get_local $6)
- (get_local $9)
+ (get_local $5)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $5
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (get_local $6)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $6)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $5)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $27
- (get_local $33)
- )
- (set_local $25
- (get_local $6)
- )
- (set_local $29
- (get_local $30)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $3
- (get_local $33)
+ (if
+ (get_local $5)
+ (block
+ (set_local $27
+ (get_local $33)
+ )
+ (set_local $25
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $30)
+ )
+ (set_local $8
+ (i32.const 90)
+ )
)
- (set_local $12
- (get_local $30)
+ (block
+ (set_local $3
+ (get_local $33)
+ )
+ (set_local $12
+ (get_local $30)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $5
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $25)
+ (loop $while-in16
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $6
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $25)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
- )
- (get_local $27)
- )
- )
- (set_local $6
- (select
- (get_local $5)
- (get_local $27)
- (get_local $1)
- )
- )
- (set_local $5
- (select
- (get_local $25)
- (get_local $29)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $25)
+ (get_local $27)
)
)
- (block
- (set_local $27
+ (set_local $5
+ (select
(get_local $6)
- )
- (set_local $25
+ (get_local $27)
(get_local $1)
)
- (set_local $29
- (get_local $5)
- )
- (br $while-in16)
)
- )
- (if
- (tee_local $25
- (i32.load offset=20
+ (set_local $6
+ (select
(get_local $25)
+ (get_local $29)
+ (get_local $1)
)
)
- (block
- (set_local $27
- (get_local $6)
- )
- (set_local $29
- (get_local $5)
- )
- (br $while-in16)
- )
- (block
- (set_local $3
- (get_local $6)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $25)
+ )
)
- (set_local $12
- (get_local $5)
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $25
+ (get_local $1)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
)
)
- )
- )
- )
- (if
- (select
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
+ (set_local $3
+ (if (result i32)
+ (tee_local $25
+ (i32.load offset=20
+ (get_local $25)
+ )
+ )
+ (block
+ (set_local $27
+ (get_local $5)
+ )
+ (set_local $29
+ (get_local $6)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $12
+ (get_local $6)
+ )
+ (get_local $5)
+ )
)
- (get_local $2)
)
)
- (i32.const 0)
- (get_local $12)
)
- (block
- (if
+ (if (result i32)
+ (select
(i32.lt_u
- (get_local $12)
- (tee_local $11
+ (get_local $3)
+ (i32.sub
(i32.load
- (i32.const 192)
+ (i32.const 184)
)
+ (get_local $2)
)
)
- (call $_abort)
+ (i32.const 0)
+ (get_local $12)
)
- (if
- (i32.ge_u
- (get_local $12)
- (tee_local $5
- (i32.add
- (get_local $12)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $11
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $6
- (i32.load offset=24
- (get_local $12)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $12)
+ (tee_local $6
+ (i32.add
(get_local $12)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $12)
)
- (block
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $12)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $17
- (get_local $0)
- )
- (set_local $1
- (get_local $9)
- )
- )
- (if
- (tee_local $17
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $12)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $15)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $12)
)
- (br $do-once17)
)
+ (get_local $12)
)
- (loop $while-in20
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $12)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $17
- (get_local $0)
+ (block (result i32)
+ (set_local $17
+ (get_local $0)
+ )
+ (get_local $10)
)
- (set_local $1
- (get_local $9)
+ (if (result i32)
+ (tee_local $17
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $15)
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $0
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $17)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $17
- (get_local $0)
+ (if
+ (tee_local $0
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $17)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $9)
+ (block
+ (set_local $17
+ (get_local $0)
+ )
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $11)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $8
- (get_local $17)
+ (get_local $11)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $12)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $7
+ (get_local $17)
)
)
- (get_local $11)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $12)
)
)
+ (get_local $11)
)
- (get_local $12)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $15
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $12)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $1)
- )
- (i32.store
- (get_local $15)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $15
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $12)
)
- (set_local $8
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $10)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $6)
- (block
- (if
- (i32.eq
- (get_local $12)
- (i32.load
- (tee_local $11
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $12)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $12)
+ (i32.load
+ (tee_local $11
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $12)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $11)
- (get_local $8)
- )
- (if
- (i32.eqz
- (get_local $8)
+ (block
+ (i32.store
+ (get_local $11)
+ (get_local $7)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $7)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $12)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $7)
)
- (get_local $12)
- )
- (i32.store
- (get_local $1)
- (get_local $8)
- )
- (i32.store offset=20
- (get_local $6)
- (get_local $8)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $8)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $8)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $6)
- )
- (if
- (tee_local $11
- (i32.load offset=16
- (get_local $12)
- )
+ (i32.store offset=24
+ (get_local $7)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $11)
- (get_local $1)
+ (tee_local $11
+ (i32.load offset=16
+ (get_local $12)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
- )
- (if
- (tee_local $11
- (i32.load offset=20
- (get_local $12)
- )
- )
(if
- (i32.lt_u
- (get_local $11)
- (i32.load
- (i32.const 192)
+ (tee_local $11
+ (i32.load offset=20
+ (get_local $12)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $8)
+ (if
+ (i32.lt_u
(get_local $11)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $11)
- (get_local $8)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $11)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $7)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.ge_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $2)
- (i32.const 3)
- )
+ (block $do-once25
+ (if
+ (i32.ge_u
+ (get_local $3)
+ (i32.const 16)
)
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
- (get_local $3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $6
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $11
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $9
+ (block
+ (set_local $11
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $6)
+ (get_local $5)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $15
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $6
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $10
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $15
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $16
+ (get_local $5)
+ )
+ (set_local $26
+ (get_local $15)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $10)
+ )
+ )
(set_local $16
- (get_local $6)
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
(set_local $26
- (get_local $15)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $16
- (i32.add
(get_local $11)
- (i32.const 8)
)
)
- (set_local $26
- (get_local $11)
- )
)
+ (i32.store
+ (get_local $16)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $26)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $26)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $11)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $16)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $26)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $26)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $11)
- )
- (br $do-once25)
)
- )
- (set_local $6
- (i32.add
- (i32.shl
- (tee_local $10
- (if (result i32)
- (tee_local $11
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $11
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $11
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $11)
- (tee_local $9
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $11)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $11
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $11)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $11)
+ (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)
)
+ (get_local $10)
)
- (get_local $9)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $15
- (i32.shl
- (get_local $1)
- (get_local $11)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $15
+ (i32.shl
+ (get_local $1)
+ (get_local $11)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $15)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $15)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $5)
- (get_local $10)
- )
- (i32.store offset=4
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $1)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $15
- (i32.shl
- (i32.const 1)
- (get_local $10)
)
+ (i32.const 2)
)
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $15)
- )
- )
- (i32.store
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=24
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $5)
- )
- (i32.store offset=8
- (get_local $5)
- (get_local $5)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $9)
)
- )
- (set_local $15
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $10)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $10)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $1
- (i32.load
- (get_local $6)
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
- )
- (i32.const -8)
- )
- (get_local $3)
- )
- (block
- (set_local $14
- (get_local $1)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (tee_local $6
- (i32.add
- (i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $15)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $15
+ (tee_local $15
(i32.shl
- (get_local $15)
(i32.const 1)
+ (get_local $9)
)
)
- (set_local $1
- (get_local $9)
- )
- (br $while-in28)
)
- (block
- (set_local $23
- (get_local $6)
- )
- (set_local $21
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $1)
+ (get_local $15)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
)
- )
- (call $_abort)
- (block
(i32.store
- (get_local $23)
(get_local $5)
+ (get_local $6)
)
(i32.store offset=24
+ (get_local $6)
(get_local $5)
- (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
(i32.store offset=8
- (get_local $5)
- (get_local $5)
+ (get_local $6)
+ (get_local $6)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $15
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $9)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $15
+ )
+ (set_local $1
+ (i32.load
+ (get_local $5)
+ )
+ )
+ (loop $while-in28
+ (set_local $8
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $1)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $10
(i32.load
- (tee_local $1
+ (tee_local $5
(i32.add
- (get_local $14)
- (i32.const 8)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $9
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $15
+ (i32.shl
+ (get_local $15)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $10)
+ )
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $23
+ (get_local $5)
+ )
+ (set_local $21
+ (get_local $1)
+ )
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $14)
- (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $15)
- (get_local $5)
- )
(i32.store
- (get_local $1)
- (get_local $5)
+ (get_local $23)
+ (get_local $6)
)
- (i32.store offset=8
- (get_local $5)
- (get_local $15)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $21)
)
(i32.store offset=12
- (get_local $5)
- (get_local $14)
+ (get_local $6)
+ (get_local $6)
)
- (i32.store offset=24
- (get_local $5)
- (i32.const 0)
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $15
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $14)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $10
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $14)
+ (get_local $10)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $15)
+ (get_local $6)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $15)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $14)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $15
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $15
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $12)
- (get_local $15)
+ (i32.add
+ (get_local $12)
+ (get_local $15)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(get_local $2)
)
)
- )
- (set_local $9
(i32.const -1)
)
)
@@ -2803,7 +2791,7 @@
(i32.const 184)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(set_local $14
@@ -2816,7 +2804,7 @@
(tee_local $3
(i32.sub
(get_local $12)
- (get_local $9)
+ (get_local $10)
)
)
(i32.const 15)
@@ -2827,7 +2815,7 @@
(tee_local $21
(i32.add
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2852,7 +2840,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -2907,7 +2895,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -2915,7 +2903,7 @@
(tee_local $3
(i32.sub
(get_local $14)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2928,7 +2916,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -2942,7 +2930,7 @@
(i32.store offset=4
(get_local $14)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -3015,7 +3003,7 @@
)
(set_local $14
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 48)
)
)
@@ -3032,7 +3020,7 @@
)
(tee_local $12
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 47)
)
)
@@ -3046,7 +3034,7 @@
)
)
)
- (get_local $9)
+ (get_local $10)
)
(return
(i32.const 0)
@@ -3054,7 +3042,7 @@
)
(if
(if (result i32)
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 616)
)
@@ -3075,7 +3063,7 @@
)
(i32.gt_u
(get_local $16)
- (get_local $10)
+ (get_local $9)
)
)
(i32.const 0)
@@ -3094,7 +3082,7 @@
)
(i32.const 0)
(i32.eq
- (tee_local $7
+ (tee_local $8
(block $label$break$L257 (result i32)
(if
(i32.eqz
@@ -3108,7 +3096,7 @@
(block
(block $label$break$L259
(if
- (tee_local $10
+ (tee_local $9
(i32.load
(i32.const 200)
)
@@ -3127,13 +3115,13 @@
(get_local $16)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.gt_u
(i32.add
(get_local $26)
(i32.load
- (tee_local $8
+ (tee_local $7
(i32.add
(get_local $16)
(i32.const 4)
@@ -3141,16 +3129,16 @@
)
)
)
- (get_local $10)
+ (get_local $9)
)
(i32.const 0)
)
(block
- (set_local $6
+ (set_local $5
(get_local $16)
)
(set_local $1
- (get_local $8)
+ (get_local $7)
)
(br $while-out33)
)
@@ -3162,7 +3150,7 @@
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
(br $label$break$L259)
@@ -3185,14 +3173,14 @@
)
(if
(i32.eq
- (tee_local $8
+ (tee_local $7
(call $_sbrk
(get_local $16)
)
)
(i32.add
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.load
(get_local $1)
@@ -3201,12 +3189,12 @@
)
(if
(i32.ne
- (get_local $8)
+ (get_local $7)
(i32.const -1)
)
(block
(set_local $20
- (get_local $8)
+ (get_local $7)
)
(set_local $22
(get_local $16)
@@ -3218,19 +3206,19 @@
)
(block
(set_local $13
- (get_local $8)
+ (get_local $7)
)
(set_local $18
(get_local $16)
)
- (set_local $7
+ (set_local $8
(i32.const 183)
)
)
)
)
)
- (set_local $7
+ (set_local $8
(i32.const 173)
)
)
@@ -3239,11 +3227,11 @@
(if
(if (result i32)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 173)
)
(i32.ne
- (tee_local $10
+ (tee_local $9
(call $_sbrk
(i32.const 0)
)
@@ -3256,7 +3244,7 @@
(set_local $0
(if (result i32)
(i32.and
- (tee_local $8
+ (tee_local $7
(i32.add
(tee_local $16
(i32.load
@@ -3267,7 +3255,7 @@
)
)
(tee_local $2
- (get_local $10)
+ (get_local $9)
)
)
(i32.add
@@ -3277,7 +3265,7 @@
)
(i32.and
(i32.add
- (get_local $8)
+ (get_local $7)
(get_local $2)
)
(i32.sub
@@ -3303,7 +3291,7 @@
(i32.and
(i32.gt_u
(get_local $0)
- (get_local $9)
+ (get_local $10)
)
(i32.lt_u
(get_local $0)
@@ -3320,7 +3308,7 @@
)
(i32.gt_u
(get_local $2)
- (tee_local $8
+ (tee_local $7
(i32.load
(i32.const 616)
)
@@ -3328,39 +3316,39 @@
)
)
(i32.const 0)
- (get_local $8)
+ (get_local $7)
)
)
- (if
- (i32.eq
- (tee_local $8
- (call $_sbrk
- (get_local $0)
+ (set_local $18
+ (if (result i32)
+ (i32.eq
+ (tee_local $7
+ (call $_sbrk
+ (get_local $0)
+ )
)
+ (get_local $9)
)
- (get_local $10)
- )
- (block
- (set_local $20
- (get_local $10)
- )
- (set_local $22
- (get_local $0)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- (block
- (set_local $13
- (get_local $8)
+ (block
+ (set_local $20
+ (get_local $9)
+ )
+ (set_local $22
+ (get_local $0)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
)
- (set_local $18
+ (block (result i32)
+ (set_local $13
+ (get_local $7)
+ )
+ (set_local $8
+ (i32.const 183)
+ )
(get_local $0)
)
- (set_local $7
- (i32.const 183)
- )
)
)
)
@@ -3371,81 +3359,79 @@
(block $label$break$L279
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 183)
)
(block
- (set_local $8
+ (set_local $7
(i32.sub
(i32.const 0)
(get_local $18)
)
)
- (if
+ (set_local $4
(if (result i32)
- (i32.and
- (i32.gt_u
- (get_local $14)
- (get_local $18)
- )
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $14)
(get_local $18)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $13)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
+ )
)
)
- )
- (i32.lt_u
- (tee_local $2
- (i32.and
- (i32.add
- (i32.sub
- (get_local $12)
- (get_local $18)
- )
- (tee_local $10
- (i32.load
- (i32.const 656)
+ (i32.lt_u
+ (tee_local $2
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $12)
+ (get_local $18)
+ )
+ (tee_local $9
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $10)
+ (i32.sub
+ (i32.const 0)
+ (get_local $9)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (i32.const 0)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $2)
- )
- (i32.const -1)
+ (i32.const 0)
)
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $8)
+ (get_local $2)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $7)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
(i32.add
(get_local $2)
(get_local $18)
)
)
- )
- (set_local $4
(get_local $18)
)
)
@@ -3520,7 +3506,7 @@
)
)
(i32.add
- (get_local $9)
+ (get_local $10)
(i32.const 40)
)
)
@@ -3533,14 +3519,14 @@
(set_local $22
(get_local $13)
)
- (set_local $7
+ (set_local $8
(i32.const 193)
)
)
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 193)
)
(block
@@ -3614,7 +3600,7 @@
(set_local $49
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 203)
)
(br $do-out)
@@ -3653,7 +3639,7 @@
)
(i32.const 0)
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 203)
)
)
@@ -3734,7 +3720,7 @@
(br $do-once40)
)
)
- (set_local $5
+ (set_local $6
(if (result i32)
(i32.lt_u
(get_local $20)
@@ -3779,7 +3765,7 @@
(set_local $40
(get_local $4)
)
- (set_local $7
+ (set_local $8
(i32.const 211)
)
(br $while-out42)
@@ -3799,1070 +3785,942 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 211)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $40)
+ (set_local $28
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $40)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $28
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $50)
- (get_local $20)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $40)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $50)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $4)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $40)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $4)
+ )
+ (get_local $22)
)
- (get_local $22)
)
- )
- (set_local $12
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $12
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $3
- (i32.add
- (get_local $18)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $18)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (get_local $18)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $18)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
- )
- (set_local $4
- (i32.add
- (get_local $12)
- (get_local $9)
- )
- )
- (set_local $14
- (i32.sub
- (i32.sub
- (get_local $3)
+ (set_local $4
+ (i32.add
(get_local $12)
+ (get_local $10)
)
- (get_local $9)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $9)
- (i32.const 3)
+ (set_local $14
+ (i32.sub
+ (i32.sub
+ (get_local $3)
+ (get_local $12)
+ )
+ (get_local $10)
+ )
)
- )
- (block $do-once44
- (if
- (i32.ne
- (get_local $3)
- (get_local $13)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
)
- (block
- (if
- (i32.eq
- (get_local $3)
- (i32.load
- (i32.const 196)
+ )
+ (block $do-once44
+ (if
+ (i32.ne
+ (get_local $3)
+ (get_local $13)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $3)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $4)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $4)
- (get_local $0)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
)
- (get_local $0)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $3)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $0)
)
+ (get_local $0)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $1
+ (if
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $3)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.ge_u
+ (block
+ (set_local $1
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $23
- (i32.load offset=24
- (get_local $3)
- )
+ )
+ (set_local $5
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.ge_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.eq
- (tee_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
+ (block
+ (set_local $23
+ (i32.load offset=24
(get_local $3)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $2
- (i32.add
- (tee_local $8
+ )
+ (block $do-once47
+ (if
+ (i32.eq
+ (tee_local $21
+ (i32.load offset=12
+ (get_local $3)
+ )
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $3)
- (i32.const 16)
+ (tee_local $7
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $7
+ (get_local $2)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (get_local $7)
+ )
+ )
+ (get_local $16)
+ (br $do-once47)
+ )
)
)
- (block
- (set_local $0
- (get_local $10)
+ (loop $while-in50
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
- (set_local $8
- (get_local $2)
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $7
+ (get_local $2)
+ )
+ (br $while-in50)
+ )
)
)
(if
- (tee_local $16
- (i32.load
- (get_local $8)
- )
+ (i32.lt_u
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $16)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $7)
+ (i32.const 0)
+ )
+ (set_local $24
+ (get_local $0)
+ )
)
- (br $do-once47)
)
)
- (loop $while-in50
+ (block
(if
- (tee_local $10
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $3)
+ )
+ )
+ (get_local $6)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $9
(i32.add
- (get_local $0)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $3)
)
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $8
- (get_local $2)
- )
- (br $while-in50)
- )
+ (call $_abort)
)
(if
- (tee_local $10
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
+ (get_local $21)
+ (i32.const 8)
)
)
)
+ (get_local $3)
)
(block
- (set_local $0
- (get_local $10)
+ (i32.store
+ (get_local $9)
+ (get_local $21)
)
- (set_local $8
+ (i32.store
+ (get_local $7)
(get_local $2)
)
- (br $while-in50)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $8)
- (i32.const 0)
- )
- (set_local $24
- (get_local $0)
+ (set_local $24
+ (get_local $21)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $23)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (get_local $3)
+ (i32.load
(tee_local $2
- (i32.load offset=8
- (get_local $3)
+ (i32.add
+ (i32.shl
+ (tee_local $21
+ (i32.load offset=28
+ (get_local $3)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $5)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $2)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $3)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $23)
+ (i32.const 16)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
(i32.store
- (get_local $10)
- (get_local $21)
+ (get_local $7)
+ (get_local $24)
)
- (i32.store
- (get_local $8)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $24)
)
- (set_local $24
- (get_local $21)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $24)
)
)
- (call $_abort)
+ )
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $24)
+ )
+ (br_if $do-once51
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $21)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $label$break$L331)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $21
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $23)
)
- )
- (block $do-once51
(if
- (i32.ne
- (get_local $3)
+ (tee_local $7
(i32.load
(tee_local $2
(i32.add
- (i32.shl
- (tee_local $21
- (i32.load offset=28
- (get_local $3)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
+ (get_local $3)
+ (i32.const 16)
)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $23)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (get_local $21)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $8
- (i32.add
- (get_local $23)
- (i32.const 16)
- )
- )
- )
- (get_local $3)
- )
- (i32.store
- (get_local $8)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $23)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $7)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $7)
(get_local $24)
)
)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $24)
- )
- (br_if $do-once51
- (get_local $24)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $21)
- )
- (i32.const -1)
- )
- )
- )
- (br $label$break$L331)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $21
- (i32.load
- (i32.const 192)
- )
- )
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $23)
- )
- (if
- (tee_local $8
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $3)
- (i32.const 16)
+ (br_if $label$break$L331
+ (i32.eqz
+ (tee_local $7
+ (i32.load offset=4
+ (get_local $2)
)
)
)
)
(if
(i32.lt_u
- (get_local $8)
- (get_local $21)
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
- (get_local $8)
+ (get_local $7)
)
(i32.store offset=24
- (get_local $8)
+ (get_local $7)
(get_local $24)
)
)
)
)
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $8
- (i32.load offset=4
- (get_local $2)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $24)
+ (block
+ (set_local $21
+ (i32.load offset=12
+ (get_local $3)
)
)
- )
- )
- (block
- (set_local $21
- (i32.load offset=12
- (get_local $3)
- )
- )
- (block $do-once55
- (if
- (i32.ne
- (tee_local $8
- (i32.load offset=8
- (get_local $3)
- )
- )
- (tee_local $23
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (block $do-once55
+ (if
+ (i32.ne
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $3)
)
- (i32.const 216)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (get_local $5)
)
- (call $_abort)
- )
- (br_if $do-once55
- (i32.eq
- (i32.load offset=12
- (get_local $8)
+ (tee_local $23
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (get_local $3)
)
)
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $21)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
(get_local $6)
)
- (i32.const -1)
+ (call $_abort)
)
+ (br_if $do-once55
+ (i32.eq
+ (i32.load offset=12
+ (get_local $7)
+ )
+ (get_local $3)
+ )
+ )
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once57
(if
(i32.eq
(get_local $21)
- (get_local $23)
+ (get_local $7)
)
- (set_local $41
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once57
+ (if
+ (i32.eq
+ (get_local $21)
+ (get_local $23)
+ )
+ (set_local $41
+ (i32.add
(get_local $21)
- (get_local $5)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $21)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (get_local $6)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $21)
+ (i32.const 8)
+ )
)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (block
- (set_local $41
- (get_local $2)
+ (block
+ (set_local $41
+ (get_local $2)
+ )
+ (br $do-once57)
)
- (br $do-once57)
)
+ (call $_abort)
)
- (call $_abort)
)
)
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $21)
+ )
+ (i32.store
+ (get_local $41)
+ (get_local $7)
+ )
)
- (i32.store offset=12
- (get_local $8)
- (get_local $21)
- )
- (i32.store
- (get_local $41)
- (get_local $8)
- )
+ )
+ )
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (set_local $14
+ (i32.add
+ (get_local $1)
+ (get_local $14)
)
)
)
- (set_local $3
+ )
+ (i32.store
+ (tee_local $5
(i32.add
(get_local $3)
- (get_local $1)
+ (i32.const 4)
)
)
- (set_local $14
- (i32.add
- (get_local $1)
- (get_local $14)
+ (i32.and
+ (i32.load
+ (get_local $5)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $14)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $6)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (get_local $14)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
(get_local $14)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
- (get_local $4)
- (get_local $14)
- )
- (get_local $14)
- )
- (set_local $6
- (i32.shr_u
- (get_local $14)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $14)
- (i32.const 256)
+ (set_local $5
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 3)
+ )
)
- (block
- (set_local $0
- (i32.add
- (i32.shl
- (get_local $6)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $14)
+ (i32.const 256)
+ )
+ (block
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $23
- (i32.load
- (i32.const 176)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $23
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $2
- (i32.shl
- (i32.const 1)
- (get_local $6)
+ (tee_local $2
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $42
+ (get_local $5)
+ )
+ (set_local $34
+ (get_local $9)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $42
- (get_local $6)
- )
- (set_local $34
- (get_local $10)
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $23)
+ (get_local $2)
)
- (br $do-once59)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $23)
- (get_local $2)
+ (set_local $42
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
)
- )
- (set_local $42
- (i32.add
+ (set_local $34
(get_local $0)
- (i32.const 8)
)
)
- (set_local $34
- (get_local $0)
- )
)
)
+ (i32.store
+ (get_local $42)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $34)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $34)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $0)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $42)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $34)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $34)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $0)
- )
- (br $do-once44)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $1
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $2
- (i32.shr_u
- (get_local $14)
- (i32.const 8)
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $2
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $14)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $14)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $14)
- (i32.add
- (tee_local $16
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $14)
+ (i32.add
+ (tee_local $16
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $2)
- (tee_local $23
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $2)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $9
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $2)
+ (tee_local $23
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $2)
+ (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)
)
+ (get_local $23)
)
- (get_local $23)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $6
- (i32.shl
- (get_local $1)
- (get_local $10)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $5
+ (i32.shl
+ (get_local $1)
+ (get_local $9)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $6)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $16)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (get_local $4)
- (get_local $1)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 180)
- )
- )
- (tee_local $16
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- )
+ (i32.const 480)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $0)
- (get_local $16)
- )
- )
- (i32.store
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=24
- (get_local $4)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $4)
+ (get_local $1)
)
- )
- (set_local $16
- (i32.shl
- (get_local $14)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $1)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $1)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
- )
- (i32.const -8)
- )
- (get_local $14)
- )
- (block
- (set_local $35
- (get_local $0)
- )
- (set_local $7
- (i32.const 281)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
- (i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $16)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
)
)
- )
- (block
- (set_local $16
+ (tee_local $16
(i32.shl
- (get_local $16)
(i32.const 1)
+ (get_local $1)
)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in64)
)
- (block
- (set_local $43
- (get_local $2)
- )
- (set_local $51
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
(get_local $0)
+ (get_local $16)
)
- (set_local $7
- (i32.const 278)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 278)
- )
- (if
- (i32.lt_u
- (get_local $43)
- (i32.load
- (i32.const 192)
)
- )
- (call $_abort)
- (block
(i32.store
- (get_local $43)
+ (get_local $2)
(get_local $4)
)
(i32.store offset=24
(get_local $4)
- (get_local $51)
+ (get_local $2)
)
(i32.store offset=12
(get_local $4)
@@ -4872,133 +4730,258 @@
(get_local $4)
(get_local $4)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 281)
+ (set_local $16
+ (i32.shl
+ (get_local $14)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $1)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $16
+ )
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
+ )
+ (loop $while-in64
+ (set_local $8
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
+ )
+ (get_local $14)
+ )
+ (block
+ (set_local $35
+ (get_local $0)
+ )
+ (br $while-out63
+ (i32.const 281)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $0
+ (tee_local $2
(i32.add
- (get_local $35)
- (i32.const 8)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (i32.shl
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $43
+ (get_local $2)
+ )
+ (set_local $51
+ (get_local $0)
)
+ (i32.const 278)
)
)
- (i32.ge_u
- (get_local $35)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 278)
+ )
+ (if
+ (i32.lt_u
+ (get_local $43)
+ (i32.load
+ (i32.const 192)
)
)
+ (call $_abort)
(block
- (i32.store offset=12
- (get_local $16)
- (get_local $4)
- )
(i32.store
- (get_local $0)
+ (get_local $43)
(get_local $4)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $4)
- (get_local $16)
+ (get_local $51)
)
(i32.store offset=12
(get_local $4)
- (get_local $35)
+ (get_local $4)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $4)
(get_local $4)
- (i32.const 0)
)
)
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.const 281)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $16
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $35)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $35)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $16)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $16)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $35)
+ )
+ (i32.store offset=24
+ (get_local $4)
+ (i32.const 0)
+ )
+ )
+ (call $_abort)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $16
- (i32.add
- (i32.load
- (i32.const 188)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $16
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $14)
)
- (get_local $14)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $4)
- )
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $16)
- (i32.const 1)
+ (i32.store
+ (i32.const 200)
+ (get_local $4)
+ )
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $16)
+ (i32.const 1)
+ )
)
)
)
)
- )
- (return
- (i32.add
- (get_local $12)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $12)
+ (i32.const 8)
+ )
)
)
)
)
)
(loop $while-in66
- (if
+ (set_local $0
(if (result i32)
- (i32.le_u
- (tee_local $4
- (i32.load
- (get_local $28)
+ (if (result i32)
+ (i32.le_u
+ (tee_local $4
+ (i32.load
+ (get_local $28)
+ )
)
+ (get_local $13)
)
- (get_local $13)
- )
- (i32.gt_u
- (tee_local $14
- (i32.add
- (get_local $4)
- (i32.load offset=4
- (get_local $28)
+ (i32.gt_u
+ (tee_local $14
+ (i32.add
+ (get_local $4)
+ (i32.load offset=4
+ (get_local $28)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (set_local $0
(get_local $14)
- )
- (block
- (set_local $28
- (i32.load offset=8
- (get_local $28)
+ (block
+ (set_local $28
+ (i32.load offset=8
+ (get_local $28)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
)
)
@@ -5502,67 +5485,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $8
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $4)
- )
- (block
- (set_local $37
- (get_local $0)
+ (get_local $4)
)
- (set_local $7
- (i32.const 307)
+ (block
+ (set_local $37
+ (get_local $0)
+ )
+ (br $while-out69
+ (i32.const 307)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $3
- (i32.add
+ (if (result i32)
+ (tee_local $1
+ (i32.load
+ (tee_local $3
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $2
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (block
+ (set_local $2
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in70)
)
- (set_local $0
- (get_local $1)
- )
- (br $while-in70)
- )
- (block
- (set_local $45
- (get_local $3)
- )
- (set_local $52
- (get_local $0)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $45
+ (get_local $3)
+ )
+ (set_local $52
+ (get_local $0)
+ )
(i32.const 304)
)
)
@@ -5571,7 +5553,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 304)
)
(if
@@ -5603,7 +5585,7 @@
)
(if
(i32.eq
- (get_local $7)
+ (get_local $8)
(i32.const 307)
)
(if
@@ -5804,7 +5786,7 @@
(i32.const 188)
)
)
- (get_local $9)
+ (get_local $10)
)
(block
(i32.store
@@ -5812,7 +5794,7 @@
(tee_local $20
(i32.sub
(get_local $22)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5825,7 +5807,7 @@
(i32.const 200)
)
)
- (get_local $9)
+ (get_local $10)
)
)
)
@@ -5839,7 +5821,7 @@
(i32.store offset=4
(get_local $22)
(i32.or
- (get_local $9)
+ (get_local $10)
(i32.const 3)
)
)
@@ -6248,33 +6230,33 @@
(br $while-in)
)
)
- (if
- (tee_local $10
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $7
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $10)
- )
- (set_local $4
- (get_local $7)
+ (block
+ (set_local $0
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $7)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (block
- (set_local $7
+ (block (result i32)
+ (set_local $9
+ (get_local $4)
+ )
(get_local $0)
)
- (set_local $9
- (get_local $4)
- )
)
)
)
@@ -6577,641 +6559,636 @@
)
(call $_abort)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $5)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $3)
- )
- (get_local $3)
- )
- (set_local $0
- (get_local $3)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 200)
+ (set_local $3
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $6
- (i32.add
- (i32.load
- (i32.const 188)
- )
- (get_local $3)
+ (block (result i32)
+ (i32.store
+ (get_local $5)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 196)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 196)
- )
- )
- (block
- (i32.store
- (i32.const 184)
- (tee_local $6
+ (i32.store
(i32.add
- (i32.load
- (i32.const 184)
- )
+ (get_local $2)
(get_local $3)
)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.store
- (i32.const 196)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (return)
- )
- )
- (set_local $6
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $3)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.ge_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $7
- (i32.load offset=24
+ (block (result i32)
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (i32.const 200)
+ )
)
- )
- (block $do-once6
- (if
- (i32.eq
- (tee_local $9
- (i32.load offset=12
- (get_local $8)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $3)
)
)
- (get_local $8)
)
- (block
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
- )
- )
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
- (block
- (set_local $3
- (get_local $10)
- )
- (set_local $4
- (get_local $0)
+ )
+ (return)
+ )
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
+ )
+ (return)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $6
+ (i32.add
+ (i32.load
+ (i32.const 184)
)
+ (get_local $3)
)
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
- )
- )
- (set_local $3
- (get_local $0)
- )
- (br $do-once6)
+ )
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
+ )
+ (get_local $6)
+ )
+ (return)
+ )
+ )
+ (set_local $6
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $3)
+ )
+ )
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (block $do-once4
+ (if
+ (i32.ge_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $7
+ (i32.load offset=24
+ (get_local $8)
)
)
- (loop $while-in9
+ (block $do-once6
(if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 20)
- )
+ (i32.eq
+ (tee_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
(block
(set_local $3
- (get_local $10)
+ (if (result i32)
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $10)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
+ )
)
- (set_local $4
- (get_local $0)
+ (loop $while-in9
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $10
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $10)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
)
- (br $while-in9)
- )
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $0
- (i32.add
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $12
(get_local $3)
- (i32.const 16)
)
)
)
)
(block
- (set_local $3
- (get_local $10)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $10)
+ (get_local $9)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $12
+ (get_local $9)
+ )
+ )
+ (call $_abort)
)
- (br $while-in9)
)
)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (get_local $7)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
- )
- (set_local $12
- (get_local $3)
- )
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
+ (if
+ (i32.eq
(get_local $8)
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (i32.shl
+ (tee_local $9
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
)
- )
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $12)
+ )
+ (if
+ (i32.eqz
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
)
)
- )
- (get_local $8)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $9)
+ (get_local $12)
+ )
+ (i32.store offset=20
+ (get_local $7)
+ (get_local $12)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $12)
+ )
)
)
)
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $10)
- (get_local $9)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $9
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
)
- (set_local $12
- (get_local $9)
+ (i32.store offset=24
+ (get_local $12)
+ (get_local $7)
)
- )
- (call $_abort)
- )
- )
- )
- )
- (if
- (get_local $7)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $5
- (i32.add
- (i32.shl
- (tee_local $9
- (i32.load offset=28
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $5
+ (i32.add
(get_local $8)
+ (i32.const 16)
)
)
- (i32.const 2)
)
- (i32.const 480)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $12)
- )
- (if
- (i32.eqz
- (get_local $12)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $9)
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $12)
+ (get_local $1)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $9)
- )
- (i32.const -1)
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (br $do-once4)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $5)
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $7)
- (i32.const 16)
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $12)
)
)
)
- (get_local $8)
- )
- (i32.store
- (get_local $9)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $7)
- (get_local $12)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $9
- (i32.load
- (i32.const 192)
- )
+ (block
+ (set_local $9
+ (i32.load offset=12
+ (get_local $8)
)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $7)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $5
+ (if
+ (i32.ne
+ (tee_local $1
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
+ (tee_local $7
(i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $1)
+ )
(get_local $8)
- (i32.const 16)
)
+ (call $_abort)
)
)
)
(if
- (i32.lt_u
- (get_local $1)
+ (i32.eq
(get_local $9)
+ (get_local $1)
)
- (call $_abort)
(block
- (i32.store offset=16
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ (i32.const -1)
+ )
+ )
)
- )
- )
- )
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $5)
+ (br $do-once4)
)
)
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (i32.ne
+ (get_local $9)
+ (get_local $7)
)
- (call $_abort)
(block
- (i32.store offset=20
- (get_local $12)
- (get_local $1)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $12)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $16
+ (get_local $7)
+ )
+ (call $_abort)
)
)
- )
- )
- )
- )
- )
- (block
- (set_local $9
- (i32.load offset=12
- (get_local $8)
- )
- )
- (if
- (i32.ne
- (tee_local $1
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $7
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
+ (set_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
+ (i32.store offset=12
(get_local $1)
- (i32.load
- (i32.const 192)
- )
+ (get_local $9)
)
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load offset=12
- (get_local $1)
- )
- (get_local $8)
+ (i32.store
+ (get_local $16)
+ (get_local $1)
)
- (call $_abort)
)
)
)
- (if
- (i32.eq
- (get_local $9)
- (get_local $1)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
- )
- (i32.const -1)
- )
- )
- )
- (br $do-once4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
)
)
- (if
- (i32.ne
- (get_local $9)
- (get_local $7)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $6)
)
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $9)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $16
- (get_local $7)
- )
- (call $_abort)
+ (get_local $6)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
)
)
- (set_local $16
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $6)
)
+ (return)
)
+ (get_local $6)
)
- (i32.store offset=12
- (get_local $1)
- (get_local $9)
- )
- (i32.store
- (get_local $16)
- (get_local $1)
- )
- )
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
)
)
- (block
- (i32.store
- (i32.const 184)
- (get_local $6)
- )
- (return)
- )
- (set_local $0
- (get_local $6)
- )
)
- )
- )
- (set_local $3
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7465,67 +7442,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $17
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $17
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $16
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $16
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $3)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $16)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $16)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7657,10 +7633,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 632)
)
)
@@ -8421,12 +8397,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8449,35 +8425,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm
index 0d66c8822..4f75e6320 100644
--- a/test/emcc_hello_world.fromasm
+++ b/test/emcc_hello_world.fromasm
@@ -316,17 +316,17 @@
(i32.const 1)
)
)
- (if
- (i32.load8_s
- (get_local $0)
- )
- (block
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.load8_s
+ (get_local $0)
+ )
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in3)
)
- (br $while-in3)
- )
- (set_local $0
(get_local $2)
)
)
@@ -1327,20 +1327,20 @@
)
)
)
- (if
- (call $___towrite
- (get_local $2)
- )
- (set_local $3
+ (set_local $3
+ (if (result i32)
+ (call $___towrite
+ (get_local $2)
+ )
(i32.const 0)
- )
- (block
- (set_local $3
- (i32.load
- (get_local $4)
+ (block
+ (set_local $3
+ (i32.load
+ (get_local $4)
+ )
)
+ (br $__rjti$0)
)
- (br $__rjti$0)
)
)
(br $label$break$L5)
@@ -2700,262 +2700,257 @@
)
)
)
- (block $do-once5
- (if
- (i32.eq
- (i32.and
- (get_local $6)
- (i32.const 255)
+ (set_local $1
+ (block $do-once5 (result i32)
+ (if (result i32)
+ (i32.eq
+ (i32.and
+ (get_local $6)
+ (i32.const 255)
+ )
+ (i32.const 42)
)
- (i32.const 42)
- )
- (block
- (set_local $10
- (block $__rjto$0 (result i32)
- (block $__rjti$0
- (br_if $__rjti$0
- (i32.ge_u
- (tee_local $11
- (i32.add
- (i32.load8_s
- (tee_local $6
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (block (result i32)
+ (set_local $10
+ (block $__rjto$0 (result i32)
+ (block $__rjti$0
+ (br_if $__rjti$0
+ (i32.ge_u
+ (tee_local $11
+ (i32.add
+ (i32.load8_s
+ (tee_local $6
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
)
- )
- (br_if $__rjti$0
- (i32.ne
- (i32.load8_s offset=2
- (get_local $10)
+ (br_if $__rjti$0
+ (i32.ne
+ (i32.load8_s offset=2
+ (get_local $10)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
- )
- (i32.store
- (i32.add
- (get_local $4)
- (i32.shl
- (get_local $11)
- (i32.const 2)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (i32.shl
+ (get_local $11)
+ (i32.const 2)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (get_local $6)
+ (drop
+ (i32.load offset=4
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (get_local $6)
+ )
+ (i32.const -48)
)
- (i32.const -48)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
)
- )
- (set_local $8
- (i32.const 1)
- )
- (set_local $14
- (i32.load
- (get_local $6)
+ (set_local $8
+ (i32.const 1)
)
- )
- (br $__rjto$0
- (i32.add
- (get_local $10)
- (i32.const 3)
+ (set_local $14
+ (i32.load
+ (get_local $6)
+ )
)
- )
- )
- (if
- (get_local $8)
- (block
- (set_local $16
- (i32.const -1)
+ (br $__rjto$0
+ (i32.add
+ (get_local $10)
+ (i32.const 3)
+ )
)
- (br $label$break$L1)
)
- )
- (if
- (i32.eqz
- (get_local $29)
- )
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $10
- (get_local $6)
+ (if
+ (get_local $8)
+ (block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (set_local $1
- (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (get_local $29)
)
- (set_local $14
- (i32.const 0)
+ (block
+ (set_local $11
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (br $do-once5
+ (i32.const 0)
+ )
)
- (br $do-once5)
)
- )
- (set_local $14
- (i32.load
- (tee_local $10
- (i32.and
- (i32.add
- (i32.load
- (get_local $2)
+ (set_local $14
+ (i32.load
+ (tee_local $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const -4)
)
- (i32.const -4)
)
)
)
- )
- (i32.store
- (get_local $2)
- (i32.add
- (get_local $10)
- (i32.const 4)
+ (i32.store
+ (get_local $2)
+ (i32.add
+ (get_local $10)
+ (i32.const 4)
+ )
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (get_local $6)
)
- (set_local $8
- (i32.const 0)
- )
- (get_local $6)
)
- )
- (set_local $11
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (set_local $11
+ (if (result i32)
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
)
- (i32.or
- (get_local $1)
- (i32.const 8192)
+ (block (result i32)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
+ )
+ )
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
(get_local $8)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.add
- (i32.shr_s
- (i32.shl
- (get_local $6)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $6
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (get_local $6)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $11
- (i32.const 0)
- )
- (loop $while-in8
- (set_local $6
- (i32.add
- (i32.mul
- (get_local $11)
- (i32.const 10)
+ (block (result i32)
+ (set_local $11
+ (i32.const 0)
+ )
+ (loop $while-in8
+ (set_local $6
+ (i32.add
+ (i32.mul
+ (get_local $11)
+ (i32.const 10)
+ )
+ (get_local $6)
)
- (get_local $6)
)
- )
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (i32.load8_s
- (tee_local $10
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (i32.load8_s
+ (tee_local $10
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
+ )
+ (block
+ (set_local $11
+ (get_local $6)
+ )
+ (set_local $6
+ (get_local $9)
+ )
+ (br $while-in8)
)
- (i32.const 10)
+ )
+ )
+ (if (result i32)
+ (i32.lt_s
+ (get_local $6)
+ (i32.const 0)
)
(block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
+ (block (result i32)
(set_local $11
- (get_local $6)
+ (get_local $1)
)
- (set_local $6
- (get_local $9)
+ (set_local $14
+ (get_local $6)
)
- (br $while-in8)
+ (get_local $8)
)
)
)
- (if
- (i32.lt_s
- (get_local $6)
- (i32.const 0)
- )
- (block
- (set_local $16
- (i32.const -1)
- )
- (br $label$break$L1)
+ (block (result i32)
+ (set_local $11
+ (get_local $1)
)
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
- (get_local $8)
- )
- (set_local $14
- (get_local $6)
- )
+ (set_local $14
+ (i32.const 0)
)
- )
- )
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
(get_local $8)
)
- (set_local $14
- (i32.const 0)
- )
)
)
)
@@ -2985,33 +2980,33 @@
(i32.const 42)
)
(block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (get_local $8)
- (i32.const -48)
+ (set_local $6
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (get_local $8)
+ (i32.const -48)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (set_local $8
- (i32.const 0)
- )
- (set_local $6
+ (block (result i32)
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
(get_local $9)
)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (br $label$break$L46
- (i32.const 0)
+ (block
+ (set_local $10
+ (get_local $6)
+ )
+ (br $label$break$L46
+ (i32.const 0)
+ )
)
)
)
@@ -3205,42 +3200,42 @@
(i32.const 1)
)
)
- (if
- (i32.lt_u
- (i32.add
- (tee_local $12
- (i32.and
- (tee_local $13
- (i32.load8_s
- (i32.add
+ (set_local $18
+ (if (result i32)
+ (i32.lt_u
+ (i32.add
+ (tee_local $12
+ (i32.and
+ (tee_local $13
+ (i32.load8_s
(i32.add
- (i32.mul
- (get_local $9)
- (i32.const 58)
+ (i32.add
+ (i32.mul
+ (get_local $9)
+ (i32.const 58)
+ )
+ (i32.const 3611)
)
- (i32.const 3611)
+ (get_local $12)
)
- (get_local $12)
)
)
+ (i32.const 255)
)
- (i32.const 255)
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (i32.const 8)
- )
- (block
- (set_local $8
- (get_local $10)
+ (i32.const 8)
)
- (set_local $9
- (get_local $12)
+ (block
+ (set_local $8
+ (get_local $10)
+ )
+ (set_local $9
+ (get_local $12)
+ )
+ (br $while-in13)
)
- (br $while-in13)
- )
- (set_local $18
(get_local $8)
)
)
@@ -4862,27 +4857,27 @@
)
)
)
- (if
- (i32.lt_s
- (get_local $9)
- (i32.const 0)
- )
- (block
- (set_local $6
- (get_local $7)
+ (set_local $5
+ (if (result i32)
+ (i32.lt_s
+ (get_local $9)
+ (i32.const 0)
)
- (set_local $5
- (get_local $12)
+ (block
+ (set_local $6
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $12)
+ )
+ (br $while-in70)
)
- (br $while-in70)
- )
- (block
- (set_local $5
+ (block (result i32)
+ (set_local $9
+ (get_local $12)
+ )
(get_local $7)
)
- (set_local $9
- (get_local $12)
- )
)
)
)
@@ -5323,44 +5318,43 @@
)
)
(loop $while-in90
- (block $while-out89
- (if
- (i32.le_u
- (get_local $5)
- (get_local $12)
- )
- (block
- (set_local $24
- (i32.const 0)
- )
- (set_local $9
+ (set_local $9
+ (block $while-out89 (result i32)
+ (if
+ (i32.le_u
(get_local $5)
+ (get_local $12)
)
- (br $while-out89)
- )
- )
- (if
- (i32.load
- (tee_local $7
- (i32.add
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $while-out89
(get_local $5)
- (i32.const -4)
)
)
)
- (block
- (set_local $24
- (i32.const 1)
+ (if (result i32)
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const -4)
+ )
+ )
)
- (set_local $9
+ (block (result i32)
+ (set_local $24
+ (i32.const 1)
+ )
(get_local $5)
)
- )
- (block
- (set_local $5
- (get_local $7)
+ (block
+ (set_local $5
+ (get_local $7)
+ )
+ (br $while-in90)
)
- (br $while-in90)
)
)
)
@@ -5469,22 +5463,22 @@
(br $do-once93)
)
)
- (if
- (call $i32u-rem
- (get_local $18)
- (i32.const 10)
- )
- (block
- (set_local $5
- (i32.const 0)
- )
- (br $do-once93)
- )
- (block
- (set_local $6
+ (set_local $5
+ (if (result i32)
+ (call $i32u-rem
+ (get_local $18)
(i32.const 10)
)
- (set_local $5
+ (block
+ (set_local $5
+ (i32.const 0)
+ )
+ (br $do-once93)
+ )
+ (block (result i32)
+ (set_local $6
+ (i32.const 10)
+ )
(i32.const 0)
)
)
@@ -5973,29 +5967,29 @@
(i32.const -9)
)
)
- (if
- (i32.and
- (i32.gt_s
- (get_local $5)
- (i32.const 9)
- )
- (i32.lt_u
- (tee_local $7
- (i32.add
- (get_local $7)
- (i32.const 4)
+ (set_local $5
+ (if (result i32)
+ (i32.and
+ (i32.gt_s
+ (get_local $5)
+ (i32.const 9)
+ )
+ (i32.lt_u
+ (tee_local $7
+ (i32.add
+ (get_local $7)
+ (i32.const 4)
+ )
)
+ (get_local $9)
)
- (get_local $9)
)
- )
- (block
- (set_local $5
- (get_local $6)
+ (block
+ (set_local $5
+ (get_local $6)
+ )
+ (br $while-in110)
)
- (br $while-in110)
- )
- (set_local $5
(get_local $6)
)
)
@@ -7499,33 +7493,33 @@
(set_local $4
(get_global $tempRet0)
)
- (if
- (i32.or
- (i32.gt_u
- (get_local $1)
- (i32.const 9)
- )
- (i32.and
- (i32.eq
+ (set_local $0
+ (if (result i32)
+ (i32.or
+ (i32.gt_u
(get_local $1)
(i32.const 9)
)
- (i32.gt_u
- (get_local $0)
- (i32.const -1)
+ (i32.and
+ (i32.eq
+ (get_local $1)
+ (i32.const 9)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -1)
+ )
)
)
- )
- (block
- (set_local $0
- (get_local $3)
- )
- (set_local $1
- (get_local $4)
+ (block
+ (set_local $0
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $4)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (set_local $0
(get_local $3)
)
)
@@ -7739,258 +7733,274 @@
(local $17 i32)
(local $18 i32)
(block $folding-inner0
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (set_local $0
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block (result i32)
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8001,9 +8011,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8018,310 +8028,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8332,9 +8342,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8349,874 +8359,854 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
- (br_if $do-once4
+ (get_local $5)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
- )
- (br $while-in7)
- )
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
)
- )
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
- )
- (br $__rjti$3)
- )
- (block
- (set_local $3
- (get_local $4)
- )
- (set_local $1
- (get_local $0)
+ (set_local $1
+ (if (result i32)
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
+ )
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $4)
+ )
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9224,127 +9214,138 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
)
)
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
- )
- (set_local $0
- (get_local $9)
+ (set_local $0
+ (if (result i32)
+ (get_local $6)
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
+ )
)
- (br $while-in14)
)
)
)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- (if
- (i32.eqz
- (i32.or
- (get_local $4)
- (get_local $0)
+ (set_local $0
+ (i32.const 0)
)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $4)
+ (get_local $0)
+ )
+ )
+ (block
+ (drop
+ (br_if $do-once
+ (get_local $2)
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $1)
- )
)
)
)
)
- (block
- (set_local $0
- (get_local $2)
- )
- (br $do-once)
- )
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9355,9 +9356,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9372,964 +9373,944 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $3
+ (set_local $4
+ (if (result i32)
(get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
+ )
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
)
- (br $while-in16)
- )
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
- )
- )
- )
- (if
- (get_local $4)
- (if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
- (get_local $2)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $3
+ (get_local $1)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ )
+ (if (result i32)
+ (get_local $4)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
- (br_if $do-once17
+ (get_local $4)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once17
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
- )
- (br $while-in20)
- )
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $11
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
)
- (br $while-in28)
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
+ (i32.const 0)
)
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $2)
)
- )
- (set_local $0
(get_local $2)
)
)
- )
- (set_local $0
(get_local $2)
)
)
@@ -10811,71 +10792,70 @@
(get_local $1)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
- (get_local $1)
- )
+ (set_local $3
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $4)
+ (get_local $3)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $3
(i32.add
(get_local $3)
(get_local $1)
)
)
- )
- (set_local $3
(get_local $1)
)
+ (get_local $1)
)
)
(if
@@ -11175,77 +11155,46 @@
)
(br $__rjto$11)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
+ (set_local $4
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $4
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11260,1046 +11209,1080 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (block
+ (br_if $do-once55
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ )
+ )
+ (set_local $0
(get_local $3)
)
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $12
+ (get_local $1)
+ )
)
- (br $do-once55)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
)
- (br $while-in68)
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
@@ -13515,16 +13498,19 @@
)
)
)
- (if
- (tee_local $5
- (i32.load
- (get_local $7)
+ (block
+ (br_if $do-once0
+ (i32.eqz
+ (tee_local $5
+ (i32.load
+ (get_local $7)
+ )
+ )
)
)
(set_local $4
(get_local $7)
)
- (br $do-once0)
)
)
(loop $while-in
@@ -14162,16 +14148,19 @@
)
)
)
- (if
- (tee_local $3
- (i32.load
- (get_local $1)
+ (block
+ (br_if $do-once6
+ (i32.eqz
+ (tee_local $3
+ (i32.load
+ (get_local $1)
+ )
+ )
)
)
(set_local $0
(get_local $1)
)
- (br $do-once6)
)
)
(loop $while-in9
@@ -14473,21 +14462,21 @@
)
(get_local $5)
)
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
+ (set_local $3
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (return)
)
- (return)
- )
- (set_local $3
(get_local $5)
)
)
@@ -14918,10 +14907,10 @@
)
)
)
- (if
- (get_local $0)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $0)
+ (return)
(i32.const 632)
)
)
diff --git a/test/emcc_hello_world.fromasm.clamp b/test/emcc_hello_world.fromasm.clamp
index d163554b8..fab96d967 100644
--- a/test/emcc_hello_world.fromasm.clamp
+++ b/test/emcc_hello_world.fromasm.clamp
@@ -314,17 +314,17 @@
(i32.const 1)
)
)
- (if
- (i32.load8_s
- (get_local $0)
- )
- (block
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.load8_s
+ (get_local $0)
+ )
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in3)
)
- (br $while-in3)
- )
- (set_local $0
(get_local $2)
)
)
@@ -1325,20 +1325,20 @@
)
)
)
- (if
- (call $___towrite
- (get_local $2)
- )
- (set_local $3
+ (set_local $3
+ (if (result i32)
+ (call $___towrite
+ (get_local $2)
+ )
(i32.const 0)
- )
- (block
- (set_local $3
- (i32.load
- (get_local $4)
+ (block
+ (set_local $3
+ (i32.load
+ (get_local $4)
+ )
)
+ (br $__rjti$0)
)
- (br $__rjti$0)
)
)
(br $label$break$L5)
@@ -2750,262 +2750,257 @@
)
)
)
- (block $do-once5
- (if
- (i32.eq
- (i32.and
- (get_local $6)
- (i32.const 255)
+ (set_local $1
+ (block $do-once5 (result i32)
+ (if (result i32)
+ (i32.eq
+ (i32.and
+ (get_local $6)
+ (i32.const 255)
+ )
+ (i32.const 42)
)
- (i32.const 42)
- )
- (block
- (set_local $10
- (block $__rjto$0 (result i32)
- (block $__rjti$0
- (br_if $__rjti$0
- (i32.ge_u
- (tee_local $11
- (i32.add
- (i32.load8_s
- (tee_local $6
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (block (result i32)
+ (set_local $10
+ (block $__rjto$0 (result i32)
+ (block $__rjti$0
+ (br_if $__rjti$0
+ (i32.ge_u
+ (tee_local $11
+ (i32.add
+ (i32.load8_s
+ (tee_local $6
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
)
- )
- (br_if $__rjti$0
- (i32.ne
- (i32.load8_s offset=2
- (get_local $10)
+ (br_if $__rjti$0
+ (i32.ne
+ (i32.load8_s offset=2
+ (get_local $10)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
- )
- (i32.store
- (i32.add
- (get_local $4)
- (i32.shl
- (get_local $11)
- (i32.const 2)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (i32.shl
+ (get_local $11)
+ (i32.const 2)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (get_local $6)
+ (drop
+ (i32.load offset=4
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (get_local $6)
+ )
+ (i32.const -48)
)
- (i32.const -48)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
)
- )
- (set_local $8
- (i32.const 1)
- )
- (set_local $14
- (i32.load
- (get_local $6)
+ (set_local $8
+ (i32.const 1)
)
- )
- (br $__rjto$0
- (i32.add
- (get_local $10)
- (i32.const 3)
+ (set_local $14
+ (i32.load
+ (get_local $6)
+ )
)
- )
- )
- (if
- (get_local $8)
- (block
- (set_local $16
- (i32.const -1)
+ (br $__rjto$0
+ (i32.add
+ (get_local $10)
+ (i32.const 3)
+ )
)
- (br $label$break$L1)
)
- )
- (if
- (i32.eqz
- (get_local $29)
- )
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $10
- (get_local $6)
+ (if
+ (get_local $8)
+ (block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (set_local $1
- (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (get_local $29)
)
- (set_local $14
- (i32.const 0)
+ (block
+ (set_local $11
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (br $do-once5
+ (i32.const 0)
+ )
)
- (br $do-once5)
)
- )
- (set_local $14
- (i32.load
- (tee_local $10
- (i32.and
- (i32.add
- (i32.load
- (get_local $2)
+ (set_local $14
+ (i32.load
+ (tee_local $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const -4)
)
- (i32.const -4)
)
)
)
- )
- (i32.store
- (get_local $2)
- (i32.add
- (get_local $10)
- (i32.const 4)
+ (i32.store
+ (get_local $2)
+ (i32.add
+ (get_local $10)
+ (i32.const 4)
+ )
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (get_local $6)
)
- (set_local $8
- (i32.const 0)
- )
- (get_local $6)
)
- )
- (set_local $11
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (set_local $11
+ (if (result i32)
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
)
- (i32.or
- (get_local $1)
- (i32.const 8192)
+ (block (result i32)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
+ )
+ )
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
(get_local $8)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.add
- (i32.shr_s
- (i32.shl
- (get_local $6)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $6
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (get_local $6)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $11
- (i32.const 0)
- )
- (loop $while-in8
- (set_local $6
- (i32.add
- (i32.mul
- (get_local $11)
- (i32.const 10)
+ (block (result i32)
+ (set_local $11
+ (i32.const 0)
+ )
+ (loop $while-in8
+ (set_local $6
+ (i32.add
+ (i32.mul
+ (get_local $11)
+ (i32.const 10)
+ )
+ (get_local $6)
)
- (get_local $6)
)
- )
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (i32.load8_s
- (tee_local $10
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (i32.load8_s
+ (tee_local $10
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
+ )
+ (block
+ (set_local $11
+ (get_local $6)
+ )
+ (set_local $6
+ (get_local $9)
+ )
+ (br $while-in8)
)
- (i32.const 10)
+ )
+ )
+ (if (result i32)
+ (i32.lt_s
+ (get_local $6)
+ (i32.const 0)
)
(block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
+ (block (result i32)
(set_local $11
- (get_local $6)
+ (get_local $1)
)
- (set_local $6
- (get_local $9)
+ (set_local $14
+ (get_local $6)
)
- (br $while-in8)
+ (get_local $8)
)
)
)
- (if
- (i32.lt_s
- (get_local $6)
- (i32.const 0)
- )
- (block
- (set_local $16
- (i32.const -1)
- )
- (br $label$break$L1)
+ (block (result i32)
+ (set_local $11
+ (get_local $1)
)
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
- (get_local $8)
- )
- (set_local $14
- (get_local $6)
- )
+ (set_local $14
+ (i32.const 0)
)
- )
- )
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
(get_local $8)
)
- (set_local $14
- (i32.const 0)
- )
)
)
)
@@ -3035,33 +3030,33 @@
(i32.const 42)
)
(block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (get_local $8)
- (i32.const -48)
+ (set_local $6
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (get_local $8)
+ (i32.const -48)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (set_local $8
- (i32.const 0)
- )
- (set_local $6
+ (block (result i32)
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
(get_local $9)
)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (br $label$break$L46
- (i32.const 0)
+ (block
+ (set_local $10
+ (get_local $6)
+ )
+ (br $label$break$L46
+ (i32.const 0)
+ )
)
)
)
@@ -3255,42 +3250,42 @@
(i32.const 1)
)
)
- (if
- (i32.lt_u
- (i32.add
- (tee_local $12
- (i32.and
- (tee_local $13
- (i32.load8_s
- (i32.add
+ (set_local $18
+ (if (result i32)
+ (i32.lt_u
+ (i32.add
+ (tee_local $12
+ (i32.and
+ (tee_local $13
+ (i32.load8_s
(i32.add
- (i32.mul
- (get_local $9)
- (i32.const 58)
+ (i32.add
+ (i32.mul
+ (get_local $9)
+ (i32.const 58)
+ )
+ (i32.const 3611)
)
- (i32.const 3611)
+ (get_local $12)
)
- (get_local $12)
)
)
+ (i32.const 255)
)
- (i32.const 255)
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (i32.const 8)
- )
- (block
- (set_local $8
- (get_local $10)
+ (i32.const 8)
)
- (set_local $9
- (get_local $12)
+ (block
+ (set_local $8
+ (get_local $10)
+ )
+ (set_local $9
+ (get_local $12)
+ )
+ (br $while-in13)
)
- (br $while-in13)
- )
- (set_local $18
(get_local $8)
)
)
@@ -4912,27 +4907,27 @@
)
)
)
- (if
- (i32.lt_s
- (get_local $9)
- (i32.const 0)
- )
- (block
- (set_local $6
- (get_local $7)
+ (set_local $5
+ (if (result i32)
+ (i32.lt_s
+ (get_local $9)
+ (i32.const 0)
)
- (set_local $5
- (get_local $12)
+ (block
+ (set_local $6
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $12)
+ )
+ (br $while-in70)
)
- (br $while-in70)
- )
- (block
- (set_local $5
+ (block (result i32)
+ (set_local $9
+ (get_local $12)
+ )
(get_local $7)
)
- (set_local $9
- (get_local $12)
- )
)
)
)
@@ -5373,44 +5368,43 @@
)
)
(loop $while-in90
- (block $while-out89
- (if
- (i32.le_u
- (get_local $5)
- (get_local $12)
- )
- (block
- (set_local $24
- (i32.const 0)
- )
- (set_local $9
+ (set_local $9
+ (block $while-out89 (result i32)
+ (if
+ (i32.le_u
(get_local $5)
+ (get_local $12)
)
- (br $while-out89)
- )
- )
- (if
- (i32.load
- (tee_local $7
- (i32.add
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $while-out89
(get_local $5)
- (i32.const -4)
)
)
)
- (block
- (set_local $24
- (i32.const 1)
+ (if (result i32)
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const -4)
+ )
+ )
)
- (set_local $9
+ (block (result i32)
+ (set_local $24
+ (i32.const 1)
+ )
(get_local $5)
)
- )
- (block
- (set_local $5
- (get_local $7)
+ (block
+ (set_local $5
+ (get_local $7)
+ )
+ (br $while-in90)
)
- (br $while-in90)
)
)
)
@@ -5519,22 +5513,22 @@
(br $do-once93)
)
)
- (if
- (call $i32u-rem
- (get_local $18)
- (i32.const 10)
- )
- (block
- (set_local $5
- (i32.const 0)
- )
- (br $do-once93)
- )
- (block
- (set_local $6
+ (set_local $5
+ (if (result i32)
+ (call $i32u-rem
+ (get_local $18)
(i32.const 10)
)
- (set_local $5
+ (block
+ (set_local $5
+ (i32.const 0)
+ )
+ (br $do-once93)
+ )
+ (block (result i32)
+ (set_local $6
+ (i32.const 10)
+ )
(i32.const 0)
)
)
@@ -6023,29 +6017,29 @@
(i32.const -9)
)
)
- (if
- (i32.and
- (i32.gt_s
- (get_local $5)
- (i32.const 9)
- )
- (i32.lt_u
- (tee_local $7
- (i32.add
- (get_local $7)
- (i32.const 4)
+ (set_local $5
+ (if (result i32)
+ (i32.and
+ (i32.gt_s
+ (get_local $5)
+ (i32.const 9)
+ )
+ (i32.lt_u
+ (tee_local $7
+ (i32.add
+ (get_local $7)
+ (i32.const 4)
+ )
)
+ (get_local $9)
)
- (get_local $9)
)
- )
- (block
- (set_local $5
- (get_local $6)
+ (block
+ (set_local $5
+ (get_local $6)
+ )
+ (br $while-in110)
)
- (br $while-in110)
- )
- (set_local $5
(get_local $6)
)
)
@@ -7549,33 +7543,33 @@
(set_local $4
(get_global $tempRet0)
)
- (if
- (i32.or
- (i32.gt_u
- (get_local $1)
- (i32.const 9)
- )
- (i32.and
- (i32.eq
+ (set_local $0
+ (if (result i32)
+ (i32.or
+ (i32.gt_u
(get_local $1)
(i32.const 9)
)
- (i32.gt_u
- (get_local $0)
- (i32.const -1)
+ (i32.and
+ (i32.eq
+ (get_local $1)
+ (i32.const 9)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -1)
+ )
)
)
- )
- (block
- (set_local $0
- (get_local $3)
- )
- (set_local $1
- (get_local $4)
+ (block
+ (set_local $0
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $4)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (set_local $0
(get_local $3)
)
)
@@ -7789,258 +7783,274 @@
(local $17 i32)
(local $18 i32)
(block $folding-inner0
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (set_local $0
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block (result i32)
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8051,9 +8061,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8068,310 +8078,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8382,9 +8392,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8399,874 +8409,854 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
- (br_if $do-once4
+ (get_local $5)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
- )
- (br $while-in7)
- )
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
)
- )
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
- )
- (br $__rjti$3)
- )
- (block
- (set_local $3
- (get_local $4)
- )
- (set_local $1
- (get_local $0)
+ (set_local $1
+ (if (result i32)
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
+ )
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $4)
+ )
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9274,127 +9264,138 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
)
)
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
- )
- (set_local $0
- (get_local $9)
+ (set_local $0
+ (if (result i32)
+ (get_local $6)
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
+ )
)
- (br $while-in14)
)
)
)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- (if
- (i32.eqz
- (i32.or
- (get_local $4)
- (get_local $0)
+ (set_local $0
+ (i32.const 0)
)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $4)
+ (get_local $0)
+ )
+ )
+ (block
+ (drop
+ (br_if $do-once
+ (get_local $2)
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $1)
- )
)
)
)
)
- (block
- (set_local $0
- (get_local $2)
- )
- (br $do-once)
- )
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9405,9 +9406,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9422,964 +9423,944 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $3
+ (set_local $4
+ (if (result i32)
(get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
+ )
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
)
- (br $while-in16)
- )
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
- )
- )
- )
- (if
- (get_local $4)
- (if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
- (get_local $2)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $3
+ (get_local $1)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ )
+ (if (result i32)
+ (get_local $4)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
- (br_if $do-once17
+ (get_local $4)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once17
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
- )
- (br $while-in20)
- )
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $11
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
)
- (br $while-in28)
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
+ (i32.const 0)
)
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $2)
)
- )
- (set_local $0
(get_local $2)
)
)
- )
- (set_local $0
(get_local $2)
)
)
@@ -10861,71 +10842,70 @@
(get_local $1)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
- (get_local $1)
- )
+ (set_local $3
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $4)
+ (get_local $3)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $3
(i32.add
(get_local $3)
(get_local $1)
)
)
- )
- (set_local $3
(get_local $1)
)
+ (get_local $1)
)
)
(if
@@ -11225,77 +11205,46 @@
)
(br $__rjto$11)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
+ (set_local $4
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $4
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11310,1046 +11259,1080 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (block
+ (br_if $do-once55
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ )
+ )
+ (set_local $0
(get_local $3)
)
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $12
+ (get_local $1)
+ )
)
- (br $do-once55)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
)
- (br $while-in68)
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
@@ -13565,16 +13548,19 @@
)
)
)
- (if
- (tee_local $5
- (i32.load
- (get_local $7)
+ (block
+ (br_if $do-once0
+ (i32.eqz
+ (tee_local $5
+ (i32.load
+ (get_local $7)
+ )
+ )
)
)
(set_local $4
(get_local $7)
)
- (br $do-once0)
)
)
(loop $while-in
@@ -14212,16 +14198,19 @@
)
)
)
- (if
- (tee_local $3
- (i32.load
- (get_local $1)
+ (block
+ (br_if $do-once6
+ (i32.eqz
+ (tee_local $3
+ (i32.load
+ (get_local $1)
+ )
+ )
)
)
(set_local $0
(get_local $1)
)
- (br $do-once6)
)
)
(loop $while-in9
@@ -14523,21 +14512,21 @@
)
(get_local $5)
)
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
+ (set_local $3
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (return)
)
- (return)
- )
- (set_local $3
(get_local $5)
)
)
@@ -14968,10 +14957,10 @@
)
)
)
- (if
- (get_local $0)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $0)
+ (return)
(i32.const 632)
)
)
diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise
index a1d4e7d98..59147f9f6 100644
--- a/test/emcc_hello_world.fromasm.imprecise
+++ b/test/emcc_hello_world.fromasm.imprecise
@@ -313,17 +313,17 @@
(i32.const 1)
)
)
- (if
- (i32.load8_s
- (get_local $0)
- )
- (block
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.load8_s
+ (get_local $0)
+ )
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in3)
)
- (br $while-in3)
- )
- (set_local $0
(get_local $2)
)
)
@@ -1314,20 +1314,20 @@
)
)
)
- (if
- (call $___towrite
- (get_local $2)
- )
- (set_local $3
+ (set_local $3
+ (if (result i32)
+ (call $___towrite
+ (get_local $2)
+ )
(i32.const 0)
- )
- (block
- (set_local $3
- (i32.load
- (get_local $4)
+ (block
+ (set_local $3
+ (i32.load
+ (get_local $4)
+ )
)
+ (br $__rjti$0)
)
- (br $__rjti$0)
)
)
(br $label$break$L5)
@@ -2639,264 +2639,259 @@
)
)
)
- (block $do-once5
- (if
- (i32.eq
- (i32.and
- (get_local $6)
- (i32.const 255)
+ (set_local $1
+ (block $do-once5 (result i32)
+ (if (result i32)
+ (i32.eq
+ (i32.and
+ (get_local $6)
+ (i32.const 255)
+ )
+ (i32.const 42)
)
- (i32.const 42)
- )
- (block
- (set_local $10
- (block $__rjto$0 (result i32)
- (if
- (i32.eqz
- (i32.or
- (i32.ge_u
- (tee_local $11
- (i32.add
- (i32.load8_s
- (tee_local $6
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (block (result i32)
+ (set_local $10
+ (block $__rjto$0 (result i32)
+ (if
+ (i32.eqz
+ (i32.or
+ (i32.ge_u
+ (tee_local $11
+ (i32.add
+ (i32.load8_s
+ (tee_local $6
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (i32.ne
- (i32.load8_s offset=2
- (get_local $10)
+ (i32.ne
+ (i32.load8_s offset=2
+ (get_local $10)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
)
- )
- (block
- (i32.store
- (i32.add
- (get_local $4)
- (i32.shl
- (get_local $11)
- (i32.const 2)
+ (block
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (i32.shl
+ (get_local $11)
+ (i32.const 2)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (get_local $6)
+ (drop
+ (i32.load offset=4
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (get_local $6)
+ )
+ (i32.const -48)
)
- (i32.const -48)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
)
- )
- (set_local $8
- (i32.const 1)
- )
- (set_local $14
- (i32.load
- (get_local $6)
+ (set_local $8
+ (i32.const 1)
)
- )
- (br $__rjto$0
- (i32.add
- (get_local $10)
- (i32.const 3)
+ (set_local $14
+ (i32.load
+ (get_local $6)
+ )
+ )
+ (br $__rjto$0
+ (i32.add
+ (get_local $10)
+ (i32.const 3)
+ )
)
)
)
- )
- (if
- (get_local $8)
- (block
- (set_local $16
- (i32.const -1)
+ (if
+ (get_local $8)
+ (block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (br $label$break$L1)
- )
- )
- (if
- (i32.eqz
- (get_local $29)
)
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $10
- (get_local $6)
- )
- (set_local $1
- (i32.const 0)
+ (if
+ (i32.eqz
+ (get_local $29)
)
- (set_local $14
- (i32.const 0)
+ (block
+ (set_local $11
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (br $do-once5
+ (i32.const 0)
+ )
)
- (br $do-once5)
)
- )
- (set_local $14
- (i32.load
- (tee_local $10
- (i32.and
- (i32.add
- (i32.load
- (get_local $2)
+ (set_local $14
+ (i32.load
+ (tee_local $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const -4)
)
- (i32.const -4)
)
)
)
- )
- (i32.store
- (get_local $2)
- (i32.add
- (get_local $10)
- (i32.const 4)
+ (i32.store
+ (get_local $2)
+ (i32.add
+ (get_local $10)
+ (i32.const 4)
+ )
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (get_local $6)
)
- (set_local $8
- (i32.const 0)
- )
- (get_local $6)
)
- )
- (set_local $11
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (set_local $11
+ (if (result i32)
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
)
- (i32.or
- (get_local $1)
- (i32.const 8192)
+ (block (result i32)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
+ )
+ )
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
(get_local $8)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.add
- (i32.shr_s
- (i32.shl
- (get_local $6)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $6
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (get_local $6)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $11
- (i32.const 0)
- )
- (loop $while-in8
- (set_local $6
- (i32.add
- (i32.mul
- (get_local $11)
- (i32.const 10)
+ (block (result i32)
+ (set_local $11
+ (i32.const 0)
+ )
+ (loop $while-in8
+ (set_local $6
+ (i32.add
+ (i32.mul
+ (get_local $11)
+ (i32.const 10)
+ )
+ (get_local $6)
)
- (get_local $6)
)
- )
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (i32.load8_s
- (tee_local $10
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (i32.load8_s
+ (tee_local $10
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
+ )
+ (block
+ (set_local $11
+ (get_local $6)
+ )
+ (set_local $6
+ (get_local $9)
+ )
+ (br $while-in8)
)
- (i32.const 10)
+ )
+ )
+ (if (result i32)
+ (i32.lt_s
+ (get_local $6)
+ (i32.const 0)
)
(block
+ (set_local $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
+ (block (result i32)
(set_local $11
- (get_local $6)
+ (get_local $1)
)
- (set_local $6
- (get_local $9)
+ (set_local $14
+ (get_local $6)
)
- (br $while-in8)
+ (get_local $8)
)
)
)
- (if
- (i32.lt_s
- (get_local $6)
- (i32.const 0)
- )
- (block
- (set_local $16
- (i32.const -1)
- )
- (br $label$break$L1)
+ (block (result i32)
+ (set_local $11
+ (get_local $1)
)
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
- (get_local $8)
- )
- (set_local $14
- (get_local $6)
- )
+ (set_local $14
+ (i32.const 0)
)
- )
- )
- (block
- (set_local $11
- (get_local $1)
- )
- (set_local $1
(get_local $8)
)
- (set_local $14
- (i32.const 0)
- )
)
)
)
@@ -2926,33 +2921,33 @@
(i32.const 42)
)
(block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (get_local $8)
- (i32.const -48)
+ (set_local $6
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (get_local $8)
+ (i32.const -48)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (set_local $8
- (i32.const 0)
- )
- (set_local $6
+ (block (result i32)
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
(get_local $9)
)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (br $label$break$L46
- (i32.const 0)
+ (block
+ (set_local $10
+ (get_local $6)
+ )
+ (br $label$break$L46
+ (i32.const 0)
+ )
)
)
)
@@ -3146,42 +3141,42 @@
(i32.const 1)
)
)
- (if
- (i32.lt_u
- (i32.add
- (tee_local $12
- (i32.and
- (tee_local $13
- (i32.load8_s
- (i32.add
+ (set_local $18
+ (if (result i32)
+ (i32.lt_u
+ (i32.add
+ (tee_local $12
+ (i32.and
+ (tee_local $13
+ (i32.load8_s
(i32.add
- (i32.mul
- (get_local $9)
- (i32.const 58)
+ (i32.add
+ (i32.mul
+ (get_local $9)
+ (i32.const 58)
+ )
+ (i32.const 3611)
)
- (i32.const 3611)
+ (get_local $12)
)
- (get_local $12)
)
)
+ (i32.const 255)
)
- (i32.const 255)
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (i32.const 8)
- )
- (block
- (set_local $8
- (get_local $10)
+ (i32.const 8)
)
- (set_local $9
- (get_local $12)
+ (block
+ (set_local $8
+ (get_local $10)
+ )
+ (set_local $9
+ (get_local $12)
+ )
+ (br $while-in13)
)
- (br $while-in13)
- )
- (set_local $18
(get_local $8)
)
)
@@ -4793,27 +4788,27 @@
)
)
)
- (if
- (i32.lt_s
- (get_local $9)
- (i32.const 0)
- )
- (block
- (set_local $6
- (get_local $7)
+ (set_local $5
+ (if (result i32)
+ (i32.lt_s
+ (get_local $9)
+ (i32.const 0)
)
- (set_local $5
- (get_local $12)
+ (block
+ (set_local $6
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $12)
+ )
+ (br $while-in70)
)
- (br $while-in70)
- )
- (block
- (set_local $5
+ (block (result i32)
+ (set_local $9
+ (get_local $12)
+ )
(get_local $7)
)
- (set_local $9
- (get_local $12)
- )
)
)
)
@@ -5248,44 +5243,43 @@
)
)
(loop $while-in90
- (block $while-out89
- (if
- (i32.le_u
- (get_local $5)
- (get_local $12)
- )
- (block
- (set_local $24
- (i32.const 0)
- )
- (set_local $9
+ (set_local $9
+ (block $while-out89 (result i32)
+ (if
+ (i32.le_u
(get_local $5)
+ (get_local $12)
)
- (br $while-out89)
- )
- )
- (if
- (i32.load
- (tee_local $7
- (i32.add
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $while-out89
(get_local $5)
- (i32.const -4)
)
)
)
- (block
- (set_local $24
- (i32.const 1)
+ (if (result i32)
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const -4)
+ )
+ )
)
- (set_local $9
+ (block (result i32)
+ (set_local $24
+ (i32.const 1)
+ )
(get_local $5)
)
- )
- (block
- (set_local $5
- (get_local $7)
+ (block
+ (set_local $5
+ (get_local $7)
+ )
+ (br $while-in90)
)
- (br $while-in90)
)
)
)
@@ -5394,22 +5388,22 @@
(br $do-once93)
)
)
- (if
- (i32.rem_u
- (get_local $18)
- (i32.const 10)
- )
- (block
- (set_local $5
- (i32.const 0)
- )
- (br $do-once93)
- )
- (block
- (set_local $6
+ (set_local $5
+ (if (result i32)
+ (i32.rem_u
+ (get_local $18)
(i32.const 10)
)
- (set_local $5
+ (block
+ (set_local $5
+ (i32.const 0)
+ )
+ (br $do-once93)
+ )
+ (block (result i32)
+ (set_local $6
+ (i32.const 10)
+ )
(i32.const 0)
)
)
@@ -5898,29 +5892,29 @@
(i32.const -9)
)
)
- (if
- (i32.and
- (i32.gt_s
- (get_local $5)
- (i32.const 9)
- )
- (i32.lt_u
- (tee_local $7
- (i32.add
- (get_local $7)
- (i32.const 4)
+ (set_local $5
+ (if (result i32)
+ (i32.and
+ (i32.gt_s
+ (get_local $5)
+ (i32.const 9)
+ )
+ (i32.lt_u
+ (tee_local $7
+ (i32.add
+ (get_local $7)
+ (i32.const 4)
+ )
)
+ (get_local $9)
)
- (get_local $9)
)
- )
- (block
- (set_local $5
- (get_local $6)
+ (block
+ (set_local $5
+ (get_local $6)
+ )
+ (br $while-in110)
)
- (br $while-in110)
- )
- (set_local $5
(get_local $6)
)
)
@@ -7424,33 +7418,33 @@
(set_local $4
(get_global $tempRet0)
)
- (if
- (i32.or
- (i32.gt_u
- (get_local $1)
- (i32.const 9)
- )
- (i32.and
- (i32.eq
+ (set_local $0
+ (if (result i32)
+ (i32.or
+ (i32.gt_u
(get_local $1)
(i32.const 9)
)
- (i32.gt_u
- (get_local $0)
- (i32.const -1)
+ (i32.and
+ (i32.eq
+ (get_local $1)
+ (i32.const 9)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -1)
+ )
)
)
- )
- (block
- (set_local $0
- (get_local $3)
- )
- (set_local $1
- (get_local $4)
+ (block
+ (set_local $0
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $4)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (set_local $0
(get_local $3)
)
)
@@ -7664,258 +7658,274 @@
(local $17 i32)
(local $18 i32)
(block $folding-inner0
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (set_local $0
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block (result i32)
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -7926,9 +7936,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -7943,310 +7953,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
)
+ (get_local $12)
)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
+ )
+ )
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8257,9 +8267,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8274,874 +8284,854 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
- (br_if $do-once4
+ (get_local $5)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
- )
- (br $while-in7)
- )
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
)
- )
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
- )
- )
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
)
- (br $__rjti$3)
+ (get_local $3)
)
- (block
- (set_local $3
- (get_local $4)
- )
- (set_local $1
- (get_local $0)
+ (set_local $1
+ (if (result i32)
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
+ )
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $4)
+ )
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9149,127 +9139,138 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
- )
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
- )
- (set_local $0
- (get_local $9)
+ (set_local $0
+ (if (result i32)
+ (get_local $6)
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
+ )
)
- (br $while-in14)
)
)
)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- (if
- (i32.eqz
- (i32.or
- (get_local $4)
- (get_local $0)
+ (set_local $0
+ (i32.const 0)
)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $4)
+ (get_local $0)
+ )
+ )
+ (block
+ (drop
+ (br_if $do-once
+ (get_local $2)
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $1)
- )
)
)
)
)
- (block
- (set_local $0
- (get_local $2)
- )
- (br $do-once)
- )
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9280,9 +9281,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9297,964 +9298,944 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $3
+ (set_local $4
+ (if (result i32)
(get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
+ )
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
- )
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
)
- (br $while-in16)
- )
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
- )
- )
- )
- (if
- (get_local $4)
- (if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
- (get_local $2)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $3
+ (get_local $1)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ )
+ (if (result i32)
+ (get_local $4)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
- (br_if $do-once17
+ (get_local $4)
+ )
+ (block
+ (if
(i32.eqz
(tee_local $1
(i32.load
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (br_if $do-once17
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
)
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
- )
- (br $while-in20)
- )
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
+ (get_local $12)
)
- (set_local $11
- (get_local $1)
- )
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
- (br $while-in28)
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
+ (i32.const 0)
)
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $2)
)
- )
- (set_local $0
(get_local $2)
)
)
- )
- (set_local $0
(get_local $2)
)
)
@@ -10736,71 +10717,70 @@
(get_local $1)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
- (get_local $1)
- )
+ (set_local $3
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $4)
+ (get_local $3)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $3
(i32.add
(get_local $3)
(get_local $1)
)
)
- )
- (set_local $3
(get_local $1)
)
+ (get_local $1)
)
)
(if
@@ -11100,77 +11080,46 @@
)
(br $__rjto$11)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
+ (set_local $4
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $4
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11185,1046 +11134,1080 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (block
+ (br_if $do-once55
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ )
+ )
+ (set_local $0
(get_local $3)
)
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $12
+ (get_local $1)
+ )
)
- (br $do-once55)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
)
- (br $while-in68)
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
@@ -13439,16 +13422,19 @@
)
)
)
- (if
- (tee_local $5
- (i32.load
- (get_local $8)
+ (block
+ (br_if $do-once0
+ (i32.eqz
+ (tee_local $5
+ (i32.load
+ (get_local $8)
+ )
+ )
)
)
(set_local $4
(get_local $8)
)
- (br $do-once0)
)
)
(loop $while-in
@@ -14086,16 +14072,19 @@
)
)
)
- (if
- (tee_local $3
- (i32.load
- (get_local $1)
+ (block
+ (br_if $do-once6
+ (i32.eqz
+ (tee_local $3
+ (i32.load
+ (get_local $1)
+ )
+ )
)
)
(set_local $0
(get_local $1)
)
- (br $do-once6)
)
)
(loop $while-in9
@@ -14397,21 +14386,21 @@
)
(get_local $5)
)
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 196)
+ (set_local $3
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 196)
+ )
)
- )
- (block
- (i32.store
- (i32.const 184)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (return)
)
- (return)
- )
- (set_local $3
(get_local $5)
)
)
@@ -14842,10 +14831,10 @@
)
)
)
- (if
- (get_local $0)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $0)
+ (return)
(i32.const 632)
)
)
diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm
index a1e87b531..e30f3d298 100644
--- a/test/memorygrowth.fromasm
+++ b/test/memorygrowth.fromasm
@@ -123,812 +123,775 @@
(set_local $13
(get_local $25)
)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ (set_local $6
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $6
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $6)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $5)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $5)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
- )
- (i32.sub
- (i32.const 0)
+ (block (result i32)
+ (if
+ (get_local $6)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $5
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
(get_local $6)
+ (get_local $0)
+ )
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $5)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $5)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
- (get_local $6)
- (get_local $8)
+ (get_local $7)
+ (get_local $5)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $6
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $6)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $6)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if (result i32)
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $6
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $6)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
- (if
- (tee_local $4
- (i32.load offset=20
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $4)
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $2
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $6
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $5
+ (if (result i32)
+ (tee_local $14
+ (i32.load offset=16
+ (get_local $6)
+ )
+ )
+ (get_local $14)
+ (if (result i32)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $6)
+ )
+ )
+ (get_local $4)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
- (get_local $6)
- (get_local $1)
- (get_local $4)
+ (set_local $6
+ (get_local $5)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $5)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $6
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -941,699 +904,729 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
+ (i32.store offset=4
(get_local $6)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $5)
)
+ (get_local $5)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $6)
+ )
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
)
- (br $label$break$a)
+ (get_local $16)
)
- (block
- (set_local $16
- (get_local $12)
- )
- (set_local $8
- (get_local $7)
+ (set_local $16
+ (if (result i32)
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
+ )
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $7)
+ )
+ (get_local $12)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1641,1108 +1634,977 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $14
- (get_local $3)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
- (i32.const 1)
+ (set_local $6
+ (if (result i32)
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
+ )
+ (block (result i32)
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.or
- (get_local $5)
- (get_local $33)
- )
- (get_local $5)
- (block (result i32)
- (if
- (i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.or
+ (get_local $6)
+ (get_local $33)
+ )
+ (get_local $6)
+ (block (result i32)
+ (drop
+ (br_if $do-once
+ (get_local $0)
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $12)
- )
)
)
)
)
- (block
- (set_local $5
- (get_local $0)
- )
- (br $do-once)
- )
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $6
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $6)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
- (get_local $5)
- (get_local $3)
+ (get_local $8)
+ (get_local $6)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
- )
- (set_local $10
- (get_local $33)
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
- )
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (i32.const 1512)
)
- (i32.const -8)
)
- (get_local $0)
)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
)
(block
(set_local $29
- (get_local $5)
+ (get_local $36)
)
(set_local $28
- (get_local $1)
+ (get_local $3)
)
(set_local $32
- (get_local $8)
- )
- (br $while-in16)
- )
- )
- (if
- (tee_local $28
- (i32.load offset=20
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
+ (get_local $33)
)
- (set_local $32
- (get_local $8)
+ (set_local $7
+ (i32.const 90)
)
- (br $while-in16)
)
(block
(set_local $18
- (get_local $5)
+ (get_local $36)
)
(set_local $10
- (get_local $8)
+ (get_local $33)
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (block
- (if
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
(i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
+ )
+ (get_local $0)
)
)
+ (get_local $29)
+ )
+ )
+ (set_local $6
+ (select
+ (get_local $8)
+ (get_local $29)
+ (get_local $1)
+ )
+ )
+ (set_local $8
+ (select
+ (get_local $28)
+ (get_local $32)
+ (get_local $1)
)
- (call $qa)
)
(if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ )
+ (set_local $18
+ (if (result i32)
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
)
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $10
+ (get_local $8)
+ )
+ (get_local $6)
)
)
- (call $qa)
)
- (set_local $5
- (i32.load offset=24
- (get_local $10)
+ )
+ )
+ (if (result i32)
+ (get_local $10)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $0)
)
)
- (block $do-once17
+ (block
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $6
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
- (br $do-once17)
)
+ (get_local $10)
)
- (loop $while-in20
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $10)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
+ (block (result i32)
+ (set_local $14
+ (get_local $4)
+ )
(get_local $3)
)
- (br $while-in20)
+ (if (result i32)
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $12)
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $6)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $6)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $6
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $6
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $5
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
- (set_local $6
- (get_local $1)
+ (set_local $5
+ (get_local $6)
)
)
)
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
- )
- (set_local $6
- (get_local $5)
- )
+ (i32.store
+ (get_local $19)
+ (get_local $8)
)
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $6
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $6)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $6)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $6)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2752,86 +2614,205 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (set_local $7
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $3
+ (tee_local $12
(i32.add
- (get_local $17)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
)
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
- )
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $0)
)
- )
- (set_local $5
(get_local $0)
)
)
- )
- (set_local $5
(get_local $0)
)
)
@@ -2846,7 +2827,7 @@
(i32.const 1216)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_local $15
@@ -2859,7 +2840,7 @@
(tee_local $17
(i32.sub
(get_local $10)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 15)
@@ -2870,7 +2851,7 @@
(tee_local $21
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2895,7 +2876,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -2945,7 +2926,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -2953,7 +2934,7 @@
(tee_local $17
(i32.sub
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2966,7 +2947,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2980,7 +2961,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -3038,7 +3019,7 @@
)
(set_local $15
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 48)
)
)
@@ -3055,7 +3036,7 @@
)
(tee_local $17
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 47)
)
)
@@ -3069,7 +3050,7 @@
)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_global $r
@@ -3089,7 +3070,7 @@
(if
(i32.or
(i32.le_u
- (tee_local $6
+ (tee_local $5
(i32.add
(tee_local $16
(i32.load
@@ -3102,7 +3083,7 @@
(get_local $16)
)
(i32.gt_u
- (get_local $6)
+ (get_local $5)
(get_local $18)
)
)
@@ -3138,7 +3119,7 @@
)
)
(block
- (set_local $6
+ (set_local $5
(i32.const 1656)
)
(loop $while-in32
@@ -3147,7 +3128,7 @@
(i32.le_u
(tee_local $16
(i32.load
- (get_local $6)
+ (get_local $5)
)
)
(get_local $18)
@@ -3159,7 +3140,7 @@
(i32.load
(tee_local $19
(i32.add
- (get_local $6)
+ (get_local $5)
(i32.const 4)
)
)
@@ -3169,7 +3150,7 @@
)
(block
(set_local $0
- (get_local $6)
+ (get_local $5)
)
(set_local $4
(get_local $19)
@@ -3179,9 +3160,9 @@
)
)
(br_if $while-in32
- (tee_local $6
+ (tee_local $5
(i32.load offset=8
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3193,7 +3174,7 @@
)
(if
(i32.lt_u
- (tee_local $6
+ (tee_local $5
(i32.and
(i32.sub
(get_local $10)
@@ -3210,7 +3191,7 @@
(i32.eq
(tee_local $19
(call $ta
- (get_local $6)
+ (get_local $5)
)
)
(i32.add
@@ -3232,7 +3213,7 @@
(get_local $19)
)
(set_local $26
- (get_local $6)
+ (get_local $5)
)
(br $label$break$b
(i32.const 191)
@@ -3244,7 +3225,7 @@
(get_local $19)
)
(set_local $2
- (get_local $6)
+ (get_local $5)
)
(set_local $7
(i32.const 181)
@@ -3279,7 +3260,7 @@
(i32.and
(tee_local $19
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1684)
)
@@ -3303,7 +3284,7 @@
)
(i32.sub
(i32.const 0)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3312,7 +3293,7 @@
)
(set_local $0
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1640)
)
@@ -3324,7 +3305,7 @@
(i32.and
(i32.gt_u
(get_local $3)
- (get_local $5)
+ (get_local $6)
)
(i32.lt_u
(get_local $3)
@@ -3342,7 +3323,7 @@
(i32.or
(i32.le_u
(get_local $0)
- (get_local $6)
+ (get_local $5)
)
(i32.gt_u
(get_local $0)
@@ -3351,36 +3332,36 @@
)
)
)
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $3)
+ (set_local $2
+ (if (result i32)
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
)
- )
- (get_local $18)
- )
- (block
- (set_local $20
(get_local $18)
)
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
- )
- )
- (block
- (set_local $11
- (get_local $19)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $2
+ (block (result i32)
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
(get_local $3)
)
- (set_local $7
- (i32.const 181)
- )
)
)
)
@@ -3402,73 +3383,69 @@
(get_local $2)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
- (get_local $2)
- )
+ (set_local $1
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $18)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
)
- (br $label$break$d)
- )
- (set_local $1
(i32.add
(get_local $0)
(get_local $2)
)
)
- )
- (set_local $1
(get_local $2)
)
- )
- (set_local $1
(get_local $2)
)
)
@@ -3547,7 +3524,7 @@
)
)
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 40)
)
)
@@ -3828,613 +3805,637 @@
(get_local $7)
(i32.const 209)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $42)
+ (set_local $30
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $30
(i32.const 1656)
- )
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $6)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $6)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $6)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (tee_local $5
(i32.add
- (get_local $1)
- (i32.const 16)
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $3
+ (get_local $16)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $22)
+ )
+ (get_local $18)
+ )
+ (br $do-once51)
+ )
)
)
- (block
- (set_local $3
- (get_local $16)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
)
(if
- (tee_local $22
- (i32.load
- (get_local $18)
- )
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
)
+ (call $qa)
(block
- (set_local $3
- (get_local $22)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- (set_local $0
- (get_local $18)
+ (set_local $24
+ (get_local $3)
)
)
- (br $do-once51)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $5
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $5)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
- (get_local $6)
+ (i32.store
+ (get_local $18)
+ (get_local $5)
+ )
+ (set_local $24
+ (get_local $0)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4442,11 +4443,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4457,467 +4460,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
(get_local $15)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $15)
- )
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $5
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $5)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4927,73 +4776,198 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $5
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (set_local $7
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (br $while-out63
+ (i32.const 279)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $4
(i32.load
- (tee_local $3
+ (tee_local $0
(i32.add
- (get_local $38)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $5
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
+ )
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (i32.const 276)
)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
)
)
)
@@ -5118,7 +5092,7 @@
)
(i32.store
(i32.const 1220)
- (tee_local $6
+ (tee_local $5
(i32.sub
(i32.add
(get_local $26)
@@ -5131,14 +5105,14 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $6)
+ (get_local $5)
(i32.const 1)
)
)
(i32.store offset=4
(i32.add
(get_local $1)
- (get_local $6)
+ (get_local $5)
)
(i32.const 40)
)
@@ -5149,7 +5123,7 @@
)
)
(i32.store
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $17)
(i32.const 4)
@@ -5230,10 +5204,10 @@
)
(block
(i32.store
- (get_local $6)
+ (get_local $5)
(i32.and
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.const -2)
)
@@ -5538,67 +5512,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
+ (set_local $7
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
+ (get_local $2)
)
- (set_local $7
- (i32.const 305)
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (br $while-out69
+ (i32.const 305)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $0
(i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.const 1)
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
- )
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
- (get_local $4)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
(i32.const 302)
)
)
@@ -5840,7 +5813,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -5848,7 +5821,7 @@
(tee_local $31
(i32.sub
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5861,7 +5834,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5875,7 +5848,7 @@
(i32.store offset=4
(get_local $11)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -5975,7 +5948,7 @@
(set_local $8
(i32.add
(get_local $1)
- (tee_local $7
+ (tee_local $6
(i32.and
(get_local $4)
(i32.const -8)
@@ -5993,8 +5966,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
(block
@@ -6009,10 +5982,10 @@
)
(return)
)
- (set_local $7
+ (set_local $6
(i32.add
(get_local $10)
- (get_local $7)
+ (get_local $6)
)
)
(if
@@ -6056,15 +6029,15 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
)
(i32.store
(i32.const 1216)
- (get_local $7)
+ (get_local $6)
)
(i32.store
(get_local $0)
@@ -6076,16 +6049,16 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $7)
+ (get_local $6)
(i32.const 1)
)
)
(i32.store
(i32.add
(get_local $1)
- (get_local $7)
+ (get_local $6)
)
- (get_local $7)
+ (get_local $6)
)
(return)
)
@@ -6167,8 +6140,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6222,8 +6195,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6300,31 +6273,31 @@
(br $while-in)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $3
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $9)
- )
- (set_local $4
- (get_local $3)
- )
- (br $while-in)
- )
- (block
- (set_local $12
- (get_local $0)
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in)
)
- (set_local $3
+ (block (result i32)
+ (set_local $12
+ (get_local $0)
+ )
(get_local $4)
)
)
@@ -6453,8 +6426,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6499,8 +6472,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6577,8 +6550,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6586,8 +6559,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6596,8 +6569,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6616,7 +6589,7 @@
(i32.and
(tee_local $1
(i32.load
- (tee_local $7
+ (tee_local $6
(i32.add
(get_local $8)
(i32.const 4)
@@ -6629,641 +6602,636 @@
)
(call $qa)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $7)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (set_local $0
- (get_local $6)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1232)
+ (set_local $7
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $5
- (i32.add
- (i32.load
- (i32.const 1220)
- )
- (get_local $6)
+ (block (result i32)
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 1228)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $5
+ (i32.store
(i32.add
- (i32.load
- (i32.const 1216)
- )
- (get_local $6)
+ (get_local $2)
+ (get_local $7)
)
+ (get_local $7)
)
+ (get_local $7)
)
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (return)
- )
- )
- (set_local $5
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $6)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.lt_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $3
- (i32.load offset=12
- (get_local $8)
- )
- )
+ (block (result i32)
(if
- (i32.ne
- (tee_local $12
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 1232)
)
)
(block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $7)
)
)
- (call $qa)
+ )
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
(if
(i32.ne
- (i32.load offset=12
- (get_local $12)
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
)
- (get_local $8)
)
- (call $qa)
+ (return)
+ )
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
)
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
+ )
+ (return)
)
)
(if
(i32.eq
- (get_local $3)
- (get_local $12)
+ (get_local $8)
+ (i32.load
+ (i32.const 1228)
+ )
)
(block
(i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
+ (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1216)
)
- (i32.const -1)
+ (get_local $7)
)
)
)
- (br $do-once4)
- )
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $4)
- )
- (set_local $17
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (i32.load
- (i32.const 1224)
- )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $17
- (get_local $4)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
)
- (call $qa)
+ (get_local $5)
)
+ (return)
)
)
- (i32.store offset=12
- (get_local $12)
- (get_local $3)
- )
- (i32.store
- (get_local $17)
- (get_local $12)
+ (set_local $5
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $12
- (i32.load offset=24
- (get_local $8)
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
)
)
- (block $do-once6
+ (block $do-once4
(if
- (i32.eq
- (tee_local $3
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
(i32.load offset=12
(get_local $8)
)
)
- (get_local $8)
- )
- (block
(if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
+ (i32.ne
+ (tee_local $12
+ (i32.load offset=8
+ (get_local $8)
)
)
- )
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- )
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
+ (tee_local $4
+ (i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
)
- (set_local $6
- (get_local $0)
- )
- (br $do-once6)
)
- )
- (loop $while-in9
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 20)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $12)
+ )
+ (get_local $8)
)
- (br $while-in9)
+ (call $qa)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ )
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
)
+ (i32.const -1)
)
)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- (br $while-in9)
- )
+ (br $do-once4)
)
)
(if
- (i32.lt_u
+ (i32.eq
+ (get_local $3)
(get_local $4)
- (i32.load
- (i32.const 1224)
+ )
+ (set_local $17
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
)
)
- (call $qa)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
)
- (set_local $11
- (get_local $6)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $17
+ (get_local $4)
+ )
+ (call $qa)
)
)
)
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $12)
+ )
)
(block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
- (get_local $8)
- )
- )
- (i32.load
- (i32.const 1224)
- )
+ (set_local $12
+ (i32.load offset=24
+ (get_local $8)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block $do-once6
+ (if
+ (i32.eq
+ (tee_local $3
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
- (get_local $8)
- )
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (set_local $7
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
)
)
- )
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $3)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
- )
- (set_local $11
- (get_local $3)
- )
- )
- (call $qa)
- )
- )
- )
- )
- (if
- (get_local $12)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $7
- (i32.add
- (i32.shl
- (tee_local $3
- (i32.load offset=28
- (get_local $8)
+ (loop $while-in9
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 20)
+ )
+ )
)
)
- (i32.const 2)
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $7)
+ )
)
- (i32.const 1512)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $7)
- (get_local $11)
- )
- (if
- (i32.eqz
- (get_local $11)
)
(block
- (i32.store
- (i32.const 1212)
- (i32.and
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
(i32.load
- (i32.const 1212)
+ (i32.const 1224)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $3)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
)
- (i32.const -1)
)
+ (get_local $8)
)
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $11
+ (get_local $3)
+ )
+ )
+ (call $qa)
)
- (br $do-once4)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (if
+ (get_local $12)
+ (block
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (i32.shl
+ (tee_local $3
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
+ )
+ )
+ )
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $11)
+ )
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $3)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $11)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $11)
+ )
+ )
)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $11)
(tee_local $3
- (i32.add
- (get_local $12)
- (i32.const 16)
+ (i32.load
+ (i32.const 1224)
)
)
)
- (get_local $8)
+ (call $qa)
)
- (i32.store
- (get_local $3)
+ (i32.store offset=24
(get_local $11)
- )
- (i32.store offset=20
(get_local $12)
- (get_local $11)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $11)
)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $3
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $12)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $3)
+ )
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
)
)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $3)
- )
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $6)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
+ )
)
)
)
)
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $7)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
- )
- )
- )
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
)
+ (return)
)
+ (get_local $5)
)
)
)
)
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (get_local $5)
- )
- (return)
- )
- (set_local $0
- (get_local $5)
- )
- )
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7276,7 +7244,7 @@
(set_local $1
(i32.add
(i32.shl
- (get_local $6)
+ (get_local $7)
(i32.const 3)
)
(i32.const 1248)
@@ -7284,7 +7252,7 @@
)
(if
(i32.and
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1208)
)
@@ -7292,13 +7260,13 @@
(tee_local $5
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
(if
(i32.lt_u
- (tee_local $7
+ (tee_local $6
(i32.load
(tee_local $5
(i32.add
@@ -7318,7 +7286,7 @@
(get_local $5)
)
(set_local $13
- (get_local $7)
+ (get_local $6)
)
)
)
@@ -7326,7 +7294,7 @@
(i32.store
(i32.const 1208)
(i32.or
- (get_local $7)
+ (get_local $6)
(get_local $5)
)
)
@@ -7363,7 +7331,7 @@
(set_local $5
(i32.add
(i32.shl
- (tee_local $6
+ (tee_local $7
(if (result i32)
(tee_local $1
(i32.shr_u
@@ -7422,7 +7390,7 @@
(i32.and
(i32.shr_u
(i32.add
- (tee_local $7
+ (tee_local $6
(i32.shl
(get_local $15)
(get_local $1)
@@ -7439,7 +7407,7 @@
)
(i32.shr_u
(i32.shl
- (get_local $7)
+ (get_local $6)
(get_local $15)
)
(i32.const 15)
@@ -7467,7 +7435,7 @@
)
(i32.store offset=28
(get_local $2)
- (get_local $6)
+ (get_local $7)
)
(i32.store offset=20
(get_local $2)
@@ -7484,10 +7452,10 @@
(i32.const 1212)
)
)
- (tee_local $7
+ (tee_local $6
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
@@ -7500,12 +7468,12 @@
(i32.sub
(i32.const 25)
(i32.shr_u
- (get_local $6)
+ (get_local $7)
(i32.const 1)
)
)
(i32.eq
- (get_local $6)
+ (get_local $7)
(i32.const 31)
)
)
@@ -7517,67 +7485,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $16
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $11
- (i32.load
- (tee_local $6
- (i32.add
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $11)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $11)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $6)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $7)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7634,7 +7601,7 @@
)
)
)
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1224)
)
@@ -7642,7 +7609,7 @@
)
(i32.ge_u
(get_local $16)
- (get_local $7)
+ (get_local $6)
)
)
(block
@@ -7677,7 +7644,7 @@
(i32.const 1212)
(i32.or
(get_local $15)
- (get_local $7)
+ (get_local $6)
)
)
(i32.store
@@ -7709,10 +7676,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 1664)
)
)
@@ -8371,12 +8338,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8399,35 +8366,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/memorygrowth.fromasm.clamp b/test/memorygrowth.fromasm.clamp
index a1e87b531..e30f3d298 100644
--- a/test/memorygrowth.fromasm.clamp
+++ b/test/memorygrowth.fromasm.clamp
@@ -123,812 +123,775 @@
(set_local $13
(get_local $25)
)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ (set_local $6
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $6
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $6)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $5)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $5)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
- )
- (i32.sub
- (i32.const 0)
+ (block (result i32)
+ (if
+ (get_local $6)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $5
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
(get_local $6)
+ (get_local $0)
+ )
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $5)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $5)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
- (get_local $6)
- (get_local $8)
+ (get_local $7)
+ (get_local $5)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $6
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $6)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $6)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if (result i32)
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $6
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $6)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
- (if
- (tee_local $4
- (i32.load offset=20
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $4)
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $2
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $6
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $5
+ (if (result i32)
+ (tee_local $14
+ (i32.load offset=16
+ (get_local $6)
+ )
+ )
+ (get_local $14)
+ (if (result i32)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $6)
+ )
+ )
+ (get_local $4)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
- (get_local $6)
- (get_local $1)
- (get_local $4)
+ (set_local $6
+ (get_local $5)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $5)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $6
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -941,699 +904,729 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
+ (i32.store offset=4
(get_local $6)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $5)
)
+ (get_local $5)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $6)
+ )
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
)
- (br $label$break$a)
+ (get_local $16)
)
- (block
- (set_local $16
- (get_local $12)
- )
- (set_local $8
- (get_local $7)
+ (set_local $16
+ (if (result i32)
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
+ )
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $7)
+ )
+ (get_local $12)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1641,1108 +1634,977 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $14
- (get_local $3)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
- (i32.const 1)
+ (set_local $6
+ (if (result i32)
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
+ )
+ (block (result i32)
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.or
- (get_local $5)
- (get_local $33)
- )
- (get_local $5)
- (block (result i32)
- (if
- (i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.or
+ (get_local $6)
+ (get_local $33)
+ )
+ (get_local $6)
+ (block (result i32)
+ (drop
+ (br_if $do-once
+ (get_local $0)
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $12)
- )
)
)
)
)
- (block
- (set_local $5
- (get_local $0)
- )
- (br $do-once)
- )
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $6
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $6)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
- (get_local $5)
- (get_local $3)
+ (get_local $8)
+ (get_local $6)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
- )
- (set_local $10
- (get_local $33)
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
- )
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (i32.const 1512)
)
- (i32.const -8)
)
- (get_local $0)
)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
)
(block
(set_local $29
- (get_local $5)
+ (get_local $36)
)
(set_local $28
- (get_local $1)
+ (get_local $3)
)
(set_local $32
- (get_local $8)
- )
- (br $while-in16)
- )
- )
- (if
- (tee_local $28
- (i32.load offset=20
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
+ (get_local $33)
)
- (set_local $32
- (get_local $8)
+ (set_local $7
+ (i32.const 90)
)
- (br $while-in16)
)
(block
(set_local $18
- (get_local $5)
+ (get_local $36)
)
(set_local $10
- (get_local $8)
+ (get_local $33)
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (block
- (if
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
(i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
+ )
+ (get_local $0)
)
)
+ (get_local $29)
+ )
+ )
+ (set_local $6
+ (select
+ (get_local $8)
+ (get_local $29)
+ (get_local $1)
+ )
+ )
+ (set_local $8
+ (select
+ (get_local $28)
+ (get_local $32)
+ (get_local $1)
)
- (call $qa)
)
(if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ )
+ (set_local $18
+ (if (result i32)
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
)
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $10
+ (get_local $8)
+ )
+ (get_local $6)
)
)
- (call $qa)
)
- (set_local $5
- (i32.load offset=24
- (get_local $10)
+ )
+ )
+ (if (result i32)
+ (get_local $10)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $0)
)
)
- (block $do-once17
+ (block
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $6
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
- (br $do-once17)
)
+ (get_local $10)
)
- (loop $while-in20
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $10)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
+ (block (result i32)
+ (set_local $14
+ (get_local $4)
+ )
(get_local $3)
)
- (br $while-in20)
+ (if (result i32)
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $12)
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $6)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $6)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $6
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $6
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $5
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
- (set_local $6
- (get_local $1)
+ (set_local $5
+ (get_local $6)
)
)
)
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
- )
- (set_local $6
- (get_local $5)
- )
+ (i32.store
+ (get_local $19)
+ (get_local $8)
)
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $6
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $6)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $6)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $6)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2752,86 +2614,205 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (set_local $7
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $3
+ (tee_local $12
(i32.add
- (get_local $17)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
)
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
- )
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $0)
)
- )
- (set_local $5
(get_local $0)
)
)
- )
- (set_local $5
(get_local $0)
)
)
@@ -2846,7 +2827,7 @@
(i32.const 1216)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_local $15
@@ -2859,7 +2840,7 @@
(tee_local $17
(i32.sub
(get_local $10)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 15)
@@ -2870,7 +2851,7 @@
(tee_local $21
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2895,7 +2876,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -2945,7 +2926,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -2953,7 +2934,7 @@
(tee_local $17
(i32.sub
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2966,7 +2947,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2980,7 +2961,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -3038,7 +3019,7 @@
)
(set_local $15
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 48)
)
)
@@ -3055,7 +3036,7 @@
)
(tee_local $17
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 47)
)
)
@@ -3069,7 +3050,7 @@
)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_global $r
@@ -3089,7 +3070,7 @@
(if
(i32.or
(i32.le_u
- (tee_local $6
+ (tee_local $5
(i32.add
(tee_local $16
(i32.load
@@ -3102,7 +3083,7 @@
(get_local $16)
)
(i32.gt_u
- (get_local $6)
+ (get_local $5)
(get_local $18)
)
)
@@ -3138,7 +3119,7 @@
)
)
(block
- (set_local $6
+ (set_local $5
(i32.const 1656)
)
(loop $while-in32
@@ -3147,7 +3128,7 @@
(i32.le_u
(tee_local $16
(i32.load
- (get_local $6)
+ (get_local $5)
)
)
(get_local $18)
@@ -3159,7 +3140,7 @@
(i32.load
(tee_local $19
(i32.add
- (get_local $6)
+ (get_local $5)
(i32.const 4)
)
)
@@ -3169,7 +3150,7 @@
)
(block
(set_local $0
- (get_local $6)
+ (get_local $5)
)
(set_local $4
(get_local $19)
@@ -3179,9 +3160,9 @@
)
)
(br_if $while-in32
- (tee_local $6
+ (tee_local $5
(i32.load offset=8
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3193,7 +3174,7 @@
)
(if
(i32.lt_u
- (tee_local $6
+ (tee_local $5
(i32.and
(i32.sub
(get_local $10)
@@ -3210,7 +3191,7 @@
(i32.eq
(tee_local $19
(call $ta
- (get_local $6)
+ (get_local $5)
)
)
(i32.add
@@ -3232,7 +3213,7 @@
(get_local $19)
)
(set_local $26
- (get_local $6)
+ (get_local $5)
)
(br $label$break$b
(i32.const 191)
@@ -3244,7 +3225,7 @@
(get_local $19)
)
(set_local $2
- (get_local $6)
+ (get_local $5)
)
(set_local $7
(i32.const 181)
@@ -3279,7 +3260,7 @@
(i32.and
(tee_local $19
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1684)
)
@@ -3303,7 +3284,7 @@
)
(i32.sub
(i32.const 0)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3312,7 +3293,7 @@
)
(set_local $0
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1640)
)
@@ -3324,7 +3305,7 @@
(i32.and
(i32.gt_u
(get_local $3)
- (get_local $5)
+ (get_local $6)
)
(i32.lt_u
(get_local $3)
@@ -3342,7 +3323,7 @@
(i32.or
(i32.le_u
(get_local $0)
- (get_local $6)
+ (get_local $5)
)
(i32.gt_u
(get_local $0)
@@ -3351,36 +3332,36 @@
)
)
)
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $3)
+ (set_local $2
+ (if (result i32)
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
)
- )
- (get_local $18)
- )
- (block
- (set_local $20
(get_local $18)
)
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
- )
- )
- (block
- (set_local $11
- (get_local $19)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $2
+ (block (result i32)
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
(get_local $3)
)
- (set_local $7
- (i32.const 181)
- )
)
)
)
@@ -3402,73 +3383,69 @@
(get_local $2)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
- (get_local $2)
- )
+ (set_local $1
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $18)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
)
- (br $label$break$d)
- )
- (set_local $1
(i32.add
(get_local $0)
(get_local $2)
)
)
- )
- (set_local $1
(get_local $2)
)
- )
- (set_local $1
(get_local $2)
)
)
@@ -3547,7 +3524,7 @@
)
)
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 40)
)
)
@@ -3828,613 +3805,637 @@
(get_local $7)
(i32.const 209)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $42)
+ (set_local $30
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $30
(i32.const 1656)
- )
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $6)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $6)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $6)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (tee_local $5
(i32.add
- (get_local $1)
- (i32.const 16)
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $3
+ (get_local $16)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $22)
+ )
+ (get_local $18)
+ )
+ (br $do-once51)
+ )
)
)
- (block
- (set_local $3
- (get_local $16)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
)
(if
- (tee_local $22
- (i32.load
- (get_local $18)
- )
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
)
+ (call $qa)
(block
- (set_local $3
- (get_local $22)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- (set_local $0
- (get_local $18)
+ (set_local $24
+ (get_local $3)
)
)
- (br $do-once51)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $5
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $5)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
- (get_local $6)
+ (i32.store
+ (get_local $18)
+ (get_local $5)
+ )
+ (set_local $24
+ (get_local $0)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4442,11 +4443,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4457,467 +4460,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
(get_local $15)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $15)
- )
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $5
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $5)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4927,73 +4776,198 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $5
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (set_local $7
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (br $while-out63
+ (i32.const 279)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $4
(i32.load
- (tee_local $3
+ (tee_local $0
(i32.add
- (get_local $38)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $5
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
+ )
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (i32.const 276)
)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
)
)
)
@@ -5118,7 +5092,7 @@
)
(i32.store
(i32.const 1220)
- (tee_local $6
+ (tee_local $5
(i32.sub
(i32.add
(get_local $26)
@@ -5131,14 +5105,14 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $6)
+ (get_local $5)
(i32.const 1)
)
)
(i32.store offset=4
(i32.add
(get_local $1)
- (get_local $6)
+ (get_local $5)
)
(i32.const 40)
)
@@ -5149,7 +5123,7 @@
)
)
(i32.store
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $17)
(i32.const 4)
@@ -5230,10 +5204,10 @@
)
(block
(i32.store
- (get_local $6)
+ (get_local $5)
(i32.and
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.const -2)
)
@@ -5538,67 +5512,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
+ (set_local $7
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
+ (get_local $2)
)
- (set_local $7
- (i32.const 305)
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (br $while-out69
+ (i32.const 305)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $0
(i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.const 1)
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
- )
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
- (get_local $4)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
(i32.const 302)
)
)
@@ -5840,7 +5813,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -5848,7 +5821,7 @@
(tee_local $31
(i32.sub
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5861,7 +5834,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5875,7 +5848,7 @@
(i32.store offset=4
(get_local $11)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -5975,7 +5948,7 @@
(set_local $8
(i32.add
(get_local $1)
- (tee_local $7
+ (tee_local $6
(i32.and
(get_local $4)
(i32.const -8)
@@ -5993,8 +5966,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
(block
@@ -6009,10 +5982,10 @@
)
(return)
)
- (set_local $7
+ (set_local $6
(i32.add
(get_local $10)
- (get_local $7)
+ (get_local $6)
)
)
(if
@@ -6056,15 +6029,15 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
)
(i32.store
(i32.const 1216)
- (get_local $7)
+ (get_local $6)
)
(i32.store
(get_local $0)
@@ -6076,16 +6049,16 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $7)
+ (get_local $6)
(i32.const 1)
)
)
(i32.store
(i32.add
(get_local $1)
- (get_local $7)
+ (get_local $6)
)
- (get_local $7)
+ (get_local $6)
)
(return)
)
@@ -6167,8 +6140,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6222,8 +6195,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6300,31 +6273,31 @@
(br $while-in)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $3
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $9)
- )
- (set_local $4
- (get_local $3)
- )
- (br $while-in)
- )
- (block
- (set_local $12
- (get_local $0)
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in)
)
- (set_local $3
+ (block (result i32)
+ (set_local $12
+ (get_local $0)
+ )
(get_local $4)
)
)
@@ -6453,8 +6426,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6499,8 +6472,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6577,8 +6550,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6586,8 +6559,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6596,8 +6569,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6616,7 +6589,7 @@
(i32.and
(tee_local $1
(i32.load
- (tee_local $7
+ (tee_local $6
(i32.add
(get_local $8)
(i32.const 4)
@@ -6629,641 +6602,636 @@
)
(call $qa)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $7)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (set_local $0
- (get_local $6)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1232)
+ (set_local $7
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $5
- (i32.add
- (i32.load
- (i32.const 1220)
- )
- (get_local $6)
+ (block (result i32)
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 1228)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $5
+ (i32.store
(i32.add
- (i32.load
- (i32.const 1216)
- )
- (get_local $6)
+ (get_local $2)
+ (get_local $7)
)
+ (get_local $7)
)
+ (get_local $7)
)
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (return)
- )
- )
- (set_local $5
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $6)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.lt_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $3
- (i32.load offset=12
- (get_local $8)
- )
- )
+ (block (result i32)
(if
- (i32.ne
- (tee_local $12
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 1232)
)
)
(block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $7)
)
)
- (call $qa)
+ )
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
(if
(i32.ne
- (i32.load offset=12
- (get_local $12)
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
)
- (get_local $8)
)
- (call $qa)
+ (return)
+ )
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
)
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
+ )
+ (return)
)
)
(if
(i32.eq
- (get_local $3)
- (get_local $12)
+ (get_local $8)
+ (i32.load
+ (i32.const 1228)
+ )
)
(block
(i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
+ (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1216)
)
- (i32.const -1)
+ (get_local $7)
)
)
)
- (br $do-once4)
- )
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $4)
- )
- (set_local $17
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (i32.load
- (i32.const 1224)
- )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $17
- (get_local $4)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
)
- (call $qa)
+ (get_local $5)
)
+ (return)
)
)
- (i32.store offset=12
- (get_local $12)
- (get_local $3)
- )
- (i32.store
- (get_local $17)
- (get_local $12)
+ (set_local $5
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $12
- (i32.load offset=24
- (get_local $8)
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
)
)
- (block $do-once6
+ (block $do-once4
(if
- (i32.eq
- (tee_local $3
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
(i32.load offset=12
(get_local $8)
)
)
- (get_local $8)
- )
- (block
(if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
+ (i32.ne
+ (tee_local $12
+ (i32.load offset=8
+ (get_local $8)
)
)
- )
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- )
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
+ (tee_local $4
+ (i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
)
- (set_local $6
- (get_local $0)
- )
- (br $do-once6)
)
- )
- (loop $while-in9
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 20)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $12)
+ )
+ (get_local $8)
)
- (br $while-in9)
+ (call $qa)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ )
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
)
+ (i32.const -1)
)
)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- (br $while-in9)
- )
+ (br $do-once4)
)
)
(if
- (i32.lt_u
+ (i32.eq
+ (get_local $3)
(get_local $4)
- (i32.load
- (i32.const 1224)
+ )
+ (set_local $17
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
)
)
- (call $qa)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
)
- (set_local $11
- (get_local $6)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $17
+ (get_local $4)
+ )
+ (call $qa)
)
)
)
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $12)
+ )
)
(block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
- (get_local $8)
- )
- )
- (i32.load
- (i32.const 1224)
- )
+ (set_local $12
+ (i32.load offset=24
+ (get_local $8)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block $do-once6
+ (if
+ (i32.eq
+ (tee_local $3
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
- (get_local $8)
- )
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (set_local $7
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
)
)
- )
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $3)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
- )
- (set_local $11
- (get_local $3)
- )
- )
- (call $qa)
- )
- )
- )
- )
- (if
- (get_local $12)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $7
- (i32.add
- (i32.shl
- (tee_local $3
- (i32.load offset=28
- (get_local $8)
+ (loop $while-in9
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 20)
+ )
+ )
)
)
- (i32.const 2)
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $7)
+ )
)
- (i32.const 1512)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $7)
- (get_local $11)
- )
- (if
- (i32.eqz
- (get_local $11)
)
(block
- (i32.store
- (i32.const 1212)
- (i32.and
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
(i32.load
- (i32.const 1212)
+ (i32.const 1224)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $3)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
)
- (i32.const -1)
)
+ (get_local $8)
)
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $11
+ (get_local $3)
+ )
+ )
+ (call $qa)
)
- (br $do-once4)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (if
+ (get_local $12)
+ (block
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (i32.shl
+ (tee_local $3
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
+ )
+ )
+ )
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $11)
+ )
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $3)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $11)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $11)
+ )
+ )
)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $11)
(tee_local $3
- (i32.add
- (get_local $12)
- (i32.const 16)
+ (i32.load
+ (i32.const 1224)
)
)
)
- (get_local $8)
+ (call $qa)
)
- (i32.store
- (get_local $3)
+ (i32.store offset=24
(get_local $11)
- )
- (i32.store offset=20
(get_local $12)
- (get_local $11)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $11)
)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $3
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $12)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $3)
+ )
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
)
)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $3)
- )
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $6)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
+ )
)
)
)
)
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $7)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
- )
- )
- )
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
)
+ (return)
)
+ (get_local $5)
)
)
)
)
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (get_local $5)
- )
- (return)
- )
- (set_local $0
- (get_local $5)
- )
- )
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7276,7 +7244,7 @@
(set_local $1
(i32.add
(i32.shl
- (get_local $6)
+ (get_local $7)
(i32.const 3)
)
(i32.const 1248)
@@ -7284,7 +7252,7 @@
)
(if
(i32.and
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1208)
)
@@ -7292,13 +7260,13 @@
(tee_local $5
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
(if
(i32.lt_u
- (tee_local $7
+ (tee_local $6
(i32.load
(tee_local $5
(i32.add
@@ -7318,7 +7286,7 @@
(get_local $5)
)
(set_local $13
- (get_local $7)
+ (get_local $6)
)
)
)
@@ -7326,7 +7294,7 @@
(i32.store
(i32.const 1208)
(i32.or
- (get_local $7)
+ (get_local $6)
(get_local $5)
)
)
@@ -7363,7 +7331,7 @@
(set_local $5
(i32.add
(i32.shl
- (tee_local $6
+ (tee_local $7
(if (result i32)
(tee_local $1
(i32.shr_u
@@ -7422,7 +7390,7 @@
(i32.and
(i32.shr_u
(i32.add
- (tee_local $7
+ (tee_local $6
(i32.shl
(get_local $15)
(get_local $1)
@@ -7439,7 +7407,7 @@
)
(i32.shr_u
(i32.shl
- (get_local $7)
+ (get_local $6)
(get_local $15)
)
(i32.const 15)
@@ -7467,7 +7435,7 @@
)
(i32.store offset=28
(get_local $2)
- (get_local $6)
+ (get_local $7)
)
(i32.store offset=20
(get_local $2)
@@ -7484,10 +7452,10 @@
(i32.const 1212)
)
)
- (tee_local $7
+ (tee_local $6
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
@@ -7500,12 +7468,12 @@
(i32.sub
(i32.const 25)
(i32.shr_u
- (get_local $6)
+ (get_local $7)
(i32.const 1)
)
)
(i32.eq
- (get_local $6)
+ (get_local $7)
(i32.const 31)
)
)
@@ -7517,67 +7485,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $16
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $11
- (i32.load
- (tee_local $6
- (i32.add
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $11)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $11)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $6)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $7)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7634,7 +7601,7 @@
)
)
)
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1224)
)
@@ -7642,7 +7609,7 @@
)
(i32.ge_u
(get_local $16)
- (get_local $7)
+ (get_local $6)
)
)
(block
@@ -7677,7 +7644,7 @@
(i32.const 1212)
(i32.or
(get_local $15)
- (get_local $7)
+ (get_local $6)
)
)
(i32.store
@@ -7709,10 +7676,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 1664)
)
)
@@ -8371,12 +8338,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8399,35 +8366,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise
index 9c4cbdfdd..5c4124ac1 100644
--- a/test/memorygrowth.fromasm.imprecise
+++ b/test/memorygrowth.fromasm.imprecise
@@ -121,812 +121,775 @@
(set_local $13
(get_local $25)
)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ (set_local $6
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $6
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $6)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $5)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $5)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
- )
- (i32.sub
- (i32.const 0)
+ (block (result i32)
+ (if
+ (get_local $6)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $5
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
(get_local $6)
+ (get_local $0)
+ )
+ (i32.or
+ (tee_local $5
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $5)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $5)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
- (get_local $6)
- (get_local $8)
+ (get_local $7)
+ (get_local $5)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $6
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $6)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $6)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if (result i32)
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $6
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $6)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
- (if
- (tee_local $4
- (i32.load offset=20
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $4)
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $2
- (get_local $1)
- )
- (br $while-out)
- )
- )
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $6
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $5
+ (if (result i32)
+ (tee_local $14
+ (i32.load offset=16
+ (get_local $6)
+ )
+ )
+ (get_local $14)
+ (if (result i32)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $6)
+ )
+ )
+ (get_local $4)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
+ )
+ )
+ )
+ )
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
- (get_local $6)
- (get_local $1)
- (get_local $4)
+ (set_local $6
+ (get_local $5)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $5)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $6
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -939,699 +902,729 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
- (get_local $5)
+ (i32.store offset=4
(get_local $6)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $5)
)
+ (get_local $5)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $6)
+ )
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (set_local $5
(get_local $3)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
)
- (br $label$break$a)
+ (get_local $16)
)
- (block
- (set_local $16
- (get_local $12)
- )
- (set_local $8
- (get_local $7)
+ (set_local $16
+ (if (result i32)
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
+ )
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
+ )
+ (block (result i32)
+ (set_local $8
+ (get_local $7)
+ )
+ (get_local $12)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1639,1108 +1632,977 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
- )
- )
- (block
- (set_local $14
- (get_local $3)
- )
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
- (i32.const 1)
+ (set_local $6
+ (if (result i32)
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
+ )
+ (block (result i32)
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
+ (get_local $3)
+ )
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
+ (br $while-in14)
)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.or
- (get_local $5)
- (get_local $33)
- )
- (get_local $5)
- (block (result i32)
- (if
- (i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.or
+ (get_local $6)
+ (get_local $33)
+ )
+ (get_local $6)
+ (block (result i32)
+ (drop
+ (br_if $do-once
+ (get_local $0)
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $12)
- )
)
)
)
)
- (block
- (set_local $5
- (get_local $0)
- )
- (br $do-once)
- )
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $6
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $6
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $6)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
- (get_local $5)
- (get_local $3)
+ (get_local $8)
+ (get_local $6)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
- )
- (set_local $10
- (get_local $33)
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
- )
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (i32.const 1512)
)
- (i32.const -8)
)
- (get_local $0)
)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
- )
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
)
(block
(set_local $29
- (get_local $5)
+ (get_local $36)
)
(set_local $28
- (get_local $1)
+ (get_local $3)
)
(set_local $32
- (get_local $8)
- )
- (br $while-in16)
- )
- )
- (if
- (tee_local $28
- (i32.load offset=20
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
+ (get_local $33)
)
- (set_local $32
- (get_local $8)
+ (set_local $7
+ (i32.const 90)
)
- (br $while-in16)
)
(block
(set_local $18
- (get_local $5)
+ (get_local $36)
)
(set_local $10
- (get_local $8)
+ (get_local $33)
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (block
- (if
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
(i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
+ )
+ (get_local $0)
)
)
+ (get_local $29)
+ )
+ )
+ (set_local $6
+ (select
+ (get_local $8)
+ (get_local $29)
+ (get_local $1)
+ )
+ )
+ (set_local $8
+ (select
+ (get_local $28)
+ (get_local $32)
+ (get_local $1)
)
- (call $qa)
)
(if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ )
+ (set_local $18
+ (if (result i32)
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
+ )
+ (block
+ (set_local $29
+ (get_local $6)
)
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block (result i32)
+ (set_local $10
+ (get_local $8)
+ )
+ (get_local $6)
)
)
- (call $qa)
)
- (set_local $5
- (i32.load offset=24
- (get_local $10)
+ )
+ )
+ (if (result i32)
+ (get_local $10)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $0)
)
)
- (block $do-once17
+ (block
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $6
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
- (br $do-once17)
)
+ (get_local $10)
)
- (loop $while-in20
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 20)
+ (block
+ (set_local $1
+ (if (result i32)
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $10)
+ (i32.const 20)
+ )
)
)
)
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
+ (block (result i32)
+ (set_local $14
+ (get_local $4)
+ )
(get_local $3)
)
- (br $while-in20)
+ (if (result i32)
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (get_local $12)
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $6)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $6)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $6
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $6
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $5
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
- (set_local $6
- (get_local $1)
+ (set_local $5
+ (get_local $6)
)
)
)
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
- )
- (set_local $6
- (get_local $5)
- )
+ (i32.store
+ (get_local $19)
+ (get_local $8)
)
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $6
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $6)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $6)
+ (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)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $6)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2750,86 +2612,205 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (set_local $7
+ (block $while-out27 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (br $while-out27
+ (i32.const 148)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $1
(i32.load
- (tee_local $3
+ (tee_local $12
(i32.add
- (get_local $17)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
+ )
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ (block (result i32)
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
)
+ (i32.const 145)
)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
- )
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $5
(get_local $0)
)
- )
- (set_local $5
(get_local $0)
)
)
- )
- (set_local $5
(get_local $0)
)
)
@@ -2844,7 +2825,7 @@
(i32.const 1216)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_local $15
@@ -2857,7 +2838,7 @@
(tee_local $17
(i32.sub
(get_local $10)
- (get_local $5)
+ (get_local $6)
)
)
(i32.const 15)
@@ -2868,7 +2849,7 @@
(tee_local $21
(i32.add
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2893,7 +2874,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -2943,7 +2924,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -2951,7 +2932,7 @@
(tee_local $17
(i32.sub
(get_local $15)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2964,7 +2945,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -2978,7 +2959,7 @@
(i32.store offset=4
(get_local $15)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -3036,7 +3017,7 @@
)
(set_local $15
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 48)
)
)
@@ -3053,7 +3034,7 @@
)
(tee_local $17
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 47)
)
)
@@ -3067,7 +3048,7 @@
)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(set_global $r
@@ -3087,7 +3068,7 @@
(if
(i32.or
(i32.le_u
- (tee_local $6
+ (tee_local $5
(i32.add
(tee_local $16
(i32.load
@@ -3100,7 +3081,7 @@
(get_local $16)
)
(i32.gt_u
- (get_local $6)
+ (get_local $5)
(get_local $18)
)
)
@@ -3136,7 +3117,7 @@
)
)
(block
- (set_local $6
+ (set_local $5
(i32.const 1656)
)
(loop $while-in32
@@ -3145,7 +3126,7 @@
(i32.le_u
(tee_local $16
(i32.load
- (get_local $6)
+ (get_local $5)
)
)
(get_local $18)
@@ -3157,7 +3138,7 @@
(i32.load
(tee_local $19
(i32.add
- (get_local $6)
+ (get_local $5)
(i32.const 4)
)
)
@@ -3167,7 +3148,7 @@
)
(block
(set_local $0
- (get_local $6)
+ (get_local $5)
)
(set_local $4
(get_local $19)
@@ -3177,9 +3158,9 @@
)
)
(br_if $while-in32
- (tee_local $6
+ (tee_local $5
(i32.load offset=8
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3191,7 +3172,7 @@
)
(if
(i32.lt_u
- (tee_local $6
+ (tee_local $5
(i32.and
(i32.sub
(get_local $10)
@@ -3208,7 +3189,7 @@
(i32.eq
(tee_local $19
(call $ta
- (get_local $6)
+ (get_local $5)
)
)
(i32.add
@@ -3230,7 +3211,7 @@
(get_local $19)
)
(set_local $26
- (get_local $6)
+ (get_local $5)
)
(br $label$break$b
(i32.const 191)
@@ -3242,7 +3223,7 @@
(get_local $19)
)
(set_local $2
- (get_local $6)
+ (get_local $5)
)
(set_local $7
(i32.const 181)
@@ -3277,7 +3258,7 @@
(i32.and
(tee_local $19
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1684)
)
@@ -3301,7 +3282,7 @@
)
(i32.sub
(i32.const 0)
- (get_local $6)
+ (get_local $5)
)
)
)
@@ -3310,7 +3291,7 @@
)
(set_local $0
(i32.add
- (tee_local $6
+ (tee_local $5
(i32.load
(i32.const 1640)
)
@@ -3322,7 +3303,7 @@
(i32.and
(i32.gt_u
(get_local $3)
- (get_local $5)
+ (get_local $6)
)
(i32.lt_u
(get_local $3)
@@ -3340,7 +3321,7 @@
(i32.or
(i32.le_u
(get_local $0)
- (get_local $6)
+ (get_local $5)
)
(i32.gt_u
(get_local $0)
@@ -3349,36 +3330,36 @@
)
)
)
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $3)
+ (set_local $2
+ (if (result i32)
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
)
- )
- (get_local $18)
- )
- (block
- (set_local $20
(get_local $18)
)
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
- )
- )
- (block
- (set_local $11
- (get_local $19)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $2
+ (block (result i32)
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
(get_local $3)
)
- (set_local $7
- (i32.const 181)
- )
)
)
)
@@ -3400,73 +3381,69 @@
(get_local $2)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
- (get_local $2)
- )
+ (set_local $1
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $18)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
- )
- (i32.const -1)
- )
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
)
- (br $label$break$d)
- )
- (set_local $1
(i32.add
(get_local $0)
(get_local $2)
)
)
- )
- (set_local $1
(get_local $2)
)
- )
- (set_local $1
(get_local $2)
)
)
@@ -3545,7 +3522,7 @@
)
)
(i32.add
- (get_local $5)
+ (get_local $6)
(i32.const 40)
)
)
@@ -3826,613 +3803,637 @@
(get_local $7)
(i32.const 209)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $42)
+ (set_local $30
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $30
(i32.const 1656)
- )
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $6)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $6)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $6)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $0
+ (if (result i32)
+ (tee_local $16
+ (i32.load
+ (tee_local $5
(i32.add
- (get_local $1)
- (i32.const 16)
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
+ (block (result i32)
+ (set_local $3
+ (get_local $16)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $22)
+ )
+ (get_local $18)
+ )
+ (br $do-once51)
+ )
)
)
- (block
- (set_local $3
- (get_local $16)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $5)
+ )
+ (br $while-in54)
+ )
)
)
(if
- (tee_local $22
- (i32.load
- (get_local $18)
- )
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
)
+ (call $qa)
(block
- (set_local $3
- (get_local $22)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
)
- (set_local $0
- (get_local $18)
+ (set_local $24
+ (get_local $3)
)
)
- (br $do-once51)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $5
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $5)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
- (get_local $6)
+ (i32.store
+ (get_local $18)
+ (get_local $5)
+ )
+ (set_local $24
+ (get_local $0)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4440,11 +4441,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4455,467 +4458,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
(get_local $15)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $15)
- )
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $5
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $5
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $5)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4925,73 +4774,198 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $5
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (set_local $7
+ (block $while-out63 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (br $while-out63
+ (i32.const 279)
+ )
+ )
+ )
+ (if (result i32)
+ (tee_local $4
(i32.load
- (tee_local $3
+ (tee_local $0
(i32.add
- (get_local $38)
- (i32.const 8)
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $5
+ (i32.shl
+ (get_local $5)
+ (i32.const 1)
+ )
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
+ )
+ (block (result i32)
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (i32.const 276)
)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
(block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $5
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
)
)
)
@@ -5116,7 +5090,7 @@
)
(i32.store
(i32.const 1220)
- (tee_local $6
+ (tee_local $5
(i32.sub
(i32.add
(get_local $26)
@@ -5129,14 +5103,14 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $6)
+ (get_local $5)
(i32.const 1)
)
)
(i32.store offset=4
(i32.add
(get_local $1)
- (get_local $6)
+ (get_local $5)
)
(i32.const 40)
)
@@ -5147,7 +5121,7 @@
)
)
(i32.store
- (tee_local $6
+ (tee_local $5
(i32.add
(get_local $17)
(i32.const 4)
@@ -5228,10 +5202,10 @@
)
(block
(i32.store
- (get_local $6)
+ (get_local $5)
(i32.and
(i32.load
- (get_local $6)
+ (get_local $5)
)
(i32.const -2)
)
@@ -5536,67 +5510,66 @@
)
)
(loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
+ (set_local $7
+ (block $while-out69 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
+ (get_local $2)
)
- (set_local $7
- (i32.const 305)
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (br $while-out69
+ (i32.const 305)
+ )
)
- (br $while-out69)
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
+ (if (result i32)
+ (tee_local $3
+ (i32.load
+ (tee_local $0
(i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.const 1)
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
- )
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
- (get_local $4)
- )
- (set_local $7
+ (block (result i32)
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
(i32.const 302)
)
)
@@ -5838,7 +5811,7 @@
(i32.const 1220)
)
)
- (get_local $5)
+ (get_local $6)
)
(block
(i32.store
@@ -5846,7 +5819,7 @@
(tee_local $31
(i32.sub
(get_local $11)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5859,7 +5832,7 @@
(i32.const 1232)
)
)
- (get_local $5)
+ (get_local $6)
)
)
)
@@ -5873,7 +5846,7 @@
(i32.store offset=4
(get_local $11)
(i32.or
- (get_local $5)
+ (get_local $6)
(i32.const 3)
)
)
@@ -5973,7 +5946,7 @@
(set_local $8
(i32.add
(get_local $1)
- (tee_local $7
+ (tee_local $6
(i32.and
(get_local $4)
(i32.const -8)
@@ -5991,8 +5964,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
(block
@@ -6007,10 +5980,10 @@
)
(return)
)
- (set_local $7
+ (set_local $6
(i32.add
(get_local $10)
- (get_local $7)
+ (get_local $6)
)
)
(if
@@ -6054,15 +6027,15 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
)
(i32.store
(i32.const 1216)
- (get_local $7)
+ (get_local $6)
)
(i32.store
(get_local $0)
@@ -6074,16 +6047,16 @@
(i32.store offset=4
(get_local $1)
(i32.or
- (get_local $7)
+ (get_local $6)
(i32.const 1)
)
)
(i32.store
(i32.add
(get_local $1)
- (get_local $7)
+ (get_local $6)
)
- (get_local $7)
+ (get_local $6)
)
(return)
)
@@ -6165,8 +6138,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6220,8 +6193,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6298,31 +6271,31 @@
(br $while-in)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (set_local $3
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
)
- )
- (block
- (set_local $0
- (get_local $9)
- )
- (set_local $4
- (get_local $3)
- )
- (br $while-in)
- )
- (block
- (set_local $12
- (get_local $0)
+ (block
+ (set_local $0
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in)
)
- (set_local $3
+ (block (result i32)
+ (set_local $12
+ (get_local $0)
+ )
(get_local $4)
)
)
@@ -6451,8 +6424,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6497,8 +6470,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
(br $do-once)
)
@@ -6575,8 +6548,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6584,8 +6557,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6594,8 +6567,8 @@
(set_local $2
(get_local $1)
)
- (set_local $6
- (get_local $7)
+ (set_local $7
+ (get_local $6)
)
)
)
@@ -6614,7 +6587,7 @@
(i32.and
(tee_local $1
(i32.load
- (tee_local $7
+ (tee_local $6
(i32.add
(get_local $8)
(i32.const 4)
@@ -6627,641 +6600,636 @@
)
(call $qa)
)
- (if
- (i32.and
- (get_local $1)
- (i32.const 2)
- )
- (block
- (i32.store
- (get_local $7)
- (i32.and
- (get_local $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $6)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $6)
- )
- (get_local $6)
- )
- (set_local $0
- (get_local $6)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1232)
+ (set_local $7
+ (i32.shr_u
+ (tee_local $0
+ (if (result i32)
+ (i32.and
+ (get_local $1)
+ (i32.const 2)
)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $5
- (i32.add
- (i32.load
- (i32.const 1220)
- )
- (get_local $6)
+ (block (result i32)
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (get_local $1)
+ (i32.const -2)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
+ (i32.store offset=4
(get_local $2)
- (i32.load
- (i32.const 1228)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
)
)
- (return)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (return)
- )
- )
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $5
+ (i32.store
(i32.add
- (i32.load
- (i32.const 1216)
- )
- (get_local $6)
+ (get_local $2)
+ (get_local $7)
)
+ (get_local $7)
)
+ (get_local $7)
)
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (return)
- )
- )
- (set_local $5
- (i32.add
- (i32.and
- (get_local $1)
- (i32.const -8)
- )
- (get_local $6)
- )
- )
- (set_local $14
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (block $do-once4
- (if
- (i32.lt_u
- (get_local $1)
- (i32.const 256)
- )
- (block
- (set_local $3
- (i32.load offset=12
- (get_local $8)
- )
- )
+ (block (result i32)
(if
- (i32.ne
- (tee_local $12
- (i32.load offset=8
- (get_local $8)
- )
- )
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $14)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (i32.const 1232)
)
)
(block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $7)
)
)
- (call $qa)
+ )
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
)
(if
(i32.ne
- (i32.load offset=12
- (get_local $12)
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
)
- (get_local $8)
)
- (call $qa)
+ (return)
+ )
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
)
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
+ )
+ (return)
)
)
(if
(i32.eq
- (get_local $3)
- (get_local $12)
+ (get_local $8)
+ (i32.load
+ (i32.const 1228)
+ )
)
(block
(i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $14)
+ (i32.const 1216)
+ (tee_local $5
+ (i32.add
+ (i32.load
+ (i32.const 1216)
)
- (i32.const -1)
+ (get_local $7)
)
)
)
- (br $do-once4)
- )
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $4)
- )
- (set_local $17
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (i32.load
- (i32.const 1224)
- )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
- )
- )
- )
- (get_local $8)
- )
- (set_local $17
- (get_local $4)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
)
- (call $qa)
+ (get_local $5)
)
+ (return)
)
)
- (i32.store offset=12
- (get_local $12)
- (get_local $3)
- )
- (i32.store
- (get_local $17)
- (get_local $12)
+ (set_local $5
+ (i32.add
+ (i32.and
+ (get_local $1)
+ (i32.const -8)
+ )
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $12
- (i32.load offset=24
- (get_local $8)
+ (set_local $14
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
)
)
- (block $do-once6
+ (block $do-once4
(if
- (i32.eq
- (tee_local $3
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
(i32.load offset=12
(get_local $8)
)
)
- (get_local $8)
- )
- (block
(if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
+ (i32.ne
+ (tee_local $12
+ (i32.load offset=8
+ (get_local $8)
)
)
- )
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- )
- (if
- (tee_local $0
- (i32.load
- (get_local $4)
+ (tee_local $4
+ (i32.add
+ (i32.shl
+ (get_local $14)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
)
- (set_local $6
- (get_local $0)
- )
- (br $do-once6)
)
- )
- (loop $while-in9
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 20)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
)
)
+ (call $qa)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (get_local $12)
+ )
+ (get_local $8)
)
- (br $while-in9)
+ (call $qa)
)
)
- (if
- (tee_local $9
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ )
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
)
+ (i32.const -1)
)
)
)
- (block
- (set_local $6
- (get_local $9)
- )
- (set_local $4
- (get_local $0)
- )
- (br $while-in9)
- )
+ (br $do-once4)
)
)
(if
- (i32.lt_u
+ (i32.eq
+ (get_local $3)
(get_local $4)
- (i32.load
- (i32.const 1224)
+ )
+ (set_local $17
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
)
)
- (call $qa)
(block
- (i32.store
- (get_local $4)
- (i32.const 0)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
)
- (set_local $11
- (get_local $6)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (set_local $17
+ (get_local $4)
+ )
+ (call $qa)
)
)
)
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $12)
+ )
)
(block
- (if
- (i32.lt_u
- (tee_local $0
- (i32.load offset=8
- (get_local $8)
- )
- )
- (i32.load
- (i32.const 1224)
- )
+ (set_local $12
+ (i32.load offset=24
+ (get_local $8)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $0)
- (i32.const 12)
+ (block $do-once6
+ (if
+ (i32.eq
+ (tee_local $3
+ (i32.load offset=12
+ (get_local $8)
)
)
+ (get_local $8)
)
- (get_local $8)
- )
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (set_local $7
+ (if (result i32)
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $9)
+ )
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (get_local $4)
+ )
+ )
+ (get_local $0)
+ (br $do-once6)
+ )
)
)
- )
- (get_local $8)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $3)
- )
- (i32.store
- (get_local $4)
- (get_local $0)
- )
- (set_local $11
- (get_local $3)
- )
- )
- (call $qa)
- )
- )
- )
- )
- (if
- (get_local $12)
- (block
- (if
- (i32.eq
- (get_local $8)
- (i32.load
- (tee_local $7
- (i32.add
- (i32.shl
- (tee_local $3
- (i32.load offset=28
- (get_local $8)
+ (loop $while-in9
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 20)
+ )
+ )
)
)
- (i32.const 2)
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ (if
+ (tee_local $9
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $7
+ (get_local $9)
+ )
+ (set_local $4
+ (get_local $0)
+ )
+ (br $while-in9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $7)
+ )
)
- (i32.const 1512)
)
- )
- )
- )
- (block
- (i32.store
- (get_local $7)
- (get_local $11)
- )
- (if
- (i32.eqz
- (get_local $11)
)
(block
- (i32.store
- (i32.const 1212)
- (i32.and
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load offset=8
+ (get_local $8)
+ )
+ )
(i32.load
- (i32.const 1212)
+ (i32.const 1224)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $3)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $0)
+ (i32.const 12)
+ )
)
- (i32.const -1)
)
+ (get_local $8)
)
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $0)
+ )
+ (set_local $11
+ (get_local $3)
+ )
+ )
+ (call $qa)
)
- (br $do-once4)
)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $12)
- (i32.load
- (i32.const 1224)
+ (if
+ (get_local $12)
+ (block
+ (if
+ (i32.eq
+ (get_local $8)
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (i32.shl
+ (tee_local $3
+ (i32.load offset=28
+ (get_local $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
+ )
+ )
+ )
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $11)
+ )
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $3)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $12)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $12)
+ (get_local $11)
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (get_local $11)
+ )
+ )
)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $11)
(tee_local $3
- (i32.add
- (get_local $12)
- (i32.const 16)
+ (i32.load
+ (i32.const 1224)
)
)
)
- (get_local $8)
+ (call $qa)
)
- (i32.store
- (get_local $3)
+ (i32.store offset=24
(get_local $11)
- )
- (i32.store offset=20
(get_local $12)
- (get_local $11)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (get_local $11)
)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $3
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $12)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (get_local $3)
+ )
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
)
)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $3)
- )
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (if
+ (tee_local $1
+ (i32.load offset=4
+ (get_local $6)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
+ )
+ )
)
)
)
)
- (if
- (tee_local $1
- (i32.load offset=4
- (get_local $7)
- )
- )
- (if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $11)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
- )
- )
- )
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $5)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if (result i32)
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (get_local $5)
)
+ (return)
)
+ (get_local $5)
)
)
)
)
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (i32.const 1228)
- )
- )
- (block
- (i32.store
- (i32.const 1216)
- (get_local $5)
- )
- (return)
- )
- (set_local $0
- (get_local $5)
- )
- )
- )
- )
- (set_local $6
- (i32.shr_u
- (get_local $0)
(i32.const 3)
)
)
@@ -7274,7 +7242,7 @@
(set_local $1
(i32.add
(i32.shl
- (get_local $6)
+ (get_local $7)
(i32.const 3)
)
(i32.const 1248)
@@ -7282,7 +7250,7 @@
)
(if
(i32.and
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1208)
)
@@ -7290,13 +7258,13 @@
(tee_local $5
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
(if
(i32.lt_u
- (tee_local $7
+ (tee_local $6
(i32.load
(tee_local $5
(i32.add
@@ -7316,7 +7284,7 @@
(get_local $5)
)
(set_local $13
- (get_local $7)
+ (get_local $6)
)
)
)
@@ -7324,7 +7292,7 @@
(i32.store
(i32.const 1208)
(i32.or
- (get_local $7)
+ (get_local $6)
(get_local $5)
)
)
@@ -7361,7 +7329,7 @@
(set_local $5
(i32.add
(i32.shl
- (tee_local $6
+ (tee_local $7
(if (result i32)
(tee_local $1
(i32.shr_u
@@ -7420,7 +7388,7 @@
(i32.and
(i32.shr_u
(i32.add
- (tee_local $7
+ (tee_local $6
(i32.shl
(get_local $15)
(get_local $1)
@@ -7437,7 +7405,7 @@
)
(i32.shr_u
(i32.shl
- (get_local $7)
+ (get_local $6)
(get_local $15)
)
(i32.const 15)
@@ -7465,7 +7433,7 @@
)
(i32.store offset=28
(get_local $2)
- (get_local $6)
+ (get_local $7)
)
(i32.store offset=20
(get_local $2)
@@ -7482,10 +7450,10 @@
(i32.const 1212)
)
)
- (tee_local $7
+ (tee_local $6
(i32.shl
(i32.const 1)
- (get_local $6)
+ (get_local $7)
)
)
)
@@ -7498,12 +7466,12 @@
(i32.sub
(i32.const 25)
(i32.shr_u
- (get_local $6)
+ (get_local $7)
(i32.const 1)
)
)
(i32.eq
- (get_local $6)
+ (get_local $7)
(i32.const 31)
)
)
@@ -7515,67 +7483,66 @@
)
)
(loop $while-in15
- (block $while-out14
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (set_local $0
+ (block $while-out14 (result i32)
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
- )
- (get_local $0)
- )
- (block
- (set_local $16
- (get_local $1)
+ (get_local $0)
)
- (set_local $0
- (i32.const 130)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (br $while-out14
+ (i32.const 130)
+ )
)
- (br $while-out14)
)
- )
- (if
- (tee_local $11
- (i32.load
- (tee_local $6
- (i32.add
+ (if (result i32)
+ (tee_local $11
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $13)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (set_local $13
- (i32.shl
- (get_local $13)
- (i32.const 1)
+ (block
+ (set_local $13
+ (i32.shl
+ (get_local $13)
+ (i32.const 1)
+ )
)
+ (set_local $1
+ (get_local $11)
+ )
+ (br $while-in15)
)
- (set_local $1
- (get_local $11)
- )
- (br $while-in15)
- )
- (block
- (set_local $18
- (get_local $6)
- )
- (set_local $19
- (get_local $1)
- )
- (set_local $0
+ (block (result i32)
+ (set_local $18
+ (get_local $7)
+ )
+ (set_local $19
+ (get_local $1)
+ )
(i32.const 127)
)
)
@@ -7632,7 +7599,7 @@
)
)
)
- (tee_local $7
+ (tee_local $6
(i32.load
(i32.const 1224)
)
@@ -7640,7 +7607,7 @@
)
(i32.ge_u
(get_local $16)
- (get_local $7)
+ (get_local $6)
)
)
(block
@@ -7675,7 +7642,7 @@
(i32.const 1212)
(i32.or
(get_local $15)
- (get_local $7)
+ (get_local $6)
)
)
(i32.store
@@ -7707,10 +7674,10 @@
)
)
)
- (if
- (get_local $2)
- (return)
- (set_local $0
+ (set_local $0
+ (if (result i32)
+ (get_local $2)
+ (return)
(i32.const 1664)
)
)
@@ -8369,12 +8336,12 @@
(i32.const 3)
)
)
- (set_local $1
- (get_local $0)
- )
(set_local $2
(i32.const 4)
)
+ (set_local $1
+ (get_local $0)
+ )
)
)
(block
@@ -8397,35 +8364,35 @@
(get_local $1)
)
(loop $while-in1
- (if
- (i32.and
- (i32.xor
- (i32.and
- (tee_local $1
- (i32.load
- (get_local $2)
+ (set_local $0
+ (if (result i32)
+ (i32.and
+ (i32.xor
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (get_local $1)
- (i32.const -16843009)
+ (i32.add
+ (get_local $1)
+ (i32.const -16843009)
+ )
)
- )
- (set_local $0
(get_local $2)
- )
- (block
- (set_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (block
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
+ (br $while-in1)
)
- (br $while-in1)
)
)
)
diff --git a/test/passes/inlining-optimizing_optimize-level=3.txt b/test/passes/inlining-optimizing_optimize-level=3.txt
index 61faa4aae..ac66234a6 100644
--- a/test/passes/inlining-optimizing_optimize-level=3.txt
+++ b/test/passes/inlining-optimizing_optimize-level=3.txt
@@ -2726,262 +2726,257 @@
)
)
)
- (block $do-once5
- (if
- (i32.eq
- (i32.and
- (get_local $6)
- (i32.const 255)
+ (set_local $1
+ (block $do-once5 (result i32)
+ (if (result i32)
+ (i32.eq
+ (i32.and
+ (get_local $6)
+ (i32.const 255)
+ )
+ (i32.const 42)
)
- (i32.const 42)
- )
- (block
- (set_local $10
- (block $__rjto$0 (result i32)
- (block $__rjti$0
- (br_if $__rjti$0
- (i32.ge_u
- (tee_local $12
- (i32.add
- (i32.load8_s
- (tee_local $6
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (block (result i32)
+ (set_local $10
+ (block $__rjto$0 (result i32)
+ (block $__rjti$0
+ (br_if $__rjti$0
+ (i32.ge_u
+ (tee_local $12
+ (i32.add
+ (i32.load8_s
+ (tee_local $6
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
)
- )
- (br_if $__rjti$0
- (i32.ne
- (i32.load8_s offset=2
- (get_local $10)
+ (br_if $__rjti$0
+ (i32.ne
+ (i32.load8_s offset=2
+ (get_local $10)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
- )
- (i32.store
- (i32.add
- (get_local $4)
- (i32.shl
- (get_local $12)
- (i32.const 2)
+ (i32.store
+ (i32.add
+ (get_local $4)
+ (i32.shl
+ (get_local $12)
+ (i32.const 2)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (tee_local $6
- (i32.add
- (get_local $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (get_local $6)
+ (drop
+ (i32.load offset=4
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (get_local $6)
+ )
+ (i32.const -48)
)
- (i32.const -48)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
)
- )
- (set_local $8
- (i32.const 1)
- )
- (set_local $16
- (i32.load
- (get_local $6)
+ (set_local $8
+ (i32.const 1)
)
- )
- (br $__rjto$0
- (i32.add
- (get_local $10)
- (i32.const 3)
+ (set_local $16
+ (i32.load
+ (get_local $6)
+ )
)
- )
- )
- (if
- (get_local $8)
- (block
- (set_local $17
- (i32.const -1)
+ (br $__rjto$0
+ (i32.add
+ (get_local $10)
+ (i32.const 3)
+ )
)
- (br $label$break$L1)
- )
- )
- (if
- (i32.eqz
- (get_local $29)
)
- (block
- (set_local $12
- (get_local $1)
- )
- (set_local $10
- (get_local $6)
+ (if
+ (get_local $8)
+ (block
+ (set_local $17
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (set_local $1
- (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (get_local $29)
)
- (set_local $16
- (i32.const 0)
+ (block
+ (set_local $12
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $16
+ (i32.const 0)
+ )
+ (br $do-once5
+ (i32.const 0)
+ )
)
- (br $do-once5)
)
- )
- (set_local $16
- (i32.load
- (tee_local $10
- (i32.and
- (i32.add
- (i32.load
- (get_local $2)
+ (set_local $16
+ (i32.load
+ (tee_local $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const -4)
)
- (i32.const -4)
)
)
)
- )
- (i32.store
- (get_local $2)
- (i32.add
- (get_local $10)
- (i32.const 4)
+ (i32.store
+ (get_local $2)
+ (i32.add
+ (get_local $10)
+ (i32.const 4)
+ )
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (get_local $6)
)
- (set_local $8
- (i32.const 0)
- )
- (get_local $6)
)
- )
- (set_local $12
- (if (result i32)
- (i32.lt_s
- (get_local $16)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $16
- (i32.sub
- (i32.const 0)
- (get_local $16)
- )
+ (set_local $12
+ (if (result i32)
+ (i32.lt_s
+ (get_local $16)
+ (i32.const 0)
)
- (i32.or
- (get_local $1)
- (i32.const 8192)
+ (block (result i32)
+ (set_local $16
+ (i32.sub
+ (i32.const 0)
+ (get_local $16)
+ )
+ )
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
- )
- (set_local $1
(get_local $8)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.add
- (i32.shr_s
- (i32.shl
- (get_local $6)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $6
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (get_local $6)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $12
- (i32.const 0)
- )
- (loop $while-in8
- (set_local $6
- (i32.add
- (i32.mul
- (get_local $12)
- (i32.const 10)
+ (block (result i32)
+ (set_local $12
+ (i32.const 0)
+ )
+ (loop $while-in8
+ (set_local $6
+ (i32.add
+ (i32.mul
+ (get_local $12)
+ (i32.const 10)
+ )
+ (get_local $6)
)
- (get_local $6)
)
- )
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (i32.load8_s
- (tee_local $10
- (i32.add
- (get_local $10)
- (i32.const 1)
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (i32.load8_s
+ (tee_local $10
+ (i32.add
+ (get_local $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
+ )
+ (block
+ (set_local $12
+ (get_local $6)
+ )
+ (set_local $6
+ (get_local $9)
+ )
+ (br $while-in8)
)
- (i32.const 10)
+ )
+ )
+ (if (result i32)
+ (i32.lt_s
+ (get_local $6)
+ (i32.const 0)
)
(block
+ (set_local $17
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
+ (block (result i32)
(set_local $12
- (get_local $6)
+ (get_local $1)
)
- (set_local $6
- (get_local $9)
+ (set_local $16
+ (get_local $6)
)
- (br $while-in8)
+ (get_local $8)
)
)
)
- (if
- (i32.lt_s
- (get_local $6)
- (i32.const 0)
- )
- (block
- (set_local $17
- (i32.const -1)
- )
- (br $label$break$L1)
+ (block (result i32)
+ (set_local $12
+ (get_local $1)
)
- (block
- (set_local $12
- (get_local $1)
- )
- (set_local $1
- (get_local $8)
- )
- (set_local $16
- (get_local $6)
- )
+ (set_local $16
+ (i32.const 0)
)
- )
- )
- (block
- (set_local $12
- (get_local $1)
- )
- (set_local $1
(get_local $8)
)
- (set_local $16
- (i32.const 0)
- )
)
)
)
@@ -3011,33 +3006,33 @@
(i32.const 42)
)
(block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.add
- (get_local $8)
- (i32.const -48)
+ (set_local $6
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $9
+ (i32.add
+ (get_local $8)
+ (i32.const -48)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (set_local $8
- (i32.const 0)
- )
- (set_local $6
+ (block (result i32)
+ (set_local $10
+ (get_local $6)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
(get_local $9)
)
- )
- (block
- (set_local $10
- (get_local $6)
- )
- (br $label$break$L46
- (i32.const 0)
+ (block
+ (set_local $10
+ (get_local $6)
+ )
+ (br $label$break$L46
+ (i32.const 0)
+ )
)
)
)
@@ -3231,42 +3226,42 @@
(i32.const 1)
)
)
- (if
- (i32.lt_u
- (i32.add
- (tee_local $11
- (i32.and
- (tee_local $13
- (i32.load8_s
- (i32.add
+ (set_local $19
+ (if (result i32)
+ (i32.lt_u
+ (i32.add
+ (tee_local $11
+ (i32.and
+ (tee_local $13
+ (i32.load8_s
(i32.add
- (i32.mul
- (get_local $9)
- (i32.const 58)
+ (i32.add
+ (i32.mul
+ (get_local $9)
+ (i32.const 58)
+ )
+ (i32.const 3611)
)
- (i32.const 3611)
+ (get_local $11)
)
- (get_local $11)
)
)
+ (i32.const 255)
)
- (i32.const 255)
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (i32.const 8)
- )
- (block
- (set_local $8
- (get_local $10)
+ (i32.const 8)
)
- (set_local $9
- (get_local $11)
+ (block
+ (set_local $8
+ (get_local $10)
+ )
+ (set_local $9
+ (get_local $11)
+ )
+ (br $while-in13)
)
- (br $while-in13)
- )
- (set_local $19
(get_local $8)
)
)
@@ -4948,27 +4943,27 @@
)
)
)
- (if
- (i32.lt_s
- (get_local $9)
- (i32.const 0)
- )
- (block
- (set_local $6
- (get_local $7)
+ (set_local $5
+ (if (result i32)
+ (i32.lt_s
+ (get_local $9)
+ (i32.const 0)
)
- (set_local $5
- (get_local $11)
+ (block
+ (set_local $6
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $11)
+ )
+ (br $while-in70)
)
- (br $while-in70)
- )
- (block
- (set_local $5
+ (block (result i32)
+ (set_local $9
+ (get_local $11)
+ )
(get_local $7)
)
- (set_local $9
- (get_local $11)
- )
)
)
)
@@ -5422,44 +5417,43 @@
)
)
(loop $while-in90
- (block $while-out89
- (if
- (i32.le_u
- (get_local $5)
- (get_local $11)
- )
- (block
- (set_local $24
- (i32.const 0)
- )
- (set_local $9
+ (set_local $9
+ (block $while-out89 (result i32)
+ (if
+ (i32.le_u
(get_local $5)
+ (get_local $11)
)
- (br $while-out89)
- )
- )
- (if
- (i32.load
- (tee_local $7
- (i32.add
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $while-out89
(get_local $5)
- (i32.const -4)
)
)
)
- (block
- (set_local $24
- (i32.const 1)
+ (if (result i32)
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $5)
+ (i32.const -4)
+ )
+ )
)
- (set_local $9
+ (block (result i32)
+ (set_local $24
+ (i32.const 1)
+ )
(get_local $5)
)
- )
- (block
- (set_local $5
- (get_local $7)
+ (block
+ (set_local $5
+ (get_local $7)
+ )
+ (br $while-in90)
)
- (br $while-in90)
)
)
)
@@ -5568,22 +5562,22 @@
(br $do-once93)
)
)
- (if
- (i32.rem_u
- (get_local $19)
- (i32.const 10)
- )
- (block
- (set_local $5
- (i32.const 0)
- )
- (br $do-once93)
- )
- (block
- (set_local $6
+ (set_local $5
+ (if (result i32)
+ (i32.rem_u
+ (get_local $19)
(i32.const 10)
)
- (set_local $5
+ (block
+ (set_local $5
+ (i32.const 0)
+ )
+ (br $do-once93)
+ )
+ (block (result i32)
+ (set_local $6
+ (i32.const 10)
+ )
(i32.const 0)
)
)
@@ -6077,29 +6071,29 @@
(i32.const -9)
)
)
- (if
- (i32.and
- (i32.gt_s
- (get_local $5)
- (i32.const 9)
- )
- (i32.lt_u
- (tee_local $7
- (i32.add
- (get_local $7)
- (i32.const 4)
+ (set_local $5
+ (if (result i32)
+ (i32.and
+ (i32.gt_s
+ (get_local $5)
+ (i32.const 9)
+ )
+ (i32.lt_u
+ (tee_local $7
+ (i32.add
+ (get_local $7)
+ (i32.const 4)
+ )
)
+ (get_local $9)
)
- (get_local $9)
)
- )
- (block
- (set_local $5
- (get_local $6)
+ (block
+ (set_local $5
+ (get_local $6)
+ )
+ (br $while-in110)
)
- (br $while-in110)
- )
- (set_local $5
(get_local $6)
)
)
@@ -7591,33 +7585,33 @@
(set_local $4
(get_global $tempRet0)
)
- (if
- (i32.or
- (i32.gt_u
- (get_local $1)
- (i32.const 9)
- )
- (i32.and
- (i32.eq
+ (set_local $0
+ (if (result i32)
+ (i32.or
+ (i32.gt_u
(get_local $1)
(i32.const 9)
)
- (i32.gt_u
- (get_local $0)
- (i32.const -1)
+ (i32.and
+ (i32.eq
+ (get_local $1)
+ (i32.const 9)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -1)
+ )
)
)
- )
- (block
- (set_local $0
- (get_local $3)
- )
- (set_local $1
- (get_local $4)
+ (block
+ (set_local $0
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $4)
+ )
+ (br $while-in)
)
- (br $while-in)
- )
- (set_local $0
(get_local $3)
)
)
@@ -7831,258 +7825,274 @@
(local $17 i32)
(local $18 i32)
(block $folding-inner0
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (set_local $0
+ (block $do-once (result i32)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block (result i32)
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if (result i32)
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block (result i32)
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8093,9 +8103,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8110,310 +8120,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
)
+ (get_local $12)
)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
+ )
+ )
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8424,9 +8434,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8441,161 +8451,133 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $2
- (tee_local $1
- (get_local $0)
+ (set_local $2
+ (tee_local $1
+ (get_local $0)
+ )
)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
- )
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
)
- )
- (set_local $2
- (select
- (tee_local $1
- (get_local $0)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (tee_local $1
+ (get_local $0)
+ )
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
+ (get_local $5)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -8603,711 +8585,719 @@
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (br $do-once4)
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
- )
- (br $while-in7)
+ (br $do-once4)
)
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
)
- )
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (set_local $0
(get_local $4)
)
)
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block (result i32)
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if (result i32)
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block (result i32)
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
- )
- )
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
)
- (br $__rjti$3)
+ (get_local $3)
)
- (block
- (set_local $3
- (get_local $4)
- )
- (set_local $1
- (get_local $0)
+ (set_local $1
+ (if (result i32)
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
+ )
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
+ )
+ (block (result i32)
+ (set_local $3
+ (get_local $4)
+ )
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9315,127 +9305,138 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
)
)
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
- )
- (set_local $0
- (get_local $9)
+ (set_local $0
+ (if (result i32)
+ (get_local $6)
+ (block (result i32)
+ (set_local $4
+ (get_local $0)
+ )
+ (get_local $1)
+ )
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
+ )
)
- (br $while-in14)
)
)
)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- (if
- (i32.eqz
- (i32.or
- (get_local $4)
- (get_local $0)
+ (set_local $0
+ (i32.const 0)
)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (if
+ (i32.eqz
+ (i32.or
+ (get_local $4)
+ (get_local $0)
+ )
+ )
+ (block
+ (drop
+ (br_if $do-once
+ (get_local $2)
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
- (i32.sub
- (i32.const 0)
- (get_local $1)
- )
)
)
)
)
- (block
- (set_local $0
- (get_local $2)
- )
- (br $do-once)
- )
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9446,9 +9447,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9463,177 +9464,149 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $3
+ (set_local $4
+ (if (result i32)
(get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
+ )
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
- )
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
)
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
)
- (br $while-in16)
- )
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
- )
- )
- )
- (if
- (get_local $4)
- (if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
- (get_local $2)
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $0)
)
)
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ )
+ (if (result i32)
+ (get_local $4)
+ (if (result i32)
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
+ (get_local $4)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -9641,787 +9614,795 @@
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (br $do-once17)
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
- )
- (br $while-in20)
+ (br $do-once17)
)
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
+ (get_local $12)
)
- (set_local $11
- (get_local $1)
- )
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
)
- (br $while-in28)
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
+ (i32.const 0)
)
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
- )
- (set_local $0
(get_local $2)
)
- )
- (set_local $0
(get_local $2)
)
)
- )
- (set_local $0
(get_local $2)
)
)
@@ -10900,71 +10881,70 @@
)
)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
- (get_local $1)
- )
+ (set_local $3
+ (if (result i32)
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if (result i32)
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
)
- (i32.const -1)
+ (i32.const 2147483647)
)
- (block
- (drop
+ (if (result i32)
+ (i32.eq
(call $_sbrk
- (get_local $4)
+ (get_local $3)
)
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $3
(i32.add
(get_local $3)
(get_local $1)
)
)
- )
- (set_local $3
(get_local $1)
)
+ (get_local $1)
)
)
(if
@@ -11264,77 +11244,46 @@
)
(br $__rjto$11)
)
- (if
- (i32.and
- (i32.load offset=12
- (get_local $5)
+ (set_local $4
+ (if (result i32)
+ (i32.and
+ (i32.load offset=12
+ (get_local $5)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (set_local $4
(i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $5)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $5)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11349,1044 +11298,1075 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (set_local $0
+ (if (result i32)
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
(get_local $3)
+ (br $do-once55)
)
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
+ )
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $12
+ (get_local $1)
+ )
)
- (br $do-once55)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $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)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (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
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
)
- (br $while-in68)
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
diff --git a/test/passes/remove-unused-brs.txt b/test/passes/remove-unused-brs.txt
index 8259864b9..cbfa4d5d5 100644
--- a/test/passes/remove-unused-brs.txt
+++ b/test/passes/remove-unused-brs.txt
@@ -1814,4 +1814,35 @@
)
(i32.const 3)
)
+ (func $undo-if-return (; 73 ;) (type $10) (param $p i32) (result i32)
+ (local $x i32)
+ (block $out
+ (block
+ (br_if $out
+ (get_local $p)
+ )
+ (set_local $x
+ (i32.const 1)
+ )
+ )
+ (block
+ (br_if $out
+ (i32.eqz
+ (get_local $p)
+ )
+ )
+ (set_local $x
+ (i32.const 2)
+ )
+ )
+ (set_local $x
+ (if (result i32)
+ (get_local $p)
+ (br $out)
+ (br $out)
+ )
+ )
+ )
+ (get_local $p)
+ )
)
diff --git a/test/passes/remove-unused-brs.wast b/test/passes/remove-unused-brs.wast
index 0d4bbf226..7c03b5366 100644
--- a/test/passes/remove-unused-brs.wast
+++ b/test/passes/remove-unused-brs.wast
@@ -1441,5 +1441,32 @@
)
(return (i32.const 3))
)
+ (func $undo-if-return (param $p i32) (result i32)
+ (local $x i32)
+ (block $out
+ (set_local $x
+ (if (result i32)
+ (get_local $p)
+ (br $out)
+ (i32.const 1)
+ )
+ )
+ (set_local $x
+ (if (result i32)
+ (get_local $p)
+ (i32.const 2)
+ (br $out)
+ )
+ )
+ (set_local $x
+ (if (result i32)
+ (get_local $p)
+ (br $out)
+ (br $out)
+ )
+ )
+ )
+ (get_local $p)
+ )
)
diff --git a/test/passes/simplify-locals.txt b/test/passes/simplify-locals.txt
index 00caacb89..fb261325c 100644
--- a/test/passes/simplify-locals.txt
+++ b/test/passes/simplify-locals.txt
@@ -1073,4 +1073,111 @@
)
(unreachable)
)
+ (func $if-one-side-unreachable (; 10 ;) (type $FUNCSIG$v)
+ (local $x i32)
+ (block $out
+ (drop
+ (if (result i32)
+ (i32.const 1)
+ (block
+ (br $out)
+ (nop)
+ )
+ (block (result i32)
+ (nop)
+ (i32.const 2)
+ )
+ )
+ )
+ (drop
+ (if (result i32)
+ (i32.const 3)
+ (block (result i32)
+ (nop)
+ (i32.const 4)
+ )
+ (block
+ (br $out)
+ (nop)
+ )
+ )
+ )
+ (if
+ (i32.const 5)
+ (br $out)
+ (br $out)
+ )
+ )
+ )
+ (func $if-one-side-unreachable-blocks (; 11 ;) (type $FUNCSIG$v)
+ (local $x i32)
+ (local $y i32)
+ (block $out
+ (drop
+ (if (result i32)
+ (i32.const 1)
+ (block $block
+ (drop
+ (i32.const 2)
+ )
+ (drop
+ (i32.const 3)
+ )
+ (br $out)
+ (nop)
+ )
+ (block $block2 (result i32)
+ (nop)
+ (drop
+ (i32.const 5)
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ (drop
+ (if (result i32)
+ (i32.const 6)
+ (block $block4 (result i32)
+ (nop)
+ (drop
+ (i32.const 8)
+ )
+ (i32.const 7)
+ )
+ (block $block5
+ (drop
+ (i32.const 9)
+ )
+ (drop
+ (i32.const 10)
+ )
+ (br $out)
+ (nop)
+ )
+ )
+ )
+ (if
+ (i32.const 11)
+ (block $block7
+ (drop
+ (i32.const 12)
+ )
+ (drop
+ (i32.const 13)
+ )
+ (br $out)
+ )
+ (block $block8
+ (drop
+ (i32.const 14)
+ )
+ (drop
+ (i32.const 15)
+ )
+ (br $out)
+ )
+ )
+ )
+ )
)
diff --git a/test/passes/simplify-locals.wast b/test/passes/simplify-locals.wast
index 842e2b5af..df8e8b7dc 100644
--- a/test/passes/simplify-locals.wast
+++ b/test/passes/simplify-locals.wast
@@ -987,4 +987,95 @@
)
(unreachable)
)
+ (func $if-one-side-unreachable
+ (local $x i32)
+ (block $out
+ (if
+ (i32.const 1)
+ (br $out)
+ (set_local $x
+ (i32.const 2)
+ )
+ )
+ (if
+ (i32.const 3)
+ (set_local $x
+ (i32.const 4)
+ )
+ (br $out)
+ )
+ (if
+ (i32.const 5)
+ (br $out)
+ (br $out)
+ )
+ )
+ )
+ (func $if-one-side-unreachable-blocks
+ (local $x i32)
+ (local $y i32)
+ (block $out
+ (if
+ (i32.const 1)
+ (block
+ (set_local $x
+ (i32.const 2)
+ )
+ (set_local $y
+ (i32.const 3)
+ )
+ (br $out)
+ )
+ (block
+ (set_local $x
+ (i32.const 4)
+ )
+ (set_local $y
+ (i32.const 5)
+ )
+ )
+ )
+ (if
+ (i32.const 6)
+ (block
+ (set_local $x
+ (i32.const 7)
+ )
+ (set_local $y
+ (i32.const 8)
+ )
+ )
+ (block
+ (set_local $x
+ (i32.const 9)
+ )
+ (set_local $y
+ (i32.const 10)
+ )
+ (br $out)
+ )
+ )
+ (if
+ (i32.const 11)
+ (block
+ (set_local $x
+ (i32.const 12)
+ )
+ (set_local $y
+ (i32.const 13)
+ )
+ (br $out)
+ )
+ (block
+ (set_local $x
+ (i32.const 14)
+ )
+ (set_local $y
+ (i32.const 15)
+ )
+ (br $out)
+ )
+ )
+ )
+ )
)