summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ast_utils.h2
-rw-r--r--src/passes/RemoveUnusedBrs.cpp94
-rw-r--r--test/emcc_O2_hello_world.fromasm1874
-rw-r--r--test/emcc_O2_hello_world.fromasm.imprecise1874
-rw-r--r--test/emcc_hello_world.fromasm3777
-rw-r--r--test/emcc_hello_world.fromasm.imprecise3777
-rw-r--r--test/hello_world.fromasm8
-rw-r--r--test/hello_world.fromasm.imprecise8
-rw-r--r--test/memorygrowth.fromasm963
-rw-r--r--test/memorygrowth.fromasm.imprecise963
-rw-r--r--test/min.fromasm32
-rw-r--r--test/min.fromasm.imprecise32
-rw-r--r--test/passes/remove-unused-brs.txt133
-rw-r--r--test/passes/remove-unused-brs.wast67
-rw-r--r--test/two_sides.fromasm4
-rw-r--r--test/two_sides.fromasm.imprecise4
-rw-r--r--test/unit.fromasm44
-rw-r--r--test/unit.fromasm.imprecise44
18 files changed, 6508 insertions, 7192 deletions
diff --git a/src/ast_utils.h b/src/ast_utils.h
index 36895ac51..5cda48578 100644
--- a/src/ast_utils.h
+++ b/src/ast_utils.h
@@ -52,7 +52,7 @@ struct EffectAnalyzer : public PostWalker<EffectAnalyzer, Visitor<EffectAnalyzer
bool accessesLocal() { return localsRead.size() + localsWritten.size() > 0; }
bool accessesMemory() { return calls || readsMemory || writesMemory; }
- bool hasSideEffects() { return calls || localsWritten.size() > 0 || writesMemory; }
+ bool hasSideEffects() { return calls || localsWritten.size() > 0 || writesMemory || branches; }
bool hasAnything() { return branches || calls || accessesLocal() || readsMemory || writesMemory; }
// checks if these effects would invalidate another set (e.g., if we write, we invalidate someone that reads, they can't be moved past us)
diff --git a/src/passes/RemoveUnusedBrs.cpp b/src/passes/RemoveUnusedBrs.cpp
index 3d6d6973f..f4efef173 100644
--- a/src/passes/RemoveUnusedBrs.cpp
+++ b/src/passes/RemoveUnusedBrs.cpp
@@ -29,7 +29,11 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<R
bool anotherCycle;
- typedef std::vector<Break*> Flows;
+ // Whether a value can flow in the current path. If so, then a br with value
+ // can be turned into a value, which will flow through blocks/ifs to the right place
+ bool valueCanFlow;
+
+ typedef std::vector<Expression**> Flows;
// list of breaks that are currently flowing. if they reach their target without
// interference, they can be removed (or their value forwarded TODO)
@@ -45,12 +49,17 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<R
if (curr->is<Break>()) {
flows.clear();
auto* br = curr->cast<Break>();
- if (!br->condition && !br->value) { // TODO: optimize in those cases?
+ if (!br->condition) { // TODO: optimize?
// a break, let's see where it flows to
- flows.push_back(br);
+ flows.push_back(currp);
+ self->valueCanFlow = true; // start optimistic
+ } else {
+ self->valueCanFlow = false;
}
- } else if (curr->is<Switch>()) {
+ } else if (curr->is<Return>()) {
flows.clear();
+ flows.push_back(currp);
+ self->valueCanFlow = true; // start optimistic
} else if (curr->is<If>()) {
auto* iff = curr->cast<If>();
if (iff->ifFalse) {
@@ -62,15 +71,25 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<R
}
} else if (curr->is<Block>()) {
// any breaks flowing to here are unnecessary, as we get here anyhow
- auto name = curr->cast<Block>()->name;
+ auto* block = curr->cast<Block>();
+ auto name = block->name;
if (name.is()) {
size_t size = flows.size();
size_t skip = 0;
for (size_t i = 0; i < size; i++) {
- if (flows[i]->name == name) {
- ExpressionManipulator::nop(flows[i]);
- skip++;
- self->anotherCycle = true;
+ auto* flow = (*flows[i])->dynCast<Break>();
+ if (flow && flow->name == name) {
+ if (!flow->value || self->valueCanFlow) {
+ if (!flow->value) {
+ // br => nop
+ ExpressionManipulator::nop(flow);
+ } else {
+ // br with value => value
+ *flows[i] = flow->value;
+ }
+ skip++;
+ self->anotherCycle = true;
+ }
} else if (skip > 0) {
flows[i - skip] = flows[i];
}
@@ -78,15 +97,19 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<R
if (skip > 0) {
flows.resize(size - skip);
}
+ // drop a nop at the end of a block, which prevents a value flowing
+ while (block->list.size() > 0 && block->list.back()->is<Nop>()) {
+ block->list.resize(block->list.size() - 1);
+ self->anotherCycle = true;
+ }
}
- } else if (curr->is<Loop>()) {
- // TODO we might optimize branches out of here
- flows.clear();
} else if (curr->is<Nop>()) {
// ignore (could be result of a previous cycle)
+ self->valueCanFlow = false;
} else {
- // anything else stops the flow
+ // anything else stops the flow TODO: optimize loops?
flows.clear();
+ self->valueCanFlow = false;
}
}
@@ -137,8 +160,51 @@ struct RemoveUnusedBrs : public WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<R
anotherCycle = false;
WalkerPass<PostWalker<RemoveUnusedBrs, Visitor<RemoveUnusedBrs>>>::walk(root);
assert(ifStack.empty());
- assert(flows.empty());
+ // flows may contain returns, which are flowing out and so can be optimized
+ for (size_t i = 0; i < flows.size(); i++) {
+ auto* flow = (*flows[i])->cast<Return>(); // cannot be a break
+ if (!flow->value) {
+ // return => nop
+ ExpressionManipulator::nop(flow);
+ anotherCycle = true;
+ } else if (valueCanFlow) {
+ // return with value => value
+ *flows[i] = flow->value;
+ anotherCycle = true;
+ }
+ }
+ flows.clear();
} while (anotherCycle);
+ // finally, we may have simplified ifs enough to turn them into selects
+ struct Selectifier : public WalkerPass<PostWalker<Selectifier, Visitor<Selectifier>>> {
+ void visitIf(If* curr) {
+ if (curr->ifFalse) {
+ // if with else, consider turning it into a select if there is no control flow
+ // TODO: estimate cost
+ EffectAnalyzer condition;
+ condition.walk(curr->condition);
+ if (!condition.hasSideEffects()) {
+ EffectAnalyzer ifTrue;
+ ifTrue.walk(curr->ifTrue);
+ if (!ifTrue.hasSideEffects()) {
+ EffectAnalyzer ifFalse;
+ ifFalse.walk(curr->ifFalse);
+ if (!ifFalse.hasSideEffects()) {
+ auto* select = getModule()->allocator.alloc<Select>();
+ select->condition = curr->condition;
+ select->ifTrue = curr->ifTrue;
+ select->ifFalse = curr->ifFalse;
+ select->finalize();
+ replaceCurrent(select);
+ }
+ }
+ }
+ }
+ }
+ };
+ Selectifier selectifier;
+ selectifier.setModule(getModule());
+ selectifier.walk(root);
}
};
diff --git a/test/emcc_O2_hello_world.fromasm b/test/emcc_O2_hello_world.fromasm
index 50967da70..fbe94c64b 100644
--- a/test/emcc_O2_hello_world.fromasm
+++ b/test/emcc_O2_hello_world.fromasm
@@ -50,8 +50,8 @@
(local $i62 i32)
(local $i8 i32)
(local $i15 i32)
- (local $i44 i32)
(local $i45 i32)
+ (local $i44 i32)
(local $i60 i32)
(local $i3 i32)
(local $i4 i32)
@@ -139,27 +139,6 @@
(i32.const 245)
)
(block
- (set_local $i3
- (i32.shr_u
- (set_local $i2
- (if
- (i32.lt_u
- (get_local $i1)
- (i32.const 11)
- )
- (i32.const 16)
- (i32.and
- (i32.add
- (get_local $i1)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.and
(set_local $i5
@@ -169,7 +148,27 @@
(i32.const 176)
)
)
- (get_local $i3)
+ (set_local $i3
+ (i32.shr_u
+ (set_local $i2
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $i1)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $i1)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -822,36 +821,37 @@
)
)
)
- (set_local $i5
- (if
- (set_local $i15
- (i32.lt_u
- (set_local $i10
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $i23)
- )
- (i32.const -8)
- )
- (get_local $i2)
+ (set_local $i15
+ (i32.lt_u
+ (set_local $i10
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $i23)
)
+ (i32.const -8)
)
- (get_local $i5)
+ (get_local $i2)
)
)
+ (get_local $i5)
+ )
+ )
+ (set_local $i5
+ (select
(get_local $i10)
(get_local $i5)
+ (get_local $i15)
)
)
(set_local $i3
(get_local $i23)
)
(set_local $i7
- (if
- (get_local $i15)
+ (select
(get_local $i23)
(get_local $i7)
+ (get_local $i15)
)
)
(br $while-in$7)
@@ -1562,11 +1562,7 @@
(set_local $i7
(i32.shl
(get_local $i5)
- (if
- (i32.eq
- (get_local $i32)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -1575,6 +1571,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i32)
+ (i32.const 31)
+ )
)
)
)
@@ -1641,14 +1641,16 @@
)
)
(set_local $i16
- (if
+ (select
+ (get_local $i10)
+ (set_local $i9
+ (i32.load offset=20
+ (get_local $i17)
+ )
+ )
(i32.or
(i32.eq
- (set_local $i9
- (i32.load offset=20
- (get_local $i17)
- )
- )
+ (get_local $i9)
(i32.const 0)
)
(i32.eq
@@ -1672,8 +1674,6 @@
)
)
)
- (get_local $i10)
- (get_local $i9)
)
)
(if
@@ -1920,33 +1920,34 @@
(set_local $i36
(i32.const 0)
)
- (set_local $i3
- (if
- (set_local $i7
- (i32.lt_u
- (set_local $i8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $i38)
- )
- (i32.const -8)
- )
- (get_local $i5)
+ (set_local $i7
+ (i32.lt_u
+ (set_local $i8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $i38)
)
+ (i32.const -8)
)
- (get_local $i37)
+ (get_local $i5)
)
)
+ (get_local $i37)
+ )
+ )
+ (set_local $i3
+ (select
(get_local $i8)
(get_local $i37)
+ (get_local $i7)
)
)
(set_local $i8
- (if
- (get_local $i7)
+ (select
(get_local $i38)
(get_local $i39)
+ (get_local $i7)
)
)
(if
@@ -2002,11 +2003,7 @@
)
)
(if
- (if
- (i32.ne
- (get_local $i44)
- (i32.const 0)
- )
+ (select
(i32.lt_u
(get_local $i43)
(i32.sub
@@ -2017,6 +2014,10 @@
)
)
(i32.const 0)
+ (i32.ne
+ (get_local $i44)
+ (i32.const 0)
+ )
)
(block
(if
@@ -2686,11 +2687,7 @@
(set_local $i4
(i32.shl
(get_local $i43)
- (if
- (i32.eq
- (get_local $i52)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -2699,6 +2696,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i52)
+ (i32.const 31)
+ )
)
)
)
@@ -3209,410 +3210,411 @@
(i32.const 0)
)
)
- (if
- (if
+ (set_local $i36
+ (block $label$break$L257
(if
- (if
- (i32.eq
- (set_local $i36
- (block $label$break$L257
- (if
- (i32.and
- (i32.load
- (i32.const 620)
- )
- (i32.const 4)
- )
- (i32.const 190)
- (block
- (block $label$break$L259
- (if
- (set_local $i52
+ (i32.and
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
+ )
+ (i32.const 190)
+ (block
+ (block $label$break$L259
+ (if
+ (set_local $i52
+ (i32.load
+ (i32.const 200)
+ )
+ )
+ (block
+ (set_local $i50
+ (i32.const 624)
+ )
+ (loop $while-out$37 $while-in$38
+ (if
+ (if
+ (i32.le_u
+ (set_local $i51
(i32.load
- (i32.const 200)
+ (get_local $i50)
)
)
- (block
- (set_local $i50
- (i32.const 624)
- )
- (loop $while-out$37 $while-in$38
- (if
- (if
- (i32.le_u
- (set_local $i51
- (i32.load
- (get_local $i50)
- )
- )
- (get_local $i52)
- )
- (i32.gt_u
- (i32.add
- (get_local $i51)
- (i32.load
- (set_local $i45
- (i32.add
- (get_local $i50)
- (i32.const 4)
- )
- )
- )
- )
- (get_local $i52)
- )
- (i32.const 0)
- )
- (block
- (set_local $i56
- (get_local $i50)
- )
- (set_local $i57
- (get_local $i45)
- )
- (br $while-out$37)
- )
- )
- (if
- (i32.eqz
- (set_local $i50
- (i32.load offset=8
- (get_local $i50)
- )
- )
- )
- (block
- (set_local $i36
- (i32.const 173)
- )
- (br $label$break$L259)
- )
- )
- (br $while-in$38)
- )
- (if
- (i32.lt_u
- (set_local $i50
- (i32.and
- (i32.sub
- (get_local $i55)
- (i32.load
- (i32.const 188)
- )
- )
- (get_local $i54)
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (set_local $i45
- (call_import $_sbrk
- (get_local $i50)
- )
- )
- (i32.add
- (i32.load
- (get_local $i56)
- )
- (i32.load
- (get_local $i57)
- )
- )
- )
- (if
- (i32.ne
- (get_local $i45)
- (i32.const -1)
- )
- (block
- (set_local $i58
- (get_local $i45)
- )
- (set_local $i59
- (get_local $i50)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- )
- (block
- (set_local $i60
- (get_local $i45)
- )
- (set_local $i61
- (get_local $i50)
- )
- (set_local $i36
- (i32.const 183)
- )
+ (get_local $i52)
+ )
+ (i32.gt_u
+ (i32.add
+ (get_local $i51)
+ (i32.load
+ (set_local $i45
+ (i32.add
+ (get_local $i50)
+ (i32.const 4)
)
)
)
)
- (set_local $i36
- (i32.const 173)
+ (get_local $i52)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $i56
+ (get_local $i50)
+ )
+ (set_local $i57
+ (get_local $i45)
+ )
+ (br $while-out$37)
+ )
+ )
+ (if
+ (i32.eqz
+ (set_local $i50
+ (i32.load offset=8
+ (get_local $i50)
)
)
)
- (block $do-once$39
- (if
- (if
- (i32.eq
- (get_local $i36)
- (i32.const 173)
+ (block
+ (set_local $i36
+ (i32.const 173)
+ )
+ (br $label$break$L259)
+ )
+ )
+ (br $while-in$38)
+ )
+ (if
+ (i32.lt_u
+ (set_local $i50
+ (i32.and
+ (i32.sub
+ (get_local $i55)
+ (i32.load
+ (i32.const 188)
)
- (i32.ne
- (set_local $i52
- (call_import $_sbrk
- (i32.const 0)
- )
+ )
+ (get_local $i54)
+ )
+ )
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.eq
+ (set_local $i45
+ (call_import $_sbrk
+ (get_local $i50)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $i56)
+ )
+ (i32.load
+ (get_local $i57)
+ )
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $i45)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i58
+ (get_local $i45)
+ )
+ (set_local $i59
+ (get_local $i50)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
+ )
+ )
+ (block
+ (set_local $i60
+ (get_local $i45)
+ )
+ (set_local $i61
+ (get_local $i50)
+ )
+ (set_local $i36
+ (i32.const 183)
+ )
+ )
+ )
+ )
+ )
+ (set_local $i36
+ (i32.const 173)
+ )
+ )
+ )
+ (block $do-once$39
+ (if
+ (if
+ (i32.eq
+ (get_local $i36)
+ (i32.const 173)
+ )
+ (i32.ne
+ (set_local $i52
+ (call_import $_sbrk
+ (i32.const 0)
+ )
+ )
+ (i32.const -1)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $i62
+ (if
+ (i32.and
+ (set_local $i45
+ (i32.add
+ (set_local $i50
+ (i32.load
+ (i32.const 652)
)
- (i32.const -1)
)
+ (i32.const -1)
+ )
+ )
+ (set_local $i5
+ (get_local $i52)
+ )
+ )
+ (i32.add
+ (i32.sub
+ (get_local $i43)
+ (get_local $i5)
+ )
+ (i32.and
+ (i32.add
+ (get_local $i45)
+ (get_local $i5)
+ )
+ (i32.sub
(i32.const 0)
+ (get_local $i50)
)
- (block
- (set_local $i62
- (if
- (i32.and
- (set_local $i45
- (i32.add
- (set_local $i50
- (i32.load
- (i32.const 652)
- )
- )
- (i32.const -1)
- )
- )
- (set_local $i5
- (get_local $i52)
- )
- )
- (i32.add
- (i32.sub
- (get_local $i43)
- (get_local $i5)
- )
- (i32.and
- (i32.add
- (get_local $i45)
- (get_local $i5)
- )
- (i32.sub
- (i32.const 0)
- (get_local $i50)
- )
- )
- )
- (get_local $i43)
- )
- )
- (set_local $i5
- (i32.add
- (set_local $i50
- (i32.load
- (i32.const 608)
- )
- )
- (get_local $i62)
- )
+ )
+ )
+ (get_local $i43)
+ )
+ )
+ (set_local $i5
+ (i32.add
+ (set_local $i50
+ (i32.load
+ (i32.const 608)
+ )
+ )
+ (get_local $i62)
+ )
+ )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $i62)
+ (get_local $i31)
+ )
+ (i32.lt_u
+ (get_local $i62)
+ (i32.const 2147483647)
+ )
+ )
+ (block
+ (br_if $do-once$39
+ (select
+ (i32.or
+ (i32.le_u
+ (get_local $i5)
+ (get_local $i50)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $i62)
- (get_local $i31)
- )
- (i32.lt_u
- (get_local $i62)
- (i32.const 2147483647)
- )
- )
- (block
- (br_if $do-once$39
- (if
- (i32.ne
- (set_local $i45
- (i32.load
- (i32.const 616)
- )
- )
- (i32.const 0)
- )
- (i32.or
- (i32.le_u
- (get_local $i5)
- (get_local $i50)
- )
- (i32.gt_u
- (get_local $i5)
- (get_local $i45)
- )
- )
- (i32.const 0)
- )
- )
- (if
- (i32.eq
- (set_local $i45
- (call_import $_sbrk
- (get_local $i62)
- )
- )
- (get_local $i52)
- )
- (block
- (set_local $i58
- (get_local $i52)
- )
- (set_local $i59
- (get_local $i62)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- (block
- (set_local $i60
- (get_local $i45)
- )
- (set_local $i61
- (get_local $i62)
- )
- (set_local $i36
- (i32.const 183)
- )
- )
+ (i32.gt_u
+ (get_local $i5)
+ (set_local $i45
+ (i32.load
+ (i32.const 616)
)
)
)
)
+ (i32.const 0)
+ (i32.ne
+ (get_local $i45)
+ (i32.const 0)
+ )
)
)
- (block $label$break$L279
- (if
- (i32.eq
- (get_local $i36)
+ (if
+ (i32.eq
+ (set_local $i45
+ (call_import $_sbrk
+ (get_local $i62)
+ )
+ )
+ (get_local $i52)
+ )
+ (block
+ (set_local $i58
+ (get_local $i52)
+ )
+ (set_local $i59
+ (get_local $i62)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
+ )
+ (block
+ (set_local $i60
+ (get_local $i45)
+ )
+ (set_local $i61
+ (get_local $i62)
+ )
+ (set_local $i36
(i32.const 183)
)
- (block
- (set_local $i45
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ (block $label$break$L279
+ (if
+ (i32.eq
+ (get_local $i36)
+ (i32.const 183)
+ )
+ (block
+ (set_local $i45
+ (i32.sub
+ (i32.const 0)
+ (get_local $i61)
+ )
+ )
+ (if
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $i53)
+ (get_local $i61)
+ )
+ (i32.and
+ (i32.lt_u
+ (get_local $i61)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $i60)
+ (i32.const -1)
+ )
+ )
+ )
+ (i32.lt_u
+ (set_local $i5
+ (i32.and
+ (i32.add
(i32.sub
- (i32.const 0)
+ (get_local $i44)
(get_local $i61)
)
- )
- (if
- (if
- (i32.and
- (i32.gt_u
- (get_local $i53)
- (get_local $i61)
- )
- (i32.and
- (i32.lt_u
- (get_local $i61)
- (i32.const 2147483647)
- )
- (i32.ne
- (get_local $i60)
- (i32.const -1)
- )
- )
- )
- (i32.lt_u
- (set_local $i5
- (i32.and
- (i32.add
- (i32.sub
- (get_local $i44)
- (get_local $i61)
- )
- (set_local $i52
- (i32.load
- (i32.const 656)
- )
- )
- )
- (i32.sub
- (i32.const 0)
- (get_local $i52)
- )
- )
- )
- (i32.const 2147483647)
- )
- (i32.const 0)
- )
- (if
- (i32.eq
- (call_import $_sbrk
- (get_local $i5)
- )
- (i32.const -1)
- )
- (block
- (call_import $_sbrk
- (get_local $i45)
- )
- (br $label$break$L279)
- )
- (set_local $i63
- (i32.add
- (get_local $i5)
- (get_local $i61)
- )
+ (set_local $i52
+ (i32.load
+ (i32.const 656)
)
)
- (set_local $i63
- (get_local $i61)
- )
)
- (if
- (i32.ne
- (get_local $i60)
- (i32.const -1)
- )
- (block
- (set_local $i58
- (get_local $i60)
- )
- (set_local $i59
- (get_local $i63)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
+ (i32.sub
+ (i32.const 0)
+ (get_local $i52)
)
)
)
+ (i32.const 2147483647)
)
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
- )
- (i32.const 4)
+ (i32.const 0)
+ )
+ (if
+ (i32.eq
+ (call_import $_sbrk
+ (get_local $i5)
+ )
+ (i32.const -1)
+ )
+ (block
+ (call_import $_sbrk
+ (get_local $i45)
)
+ (br $label$break$L279)
+ )
+ (set_local $i63
+ (i32.add
+ (get_local $i5)
+ (get_local $i61)
+ )
+ )
+ )
+ (set_local $i63
+ (get_local $i61)
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $i60)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i58
+ (get_local $i60)
+ )
+ (set_local $i59
+ (get_local $i63)
+ )
+ (br $label$break$L257
+ (i32.const 193)
)
- (i32.const 190)
)
)
)
)
- (i32.const 190)
)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.const 190)
+ )
+ )
+ )
+ )
+ (if
+ (if
+ (if
+ (select
(i32.lt_u
(get_local $i43)
(i32.const 2147483647)
)
(i32.const 0)
+ (i32.eq
+ (get_local $i36)
+ (i32.const 190)
+ )
)
(i32.and
(i32.lt_u
@@ -3759,12 +3761,19 @@
)
)
(if
- (if
- (if
- (i32.eq
- (get_local $i36)
- (i32.const 203)
+ (select
+ (i32.and
+ (i32.lt_u
+ (get_local $i60)
+ (get_local $i58)
)
+ (i32.ge_u
+ (get_local $i60)
+ (get_local $i64)
+ )
+ )
+ (i32.const 0)
+ (select
(i32.eq
(i32.and
(i32.load offset=12
@@ -3775,18 +3784,11 @@
(i32.const 0)
)
(i32.const 0)
- )
- (i32.and
- (i32.lt_u
- (get_local $i60)
- (get_local $i58)
- )
- (i32.ge_u
- (get_local $i60)
- (get_local $i64)
+ (i32.eq
+ (get_local $i36)
+ (i32.const 203)
)
)
- (i32.const 0)
)
(block
(i32.store
@@ -3796,27 +3798,32 @@
(get_local $i59)
)
)
- (set_local $i44
- (if
- (i32.eq
- (i32.and
- (set_local $i63
- (i32.add
- (get_local $i60)
- (i32.const 8)
+ (set_local $i63
+ (i32.add
+ (get_local $i60)
+ (set_local $i44
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i63
+ (i32.add
+ (get_local $i60)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i63)
+ (i32.const 7)
+ )
+ (i32.const 0)
)
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i63)
)
- (i32.const 7)
)
)
)
@@ -3833,12 +3840,7 @@
)
(i32.store
(i32.const 200)
- (set_local $i63
- (i32.add
- (get_local $i60)
- (get_local $i44)
- )
- )
+ (get_local $i63)
)
(i32.store
(i32.const 188)
@@ -3971,26 +3973,26 @@
(set_local $i44
(i32.add
(get_local $i58)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $i63
(i32.add
(get_local $i58)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $i63)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -3998,26 +4000,26 @@
(set_local $i43
(i32.add
(get_local $i61)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $i63
(i32.add
(get_local $i61)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $i63)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4924,11 +4926,7 @@
(set_local $i50
(i32.shl
(get_local $i79)
- (if
- (i32.eq
- (get_local $i82)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -4937,6 +4935,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i82)
+ (i32.const 31)
+ )
)
)
)
@@ -5187,30 +5189,32 @@
(set_local $i63
(i32.add
(set_local $i44
- (if
- (i32.lt_u
- (set_local $i63
- (i32.add
- (get_local $i44)
- (if
- (i32.eq
- (i32.and
- (get_local $i53)
- (i32.const 7)
- )
+ (select
+ (get_local $i60)
+ (set_local $i63
+ (i32.add
+ (get_local $i44)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
(i32.const 0)
+ (get_local $i53)
)
- (i32.const 0)
+ (i32.const 7)
+ )
+ (i32.eq
(i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i53)
- )
+ (get_local $i53)
(i32.const 7)
)
+ (i32.const 0)
)
)
)
+ )
+ (i32.lt_u
+ (get_local $i63)
(set_local $i53
(i32.add
(get_local $i60)
@@ -5218,43 +5222,40 @@
)
)
)
- (get_local $i60)
- (get_local $i63)
)
)
(i32.const 8)
)
)
- (set_local $i61
- (if
- (i32.eq
- (i32.and
- (set_local $i43
- (i32.add
- (get_local $i58)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i43)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 200)
(set_local $i43
(i32.add
(get_local $i58)
- (get_local $i61)
+ (set_local $i61
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i43
+ (i32.add
+ (get_local $i58)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i43)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -5661,11 +5662,7 @@
(set_local $i5
(i32.shl
(get_local $i63)
- (if
- (i32.eq
- (get_local $i89)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -5674,6 +5671,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i89)
+ (i32.const 31)
+ )
)
)
)
@@ -5917,36 +5918,35 @@
)
)
)
- (set_local $i62
- (if
- (i32.eq
- (i32.and
- (set_local $i5
- (i32.add
- (get_local $i58)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i5)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 200)
(set_local $i5
(i32.add
(get_local $i58)
- (get_local $i62)
+ (set_local $i62
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i5
+ (i32.add
+ (get_local $i58)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i5)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -6045,9 +6045,7 @@
(call $___errno_location)
(i32.const 12)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_free (param $i1 i32)
(local $i12 i32)
@@ -7694,11 +7692,7 @@
(set_local $i31
(i32.shl
(get_local $i29)
- (if
- (i32.eq
- (get_local $i32)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -7707,6 +7701,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i32)
+ (i32.const 31)
+ )
)
)
)
@@ -7935,7 +7933,6 @@
(i32.const 208)
(i32.const -1)
)
- (return)
)
(func $___stdio_write (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
(local $i7 i32)
@@ -8341,9 +8338,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i24)
- )
+ (get_local $i24)
)
(func $___fwritex (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
(local $i4 i32)
@@ -8585,9 +8580,7 @@
)
)
)
- (return
- (get_local $i8)
- )
+ (get_local $i8)
)
(func $_fflush (param $i1 i32) (result i32)
(local $i3 i32)
@@ -8596,146 +8589,144 @@
(local $i6 i32)
(local $i8 i32)
(local $i7 i32)
- (return
- (block $do-once$0
- (if
- (get_local $i1)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $i1)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $___fflush_unlocked
- (get_local $i1)
- )
+ (block $do-once$0
+ (if
+ (get_local $i1)
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $i1)
)
+ (i32.const -1)
)
- (set_local $i3
- (i32.eq
- (call $___lockfile
- (get_local $i1)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $___fflush_unlocked
+ (get_local $i1)
)
)
- (set_local $i4
- (call $___fflush_unlocked
+ )
+ (set_local $i3
+ (i32.eq
+ (call $___lockfile
(get_local $i1)
)
+ (i32.const 0)
)
- (if
- (get_local $i3)
- (get_local $i4)
- (block
- (call $___unlockfile
- (get_local $i1)
- )
- (get_local $i4)
+ )
+ (set_local $i4
+ (call $___fflush_unlocked
+ (get_local $i1)
+ )
+ )
+ (if
+ (get_local $i3)
+ (get_local $i4)
+ (block
+ (call $___unlockfile
+ (get_local $i1)
)
+ (get_local $i4)
)
)
- (block
- (set_local $i5
- (if
+ )
+ (block
+ (set_local $i5
+ (if
+ (i32.load
+ (i32.const 56)
+ )
+ (call $_fflush
(i32.load
(i32.const 56)
)
- (call $_fflush
- (i32.load
- (i32.const 56)
- )
- )
- (i32.const 0)
)
+ (i32.const 0)
)
- (call_import $___lock
- (i32.const 36)
+ )
+ (call_import $___lock
+ (i32.const 36)
+ )
+ (if
+ (set_local $i4
+ (i32.load
+ (i32.const 32)
+ )
)
- (if
+ (block
+ (set_local $i3
+ (get_local $i4)
+ )
(set_local $i4
- (i32.load
- (i32.const 32)
- )
+ (get_local $i5)
)
- (block
- (set_local $i3
- (get_local $i4)
- )
- (set_local $i4
- (get_local $i5)
- )
- (loop $while-out$2 $while-in$3
- (set_local $i7
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $i3)
- )
- (i32.const -1)
- )
- (call $___lockfile
+ (loop $while-out$2 $while-in$3
+ (set_local $i7
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $i3)
)
- (i32.const 0)
+ (i32.const -1)
)
+ (call $___lockfile
+ (get_local $i3)
+ )
+ (i32.const 0)
)
- (set_local $i8
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $i3)
- )
- (i32.load offset=28
- (get_local $i3)
- )
+ )
+ (set_local $i8
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $i3)
)
- (i32.or
- (call $___fflush_unlocked
- (get_local $i3)
- )
- (get_local $i4)
+ (i32.load offset=28
+ (get_local $i3)
+ )
+ )
+ (i32.or
+ (call $___fflush_unlocked
+ (get_local $i3)
)
(get_local $i4)
)
+ (get_local $i4)
)
- (if
- (get_local $i7)
- (call $___unlockfile
+ )
+ (if
+ (get_local $i7)
+ (call $___unlockfile
+ (get_local $i3)
+ )
+ )
+ (if
+ (set_local $i3
+ (i32.load offset=56
(get_local $i3)
)
)
- (if
- (set_local $i3
- (i32.load offset=56
- (get_local $i3)
- )
- )
- (set_local $i4
+ (set_local $i4
+ (get_local $i8)
+ )
+ (block
+ (set_local $i6
(get_local $i8)
)
- (block
- (set_local $i6
- (get_local $i8)
- )
- (br $while-out$2)
- )
+ (br $while-out$2)
)
- (br $while-in$3)
)
- )
- (set_local $i6
- (get_local $i5)
+ (br $while-in$3)
)
)
- (call_import $___unlock
- (i32.const 36)
+ (set_local $i6
+ (get_local $i5)
)
- (get_local $i6)
)
+ (call_import $___unlock
+ (i32.const 36)
+ )
+ (get_local $i6)
)
)
)
@@ -8911,11 +8902,9 @@
)
)
)
- (return
- (i32.sub
- (get_local $i7)
- (get_local $i2)
- )
+ (i32.sub
+ (get_local $i7)
+ (get_local $i2)
)
)
(func $___overflow (param $i1 i32) (param $i2 i32) (result i32)
@@ -9076,9 +9065,7 @@
(i32.const 8)
(get_local $i3)
)
- (return
- (get_local $i10)
- )
+ (get_local $i10)
)
(func $___fflush_unlocked (param $i1 i32) (result i32)
(local $i2 i32)
@@ -9087,116 +9074,114 @@
(local $i6 i32)
(local $i7 i32)
(local $i8 i32)
- (return
+ (if
(if
- (if
- (i32.gt_u
- (i32.load
- (set_local $i2
- (i32.add
- (get_local $i1)
- (i32.const 20)
- )
- )
- )
- (i32.load
- (set_local $i3
- (i32.add
- (get_local $i1)
- (i32.const 28)
- )
+ (i32.gt_u
+ (i32.load
+ (set_local $i2
+ (i32.add
+ (get_local $i1)
+ (i32.const 20)
)
)
)
- (block
- (call_indirect $FUNCSIG$iiii
+ (i32.load
+ (set_local $i3
(i32.add
- (i32.and
- (i32.load offset=36
- (get_local $i1)
- )
- (i32.const 7)
- )
- (i32.const 2)
- )
- (get_local $i1)
- (i32.const 0)
- (i32.const 0)
- )
- (i32.eq
- (i32.load
- (get_local $i2)
+ (get_local $i1)
+ (i32.const 28)
)
- (i32.const 0)
)
)
- (i32.const 0)
)
- (i32.const -1)
(block
- (if
- (i32.lt_u
- (set_local $i6
- (i32.load
- (set_local $i5
- (i32.add
- (get_local $i1)
- (i32.const 4)
- )
- )
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (get_local $i1)
)
+ (i32.const 7)
)
- (set_local $i8
- (i32.load
- (set_local $i7
- (i32.add
- (get_local $i1)
- (i32.const 8)
- )
+ (i32.const 2)
+ )
+ (get_local $i1)
+ (i32.const 0)
+ (i32.const 0)
+ )
+ (i32.eq
+ (i32.load
+ (get_local $i2)
+ )
+ (i32.const 0)
+ )
+ )
+ (i32.const 0)
+ )
+ (i32.const -1)
+ (block
+ (if
+ (i32.lt_u
+ (set_local $i6
+ (i32.load
+ (set_local $i5
+ (i32.add
+ (get_local $i1)
+ (i32.const 4)
)
)
)
)
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (i32.load offset=40
+ (set_local $i8
+ (i32.load
+ (set_local $i7
+ (i32.add
(get_local $i1)
+ (i32.const 8)
)
- (i32.const 7)
)
- (i32.const 2)
)
- (get_local $i1)
- (i32.sub
- (get_local $i6)
- (get_local $i8)
- )
- (i32.const 1)
)
)
- (i32.store offset=16
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=40
+ (get_local $i1)
+ )
+ (i32.const 7)
+ )
+ (i32.const 2)
+ )
(get_local $i1)
- (i32.const 0)
- )
- (i32.store
- (get_local $i3)
- (i32.const 0)
- )
- (i32.store
- (get_local $i2)
- (i32.const 0)
- )
- (i32.store
- (get_local $i7)
- (i32.const 0)
- )
- (i32.store
- (get_local $i5)
- (i32.const 0)
+ (i32.sub
+ (get_local $i6)
+ (get_local $i8)
+ )
+ (i32.const 1)
)
+ )
+ (i32.store offset=16
+ (get_local $i1)
(i32.const 0)
)
+ (i32.store
+ (get_local $i3)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i2)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i7)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i5)
+ (i32.const 0)
+ )
+ (i32.const 0)
)
)
)
@@ -9341,9 +9326,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $i4)
- )
+ (get_local $i4)
)
(func $runPostSets
(nop)
@@ -9478,11 +9461,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $i1)
- (get_local $i3)
- )
+ (i32.sub
+ (get_local $i1)
+ (get_local $i3)
)
)
(func $_puts (param $i1 i32) (result i32)
@@ -9580,14 +9561,12 @@
(get_local $i2)
)
)
- (return
- (i32.shr_s
- (i32.shl
- (get_local $i4)
- (i32.const 31)
- )
+ (i32.shr_s
+ (i32.shl
+ (get_local $i4)
(i32.const 31)
)
+ (i32.const 31)
)
)
(func $___stdio_seek (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
@@ -9665,9 +9644,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i7)
- )
+ (get_local $i7)
)
(func $___towrite (param $i1 i32) (result i32)
(local $i2 i32)
@@ -9692,58 +9669,56 @@
(get_local $i3)
)
)
- (return
- (if
- (i32.and
- (set_local $i3
- (i32.load
- (get_local $i1)
- )
- )
- (i32.const 8)
- )
- (block
- (i32.store
+ (if
+ (i32.and
+ (set_local $i3
+ (i32.load
(get_local $i1)
- (i32.or
- (get_local $i3)
- (i32.const 32)
- )
)
- (i32.const -1)
)
- (block
- (i32.store offset=8
- (get_local $i1)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $i1)
- (i32.const 0)
+ (i32.const 8)
+ )
+ (block
+ (i32.store
+ (get_local $i1)
+ (i32.or
+ (get_local $i3)
+ (i32.const 32)
)
- (i32.store offset=28
- (get_local $i1)
- (set_local $i2
- (i32.load offset=44
- (get_local $i1)
- )
+ )
+ (i32.const -1)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $i1)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $i1)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $i1)
+ (set_local $i2
+ (i32.load offset=44
+ (get_local $i1)
)
)
- (i32.store offset=20
- (get_local $i1)
+ )
+ (i32.store offset=20
+ (get_local $i1)
+ (get_local $i2)
+ )
+ (i32.store offset=16
+ (get_local $i1)
+ (i32.add
(get_local $i2)
- )
- (i32.store offset=16
- (get_local $i1)
- (i32.add
- (get_local $i2)
- (i32.load offset=48
- (get_local $i1)
- )
+ (i32.load offset=48
+ (get_local $i1)
)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
)
@@ -9758,58 +9733,56 @@
(get_local $i2)
)
)
- (return
- (if
- (i32.eq
- (set_local $i8
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $i4)
- )
- (i32.const -1)
+ (if
+ (i32.eq
+ (set_local $i8
+ (if
+ (i32.gt_s
+ (i32.load offset=76
+ (get_local $i4)
)
- (block
- (set_local $i6
- (i32.eq
- (call $___lockfile
- (get_local $i4)
- )
- (i32.const 0)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i6
+ (i32.eq
+ (call $___lockfile
+ (get_local $i4)
)
+ (i32.const 0)
)
- (set_local $i7
- (call $___fwritex
- (get_local $i1)
- (get_local $i5)
+ )
+ (set_local $i7
+ (call $___fwritex
+ (get_local $i1)
+ (get_local $i5)
+ (get_local $i4)
+ )
+ )
+ (if
+ (get_local $i6)
+ (get_local $i7)
+ (block
+ (call $___unlockfile
(get_local $i4)
)
- )
- (if
- (get_local $i6)
(get_local $i7)
- (block
- (call $___unlockfile
- (get_local $i4)
- )
- (get_local $i7)
- )
)
)
- (call $___fwritex
- (get_local $i1)
- (get_local $i5)
- (get_local $i4)
- )
+ )
+ (call $___fwritex
+ (get_local $i1)
+ (get_local $i5)
+ (get_local $i4)
)
)
- (get_local $i5)
- )
- (get_local $i3)
- (i32.div_u
- (get_local $i8)
- (get_local $i2)
)
+ (get_local $i5)
+ )
+ (get_local $i3)
+ (i32.div_u
+ (get_local $i8)
+ (get_local $i2)
)
)
)
@@ -9892,9 +9865,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i5)
- )
+ (get_local $i5)
)
(func $copyTempDouble (param $i1 i32)
(i32.store8
@@ -9999,9 +9970,7 @@
(i32.const 8)
(get_local $i2)
)
- (return
- (get_local $i1)
- )
+ (get_local $i1)
)
(func $copyTempFloat (param $i1 i32)
(i32.store8
@@ -10038,40 +10007,36 @@
)
)
(func $___syscall_ret (param $i1 i32) (result i32)
- (return
- (if
- (i32.gt_u
- (get_local $i1)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $___errno_location)
- (i32.sub
- (i32.const 0)
- (get_local $i1)
- )
+ (if
+ (i32.gt_u
+ (get_local $i1)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.sub
+ (i32.const 0)
+ (get_local $i1)
)
- (i32.const -1)
)
- (get_local $i1)
+ (i32.const -1)
)
+ (get_local $i1)
)
)
(func $dynCall_iiii (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $i1)
- (i32.const 7)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $i1)
+ (i32.const 7)
)
- (get_local $i2)
- (get_local $i3)
- (get_local $i4)
+ (i32.const 2)
)
+ (get_local $i2)
+ (get_local $i3)
+ (get_local $i4)
)
)
(func $stackAlloc (param $i1 i32) (result i32)
@@ -10102,21 +10067,17 @@
(i32.const -16)
)
)
- (return
- (get_local $i2)
- )
+ (get_local $i2)
)
(func $___errno_location (result i32)
- (return
- (if
- (i32.load
- (i32.const 8)
- )
- (i32.load offset=60
- (call_import $_pthread_self)
- )
- (i32.const 60)
+ (if
+ (i32.load
+ (i32.const 8)
)
+ (i32.load offset=60
+ (call_import $_pthread_self)
+ )
+ (i32.const 60)
)
)
(func $setThrew (param $i1 i32) (param $i2 i32)
@@ -10139,32 +10100,28 @@
)
)
(func $_fputs (param $i1 i32) (param $i2 i32) (result i32)
- (return
- (i32.add
- (call $_fwrite
+ (i32.add
+ (call $_fwrite
+ (get_local $i1)
+ (call $_strlen
(get_local $i1)
- (call $_strlen
- (get_local $i1)
- )
- (i32.const 1)
- (get_local $i2)
)
- (i32.const -1)
+ (i32.const 1)
+ (get_local $i2)
)
+ (i32.const -1)
)
)
(func $dynCall_ii (param $i1 i32) (param $i2 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $i1)
- (i32.const 1)
- )
- (i32.const 0)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $i1)
+ (i32.const 1)
)
- (get_local $i2)
+ (i32.const 0)
)
+ (get_local $i2)
)
)
(func $_cleanup_418 (param $i1 i32)
@@ -10178,7 +10135,6 @@
(get_local $i1)
)
)
- (return)
)
(func $establishStackSpace (param $i1 i32) (param $i2 i32)
(i32.store
@@ -10206,9 +10162,7 @@
(call_import $abort
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $stackRestore (param $i1 i32)
(i32.store
@@ -10226,38 +10180,28 @@
(call_import $abort
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $___unlockfile (param $i1 i32)
- (return)
+ (nop)
)
(func $___lockfile (param $i1 i32) (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $getTempRet0 (result i32)
- (return
- (i32.load
- (i32.const 160)
- )
+ (i32.load
+ (i32.const 160)
)
)
(func $_main (result i32)
(call $_puts
(i32.const 672)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $stackSave (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $b2 (param $i1 i32)
diff --git a/test/emcc_O2_hello_world.fromasm.imprecise b/test/emcc_O2_hello_world.fromasm.imprecise
index 50967da70..fbe94c64b 100644
--- a/test/emcc_O2_hello_world.fromasm.imprecise
+++ b/test/emcc_O2_hello_world.fromasm.imprecise
@@ -50,8 +50,8 @@
(local $i62 i32)
(local $i8 i32)
(local $i15 i32)
- (local $i44 i32)
(local $i45 i32)
+ (local $i44 i32)
(local $i60 i32)
(local $i3 i32)
(local $i4 i32)
@@ -139,27 +139,6 @@
(i32.const 245)
)
(block
- (set_local $i3
- (i32.shr_u
- (set_local $i2
- (if
- (i32.lt_u
- (get_local $i1)
- (i32.const 11)
- )
- (i32.const 16)
- (i32.and
- (i32.add
- (get_local $i1)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.and
(set_local $i5
@@ -169,7 +148,27 @@
(i32.const 176)
)
)
- (get_local $i3)
+ (set_local $i3
+ (i32.shr_u
+ (set_local $i2
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $i1)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $i1)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -822,36 +821,37 @@
)
)
)
- (set_local $i5
- (if
- (set_local $i15
- (i32.lt_u
- (set_local $i10
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $i23)
- )
- (i32.const -8)
- )
- (get_local $i2)
+ (set_local $i15
+ (i32.lt_u
+ (set_local $i10
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $i23)
)
+ (i32.const -8)
)
- (get_local $i5)
+ (get_local $i2)
)
)
+ (get_local $i5)
+ )
+ )
+ (set_local $i5
+ (select
(get_local $i10)
(get_local $i5)
+ (get_local $i15)
)
)
(set_local $i3
(get_local $i23)
)
(set_local $i7
- (if
- (get_local $i15)
+ (select
(get_local $i23)
(get_local $i7)
+ (get_local $i15)
)
)
(br $while-in$7)
@@ -1562,11 +1562,7 @@
(set_local $i7
(i32.shl
(get_local $i5)
- (if
- (i32.eq
- (get_local $i32)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -1575,6 +1571,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i32)
+ (i32.const 31)
+ )
)
)
)
@@ -1641,14 +1641,16 @@
)
)
(set_local $i16
- (if
+ (select
+ (get_local $i10)
+ (set_local $i9
+ (i32.load offset=20
+ (get_local $i17)
+ )
+ )
(i32.or
(i32.eq
- (set_local $i9
- (i32.load offset=20
- (get_local $i17)
- )
- )
+ (get_local $i9)
(i32.const 0)
)
(i32.eq
@@ -1672,8 +1674,6 @@
)
)
)
- (get_local $i10)
- (get_local $i9)
)
)
(if
@@ -1920,33 +1920,34 @@
(set_local $i36
(i32.const 0)
)
- (set_local $i3
- (if
- (set_local $i7
- (i32.lt_u
- (set_local $i8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $i38)
- )
- (i32.const -8)
- )
- (get_local $i5)
+ (set_local $i7
+ (i32.lt_u
+ (set_local $i8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $i38)
)
+ (i32.const -8)
)
- (get_local $i37)
+ (get_local $i5)
)
)
+ (get_local $i37)
+ )
+ )
+ (set_local $i3
+ (select
(get_local $i8)
(get_local $i37)
+ (get_local $i7)
)
)
(set_local $i8
- (if
- (get_local $i7)
+ (select
(get_local $i38)
(get_local $i39)
+ (get_local $i7)
)
)
(if
@@ -2002,11 +2003,7 @@
)
)
(if
- (if
- (i32.ne
- (get_local $i44)
- (i32.const 0)
- )
+ (select
(i32.lt_u
(get_local $i43)
(i32.sub
@@ -2017,6 +2014,10 @@
)
)
(i32.const 0)
+ (i32.ne
+ (get_local $i44)
+ (i32.const 0)
+ )
)
(block
(if
@@ -2686,11 +2687,7 @@
(set_local $i4
(i32.shl
(get_local $i43)
- (if
- (i32.eq
- (get_local $i52)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -2699,6 +2696,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i52)
+ (i32.const 31)
+ )
)
)
)
@@ -3209,410 +3210,411 @@
(i32.const 0)
)
)
- (if
- (if
+ (set_local $i36
+ (block $label$break$L257
(if
- (if
- (i32.eq
- (set_local $i36
- (block $label$break$L257
- (if
- (i32.and
- (i32.load
- (i32.const 620)
- )
- (i32.const 4)
- )
- (i32.const 190)
- (block
- (block $label$break$L259
- (if
- (set_local $i52
+ (i32.and
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
+ )
+ (i32.const 190)
+ (block
+ (block $label$break$L259
+ (if
+ (set_local $i52
+ (i32.load
+ (i32.const 200)
+ )
+ )
+ (block
+ (set_local $i50
+ (i32.const 624)
+ )
+ (loop $while-out$37 $while-in$38
+ (if
+ (if
+ (i32.le_u
+ (set_local $i51
(i32.load
- (i32.const 200)
+ (get_local $i50)
)
)
- (block
- (set_local $i50
- (i32.const 624)
- )
- (loop $while-out$37 $while-in$38
- (if
- (if
- (i32.le_u
- (set_local $i51
- (i32.load
- (get_local $i50)
- )
- )
- (get_local $i52)
- )
- (i32.gt_u
- (i32.add
- (get_local $i51)
- (i32.load
- (set_local $i45
- (i32.add
- (get_local $i50)
- (i32.const 4)
- )
- )
- )
- )
- (get_local $i52)
- )
- (i32.const 0)
- )
- (block
- (set_local $i56
- (get_local $i50)
- )
- (set_local $i57
- (get_local $i45)
- )
- (br $while-out$37)
- )
- )
- (if
- (i32.eqz
- (set_local $i50
- (i32.load offset=8
- (get_local $i50)
- )
- )
- )
- (block
- (set_local $i36
- (i32.const 173)
- )
- (br $label$break$L259)
- )
- )
- (br $while-in$38)
- )
- (if
- (i32.lt_u
- (set_local $i50
- (i32.and
- (i32.sub
- (get_local $i55)
- (i32.load
- (i32.const 188)
- )
- )
- (get_local $i54)
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (set_local $i45
- (call_import $_sbrk
- (get_local $i50)
- )
- )
- (i32.add
- (i32.load
- (get_local $i56)
- )
- (i32.load
- (get_local $i57)
- )
- )
- )
- (if
- (i32.ne
- (get_local $i45)
- (i32.const -1)
- )
- (block
- (set_local $i58
- (get_local $i45)
- )
- (set_local $i59
- (get_local $i50)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- )
- (block
- (set_local $i60
- (get_local $i45)
- )
- (set_local $i61
- (get_local $i50)
- )
- (set_local $i36
- (i32.const 183)
- )
+ (get_local $i52)
+ )
+ (i32.gt_u
+ (i32.add
+ (get_local $i51)
+ (i32.load
+ (set_local $i45
+ (i32.add
+ (get_local $i50)
+ (i32.const 4)
)
)
)
)
- (set_local $i36
- (i32.const 173)
+ (get_local $i52)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $i56
+ (get_local $i50)
+ )
+ (set_local $i57
+ (get_local $i45)
+ )
+ (br $while-out$37)
+ )
+ )
+ (if
+ (i32.eqz
+ (set_local $i50
+ (i32.load offset=8
+ (get_local $i50)
)
)
)
- (block $do-once$39
- (if
- (if
- (i32.eq
- (get_local $i36)
- (i32.const 173)
+ (block
+ (set_local $i36
+ (i32.const 173)
+ )
+ (br $label$break$L259)
+ )
+ )
+ (br $while-in$38)
+ )
+ (if
+ (i32.lt_u
+ (set_local $i50
+ (i32.and
+ (i32.sub
+ (get_local $i55)
+ (i32.load
+ (i32.const 188)
)
- (i32.ne
- (set_local $i52
- (call_import $_sbrk
- (i32.const 0)
- )
+ )
+ (get_local $i54)
+ )
+ )
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.eq
+ (set_local $i45
+ (call_import $_sbrk
+ (get_local $i50)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $i56)
+ )
+ (i32.load
+ (get_local $i57)
+ )
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $i45)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i58
+ (get_local $i45)
+ )
+ (set_local $i59
+ (get_local $i50)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
+ )
+ )
+ (block
+ (set_local $i60
+ (get_local $i45)
+ )
+ (set_local $i61
+ (get_local $i50)
+ )
+ (set_local $i36
+ (i32.const 183)
+ )
+ )
+ )
+ )
+ )
+ (set_local $i36
+ (i32.const 173)
+ )
+ )
+ )
+ (block $do-once$39
+ (if
+ (if
+ (i32.eq
+ (get_local $i36)
+ (i32.const 173)
+ )
+ (i32.ne
+ (set_local $i52
+ (call_import $_sbrk
+ (i32.const 0)
+ )
+ )
+ (i32.const -1)
+ )
+ (i32.const 0)
+ )
+ (block
+ (set_local $i62
+ (if
+ (i32.and
+ (set_local $i45
+ (i32.add
+ (set_local $i50
+ (i32.load
+ (i32.const 652)
)
- (i32.const -1)
)
+ (i32.const -1)
+ )
+ )
+ (set_local $i5
+ (get_local $i52)
+ )
+ )
+ (i32.add
+ (i32.sub
+ (get_local $i43)
+ (get_local $i5)
+ )
+ (i32.and
+ (i32.add
+ (get_local $i45)
+ (get_local $i5)
+ )
+ (i32.sub
(i32.const 0)
+ (get_local $i50)
)
- (block
- (set_local $i62
- (if
- (i32.and
- (set_local $i45
- (i32.add
- (set_local $i50
- (i32.load
- (i32.const 652)
- )
- )
- (i32.const -1)
- )
- )
- (set_local $i5
- (get_local $i52)
- )
- )
- (i32.add
- (i32.sub
- (get_local $i43)
- (get_local $i5)
- )
- (i32.and
- (i32.add
- (get_local $i45)
- (get_local $i5)
- )
- (i32.sub
- (i32.const 0)
- (get_local $i50)
- )
- )
- )
- (get_local $i43)
- )
- )
- (set_local $i5
- (i32.add
- (set_local $i50
- (i32.load
- (i32.const 608)
- )
- )
- (get_local $i62)
- )
+ )
+ )
+ (get_local $i43)
+ )
+ )
+ (set_local $i5
+ (i32.add
+ (set_local $i50
+ (i32.load
+ (i32.const 608)
+ )
+ )
+ (get_local $i62)
+ )
+ )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $i62)
+ (get_local $i31)
+ )
+ (i32.lt_u
+ (get_local $i62)
+ (i32.const 2147483647)
+ )
+ )
+ (block
+ (br_if $do-once$39
+ (select
+ (i32.or
+ (i32.le_u
+ (get_local $i5)
+ (get_local $i50)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $i62)
- (get_local $i31)
- )
- (i32.lt_u
- (get_local $i62)
- (i32.const 2147483647)
- )
- )
- (block
- (br_if $do-once$39
- (if
- (i32.ne
- (set_local $i45
- (i32.load
- (i32.const 616)
- )
- )
- (i32.const 0)
- )
- (i32.or
- (i32.le_u
- (get_local $i5)
- (get_local $i50)
- )
- (i32.gt_u
- (get_local $i5)
- (get_local $i45)
- )
- )
- (i32.const 0)
- )
- )
- (if
- (i32.eq
- (set_local $i45
- (call_import $_sbrk
- (get_local $i62)
- )
- )
- (get_local $i52)
- )
- (block
- (set_local $i58
- (get_local $i52)
- )
- (set_local $i59
- (get_local $i62)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
- (block
- (set_local $i60
- (get_local $i45)
- )
- (set_local $i61
- (get_local $i62)
- )
- (set_local $i36
- (i32.const 183)
- )
- )
+ (i32.gt_u
+ (get_local $i5)
+ (set_local $i45
+ (i32.load
+ (i32.const 616)
)
)
)
)
+ (i32.const 0)
+ (i32.ne
+ (get_local $i45)
+ (i32.const 0)
+ )
)
)
- (block $label$break$L279
- (if
- (i32.eq
- (get_local $i36)
+ (if
+ (i32.eq
+ (set_local $i45
+ (call_import $_sbrk
+ (get_local $i62)
+ )
+ )
+ (get_local $i52)
+ )
+ (block
+ (set_local $i58
+ (get_local $i52)
+ )
+ (set_local $i59
+ (get_local $i62)
+ )
+ (br $label$break$L257
+ (i32.const 193)
+ )
+ )
+ (block
+ (set_local $i60
+ (get_local $i45)
+ )
+ (set_local $i61
+ (get_local $i62)
+ )
+ (set_local $i36
(i32.const 183)
)
- (block
- (set_local $i45
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ (block $label$break$L279
+ (if
+ (i32.eq
+ (get_local $i36)
+ (i32.const 183)
+ )
+ (block
+ (set_local $i45
+ (i32.sub
+ (i32.const 0)
+ (get_local $i61)
+ )
+ )
+ (if
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $i53)
+ (get_local $i61)
+ )
+ (i32.and
+ (i32.lt_u
+ (get_local $i61)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $i60)
+ (i32.const -1)
+ )
+ )
+ )
+ (i32.lt_u
+ (set_local $i5
+ (i32.and
+ (i32.add
(i32.sub
- (i32.const 0)
+ (get_local $i44)
(get_local $i61)
)
- )
- (if
- (if
- (i32.and
- (i32.gt_u
- (get_local $i53)
- (get_local $i61)
- )
- (i32.and
- (i32.lt_u
- (get_local $i61)
- (i32.const 2147483647)
- )
- (i32.ne
- (get_local $i60)
- (i32.const -1)
- )
- )
- )
- (i32.lt_u
- (set_local $i5
- (i32.and
- (i32.add
- (i32.sub
- (get_local $i44)
- (get_local $i61)
- )
- (set_local $i52
- (i32.load
- (i32.const 656)
- )
- )
- )
- (i32.sub
- (i32.const 0)
- (get_local $i52)
- )
- )
- )
- (i32.const 2147483647)
- )
- (i32.const 0)
- )
- (if
- (i32.eq
- (call_import $_sbrk
- (get_local $i5)
- )
- (i32.const -1)
- )
- (block
- (call_import $_sbrk
- (get_local $i45)
- )
- (br $label$break$L279)
- )
- (set_local $i63
- (i32.add
- (get_local $i5)
- (get_local $i61)
- )
+ (set_local $i52
+ (i32.load
+ (i32.const 656)
)
)
- (set_local $i63
- (get_local $i61)
- )
)
- (if
- (i32.ne
- (get_local $i60)
- (i32.const -1)
- )
- (block
- (set_local $i58
- (get_local $i60)
- )
- (set_local $i59
- (get_local $i63)
- )
- (br $label$break$L257
- (i32.const 193)
- )
- )
+ (i32.sub
+ (i32.const 0)
+ (get_local $i52)
)
)
)
+ (i32.const 2147483647)
)
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
- )
- (i32.const 4)
+ (i32.const 0)
+ )
+ (if
+ (i32.eq
+ (call_import $_sbrk
+ (get_local $i5)
+ )
+ (i32.const -1)
+ )
+ (block
+ (call_import $_sbrk
+ (get_local $i45)
)
+ (br $label$break$L279)
+ )
+ (set_local $i63
+ (i32.add
+ (get_local $i5)
+ (get_local $i61)
+ )
+ )
+ )
+ (set_local $i63
+ (get_local $i61)
+ )
+ )
+ (if
+ (i32.ne
+ (get_local $i60)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i58
+ (get_local $i60)
+ )
+ (set_local $i59
+ (get_local $i63)
+ )
+ (br $label$break$L257
+ (i32.const 193)
)
- (i32.const 190)
)
)
)
)
- (i32.const 190)
)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.const 190)
+ )
+ )
+ )
+ )
+ (if
+ (if
+ (if
+ (select
(i32.lt_u
(get_local $i43)
(i32.const 2147483647)
)
(i32.const 0)
+ (i32.eq
+ (get_local $i36)
+ (i32.const 190)
+ )
)
(i32.and
(i32.lt_u
@@ -3759,12 +3761,19 @@
)
)
(if
- (if
- (if
- (i32.eq
- (get_local $i36)
- (i32.const 203)
+ (select
+ (i32.and
+ (i32.lt_u
+ (get_local $i60)
+ (get_local $i58)
)
+ (i32.ge_u
+ (get_local $i60)
+ (get_local $i64)
+ )
+ )
+ (i32.const 0)
+ (select
(i32.eq
(i32.and
(i32.load offset=12
@@ -3775,18 +3784,11 @@
(i32.const 0)
)
(i32.const 0)
- )
- (i32.and
- (i32.lt_u
- (get_local $i60)
- (get_local $i58)
- )
- (i32.ge_u
- (get_local $i60)
- (get_local $i64)
+ (i32.eq
+ (get_local $i36)
+ (i32.const 203)
)
)
- (i32.const 0)
)
(block
(i32.store
@@ -3796,27 +3798,32 @@
(get_local $i59)
)
)
- (set_local $i44
- (if
- (i32.eq
- (i32.and
- (set_local $i63
- (i32.add
- (get_local $i60)
- (i32.const 8)
+ (set_local $i63
+ (i32.add
+ (get_local $i60)
+ (set_local $i44
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i63
+ (i32.add
+ (get_local $i60)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i63)
+ (i32.const 7)
+ )
+ (i32.const 0)
)
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i63)
)
- (i32.const 7)
)
)
)
@@ -3833,12 +3840,7 @@
)
(i32.store
(i32.const 200)
- (set_local $i63
- (i32.add
- (get_local $i60)
- (get_local $i44)
- )
- )
+ (get_local $i63)
)
(i32.store
(i32.const 188)
@@ -3971,26 +3973,26 @@
(set_local $i44
(i32.add
(get_local $i58)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $i63
(i32.add
(get_local $i58)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $i63)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -3998,26 +4000,26 @@
(set_local $i43
(i32.add
(get_local $i61)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $i63
(i32.add
(get_local $i61)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $i63)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4924,11 +4926,7 @@
(set_local $i50
(i32.shl
(get_local $i79)
- (if
- (i32.eq
- (get_local $i82)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -4937,6 +4935,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i82)
+ (i32.const 31)
+ )
)
)
)
@@ -5187,30 +5189,32 @@
(set_local $i63
(i32.add
(set_local $i44
- (if
- (i32.lt_u
- (set_local $i63
- (i32.add
- (get_local $i44)
- (if
- (i32.eq
- (i32.and
- (get_local $i53)
- (i32.const 7)
- )
+ (select
+ (get_local $i60)
+ (set_local $i63
+ (i32.add
+ (get_local $i44)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
(i32.const 0)
+ (get_local $i53)
)
- (i32.const 0)
+ (i32.const 7)
+ )
+ (i32.eq
(i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i53)
- )
+ (get_local $i53)
(i32.const 7)
)
+ (i32.const 0)
)
)
)
+ )
+ (i32.lt_u
+ (get_local $i63)
(set_local $i53
(i32.add
(get_local $i60)
@@ -5218,43 +5222,40 @@
)
)
)
- (get_local $i60)
- (get_local $i63)
)
)
(i32.const 8)
)
)
- (set_local $i61
- (if
- (i32.eq
- (i32.and
- (set_local $i43
- (i32.add
- (get_local $i58)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i43)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 200)
(set_local $i43
(i32.add
(get_local $i58)
- (get_local $i61)
+ (set_local $i61
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i43
+ (i32.add
+ (get_local $i58)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i43)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -5661,11 +5662,7 @@
(set_local $i5
(i32.shl
(get_local $i63)
- (if
- (i32.eq
- (get_local $i89)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -5674,6 +5671,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i89)
+ (i32.const 31)
+ )
)
)
)
@@ -5917,36 +5918,35 @@
)
)
)
- (set_local $i62
- (if
- (i32.eq
- (i32.and
- (set_local $i5
- (i32.add
- (get_local $i58)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $i5)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 200)
(set_local $i5
(i32.add
(get_local $i58)
- (get_local $i62)
+ (set_local $i62
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $i5
+ (i32.add
+ (get_local $i58)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $i5)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -6045,9 +6045,7 @@
(call $___errno_location)
(i32.const 12)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_free (param $i1 i32)
(local $i12 i32)
@@ -7694,11 +7692,7 @@
(set_local $i31
(i32.shl
(get_local $i29)
- (if
- (i32.eq
- (get_local $i32)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -7707,6 +7701,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $i32)
+ (i32.const 31)
+ )
)
)
)
@@ -7935,7 +7933,6 @@
(i32.const 208)
(i32.const -1)
)
- (return)
)
(func $___stdio_write (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
(local $i7 i32)
@@ -8341,9 +8338,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i24)
- )
+ (get_local $i24)
)
(func $___fwritex (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
(local $i4 i32)
@@ -8585,9 +8580,7 @@
)
)
)
- (return
- (get_local $i8)
- )
+ (get_local $i8)
)
(func $_fflush (param $i1 i32) (result i32)
(local $i3 i32)
@@ -8596,146 +8589,144 @@
(local $i6 i32)
(local $i8 i32)
(local $i7 i32)
- (return
- (block $do-once$0
- (if
- (get_local $i1)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $i1)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $___fflush_unlocked
- (get_local $i1)
- )
+ (block $do-once$0
+ (if
+ (get_local $i1)
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $i1)
)
+ (i32.const -1)
)
- (set_local $i3
- (i32.eq
- (call $___lockfile
- (get_local $i1)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $___fflush_unlocked
+ (get_local $i1)
)
)
- (set_local $i4
- (call $___fflush_unlocked
+ )
+ (set_local $i3
+ (i32.eq
+ (call $___lockfile
(get_local $i1)
)
+ (i32.const 0)
)
- (if
- (get_local $i3)
- (get_local $i4)
- (block
- (call $___unlockfile
- (get_local $i1)
- )
- (get_local $i4)
+ )
+ (set_local $i4
+ (call $___fflush_unlocked
+ (get_local $i1)
+ )
+ )
+ (if
+ (get_local $i3)
+ (get_local $i4)
+ (block
+ (call $___unlockfile
+ (get_local $i1)
)
+ (get_local $i4)
)
)
- (block
- (set_local $i5
- (if
+ )
+ (block
+ (set_local $i5
+ (if
+ (i32.load
+ (i32.const 56)
+ )
+ (call $_fflush
(i32.load
(i32.const 56)
)
- (call $_fflush
- (i32.load
- (i32.const 56)
- )
- )
- (i32.const 0)
)
+ (i32.const 0)
)
- (call_import $___lock
- (i32.const 36)
+ )
+ (call_import $___lock
+ (i32.const 36)
+ )
+ (if
+ (set_local $i4
+ (i32.load
+ (i32.const 32)
+ )
)
- (if
+ (block
+ (set_local $i3
+ (get_local $i4)
+ )
(set_local $i4
- (i32.load
- (i32.const 32)
- )
+ (get_local $i5)
)
- (block
- (set_local $i3
- (get_local $i4)
- )
- (set_local $i4
- (get_local $i5)
- )
- (loop $while-out$2 $while-in$3
- (set_local $i7
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $i3)
- )
- (i32.const -1)
- )
- (call $___lockfile
+ (loop $while-out$2 $while-in$3
+ (set_local $i7
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $i3)
)
- (i32.const 0)
+ (i32.const -1)
)
+ (call $___lockfile
+ (get_local $i3)
+ )
+ (i32.const 0)
)
- (set_local $i8
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $i3)
- )
- (i32.load offset=28
- (get_local $i3)
- )
+ )
+ (set_local $i8
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $i3)
)
- (i32.or
- (call $___fflush_unlocked
- (get_local $i3)
- )
- (get_local $i4)
+ (i32.load offset=28
+ (get_local $i3)
+ )
+ )
+ (i32.or
+ (call $___fflush_unlocked
+ (get_local $i3)
)
(get_local $i4)
)
+ (get_local $i4)
)
- (if
- (get_local $i7)
- (call $___unlockfile
+ )
+ (if
+ (get_local $i7)
+ (call $___unlockfile
+ (get_local $i3)
+ )
+ )
+ (if
+ (set_local $i3
+ (i32.load offset=56
(get_local $i3)
)
)
- (if
- (set_local $i3
- (i32.load offset=56
- (get_local $i3)
- )
- )
- (set_local $i4
+ (set_local $i4
+ (get_local $i8)
+ )
+ (block
+ (set_local $i6
(get_local $i8)
)
- (block
- (set_local $i6
- (get_local $i8)
- )
- (br $while-out$2)
- )
+ (br $while-out$2)
)
- (br $while-in$3)
)
- )
- (set_local $i6
- (get_local $i5)
+ (br $while-in$3)
)
)
- (call_import $___unlock
- (i32.const 36)
+ (set_local $i6
+ (get_local $i5)
)
- (get_local $i6)
)
+ (call_import $___unlock
+ (i32.const 36)
+ )
+ (get_local $i6)
)
)
)
@@ -8911,11 +8902,9 @@
)
)
)
- (return
- (i32.sub
- (get_local $i7)
- (get_local $i2)
- )
+ (i32.sub
+ (get_local $i7)
+ (get_local $i2)
)
)
(func $___overflow (param $i1 i32) (param $i2 i32) (result i32)
@@ -9076,9 +9065,7 @@
(i32.const 8)
(get_local $i3)
)
- (return
- (get_local $i10)
- )
+ (get_local $i10)
)
(func $___fflush_unlocked (param $i1 i32) (result i32)
(local $i2 i32)
@@ -9087,116 +9074,114 @@
(local $i6 i32)
(local $i7 i32)
(local $i8 i32)
- (return
+ (if
(if
- (if
- (i32.gt_u
- (i32.load
- (set_local $i2
- (i32.add
- (get_local $i1)
- (i32.const 20)
- )
- )
- )
- (i32.load
- (set_local $i3
- (i32.add
- (get_local $i1)
- (i32.const 28)
- )
+ (i32.gt_u
+ (i32.load
+ (set_local $i2
+ (i32.add
+ (get_local $i1)
+ (i32.const 20)
)
)
)
- (block
- (call_indirect $FUNCSIG$iiii
+ (i32.load
+ (set_local $i3
(i32.add
- (i32.and
- (i32.load offset=36
- (get_local $i1)
- )
- (i32.const 7)
- )
- (i32.const 2)
- )
- (get_local $i1)
- (i32.const 0)
- (i32.const 0)
- )
- (i32.eq
- (i32.load
- (get_local $i2)
+ (get_local $i1)
+ (i32.const 28)
)
- (i32.const 0)
)
)
- (i32.const 0)
)
- (i32.const -1)
(block
- (if
- (i32.lt_u
- (set_local $i6
- (i32.load
- (set_local $i5
- (i32.add
- (get_local $i1)
- (i32.const 4)
- )
- )
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (get_local $i1)
)
+ (i32.const 7)
)
- (set_local $i8
- (i32.load
- (set_local $i7
- (i32.add
- (get_local $i1)
- (i32.const 8)
- )
+ (i32.const 2)
+ )
+ (get_local $i1)
+ (i32.const 0)
+ (i32.const 0)
+ )
+ (i32.eq
+ (i32.load
+ (get_local $i2)
+ )
+ (i32.const 0)
+ )
+ )
+ (i32.const 0)
+ )
+ (i32.const -1)
+ (block
+ (if
+ (i32.lt_u
+ (set_local $i6
+ (i32.load
+ (set_local $i5
+ (i32.add
+ (get_local $i1)
+ (i32.const 4)
)
)
)
)
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (i32.load offset=40
+ (set_local $i8
+ (i32.load
+ (set_local $i7
+ (i32.add
(get_local $i1)
+ (i32.const 8)
)
- (i32.const 7)
)
- (i32.const 2)
)
- (get_local $i1)
- (i32.sub
- (get_local $i6)
- (get_local $i8)
- )
- (i32.const 1)
)
)
- (i32.store offset=16
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=40
+ (get_local $i1)
+ )
+ (i32.const 7)
+ )
+ (i32.const 2)
+ )
(get_local $i1)
- (i32.const 0)
- )
- (i32.store
- (get_local $i3)
- (i32.const 0)
- )
- (i32.store
- (get_local $i2)
- (i32.const 0)
- )
- (i32.store
- (get_local $i7)
- (i32.const 0)
- )
- (i32.store
- (get_local $i5)
- (i32.const 0)
+ (i32.sub
+ (get_local $i6)
+ (get_local $i8)
+ )
+ (i32.const 1)
)
+ )
+ (i32.store offset=16
+ (get_local $i1)
(i32.const 0)
)
+ (i32.store
+ (get_local $i3)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i2)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i7)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $i5)
+ (i32.const 0)
+ )
+ (i32.const 0)
)
)
)
@@ -9341,9 +9326,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $i4)
- )
+ (get_local $i4)
)
(func $runPostSets
(nop)
@@ -9478,11 +9461,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $i1)
- (get_local $i3)
- )
+ (i32.sub
+ (get_local $i1)
+ (get_local $i3)
)
)
(func $_puts (param $i1 i32) (result i32)
@@ -9580,14 +9561,12 @@
(get_local $i2)
)
)
- (return
- (i32.shr_s
- (i32.shl
- (get_local $i4)
- (i32.const 31)
- )
+ (i32.shr_s
+ (i32.shl
+ (get_local $i4)
(i32.const 31)
)
+ (i32.const 31)
)
)
(func $___stdio_seek (param $i1 i32) (param $i2 i32) (param $i3 i32) (result i32)
@@ -9665,9 +9644,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i7)
- )
+ (get_local $i7)
)
(func $___towrite (param $i1 i32) (result i32)
(local $i2 i32)
@@ -9692,58 +9669,56 @@
(get_local $i3)
)
)
- (return
- (if
- (i32.and
- (set_local $i3
- (i32.load
- (get_local $i1)
- )
- )
- (i32.const 8)
- )
- (block
- (i32.store
+ (if
+ (i32.and
+ (set_local $i3
+ (i32.load
(get_local $i1)
- (i32.or
- (get_local $i3)
- (i32.const 32)
- )
)
- (i32.const -1)
)
- (block
- (i32.store offset=8
- (get_local $i1)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $i1)
- (i32.const 0)
+ (i32.const 8)
+ )
+ (block
+ (i32.store
+ (get_local $i1)
+ (i32.or
+ (get_local $i3)
+ (i32.const 32)
)
- (i32.store offset=28
- (get_local $i1)
- (set_local $i2
- (i32.load offset=44
- (get_local $i1)
- )
+ )
+ (i32.const -1)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $i1)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $i1)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $i1)
+ (set_local $i2
+ (i32.load offset=44
+ (get_local $i1)
)
)
- (i32.store offset=20
- (get_local $i1)
+ )
+ (i32.store offset=20
+ (get_local $i1)
+ (get_local $i2)
+ )
+ (i32.store offset=16
+ (get_local $i1)
+ (i32.add
(get_local $i2)
- )
- (i32.store offset=16
- (get_local $i1)
- (i32.add
- (get_local $i2)
- (i32.load offset=48
- (get_local $i1)
- )
+ (i32.load offset=48
+ (get_local $i1)
)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
)
@@ -9758,58 +9733,56 @@
(get_local $i2)
)
)
- (return
- (if
- (i32.eq
- (set_local $i8
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $i4)
- )
- (i32.const -1)
+ (if
+ (i32.eq
+ (set_local $i8
+ (if
+ (i32.gt_s
+ (i32.load offset=76
+ (get_local $i4)
)
- (block
- (set_local $i6
- (i32.eq
- (call $___lockfile
- (get_local $i4)
- )
- (i32.const 0)
+ (i32.const -1)
+ )
+ (block
+ (set_local $i6
+ (i32.eq
+ (call $___lockfile
+ (get_local $i4)
)
+ (i32.const 0)
)
- (set_local $i7
- (call $___fwritex
- (get_local $i1)
- (get_local $i5)
+ )
+ (set_local $i7
+ (call $___fwritex
+ (get_local $i1)
+ (get_local $i5)
+ (get_local $i4)
+ )
+ )
+ (if
+ (get_local $i6)
+ (get_local $i7)
+ (block
+ (call $___unlockfile
(get_local $i4)
)
- )
- (if
- (get_local $i6)
(get_local $i7)
- (block
- (call $___unlockfile
- (get_local $i4)
- )
- (get_local $i7)
- )
)
)
- (call $___fwritex
- (get_local $i1)
- (get_local $i5)
- (get_local $i4)
- )
+ )
+ (call $___fwritex
+ (get_local $i1)
+ (get_local $i5)
+ (get_local $i4)
)
)
- (get_local $i5)
- )
- (get_local $i3)
- (i32.div_u
- (get_local $i8)
- (get_local $i2)
)
+ (get_local $i5)
+ )
+ (get_local $i3)
+ (i32.div_u
+ (get_local $i8)
+ (get_local $i2)
)
)
)
@@ -9892,9 +9865,7 @@
(i32.const 8)
(get_local $i4)
)
- (return
- (get_local $i5)
- )
+ (get_local $i5)
)
(func $copyTempDouble (param $i1 i32)
(i32.store8
@@ -9999,9 +9970,7 @@
(i32.const 8)
(get_local $i2)
)
- (return
- (get_local $i1)
- )
+ (get_local $i1)
)
(func $copyTempFloat (param $i1 i32)
(i32.store8
@@ -10038,40 +10007,36 @@
)
)
(func $___syscall_ret (param $i1 i32) (result i32)
- (return
- (if
- (i32.gt_u
- (get_local $i1)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $___errno_location)
- (i32.sub
- (i32.const 0)
- (get_local $i1)
- )
+ (if
+ (i32.gt_u
+ (get_local $i1)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.sub
+ (i32.const 0)
+ (get_local $i1)
)
- (i32.const -1)
)
- (get_local $i1)
+ (i32.const -1)
)
+ (get_local $i1)
)
)
(func $dynCall_iiii (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $i1)
- (i32.const 7)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $i1)
+ (i32.const 7)
)
- (get_local $i2)
- (get_local $i3)
- (get_local $i4)
+ (i32.const 2)
)
+ (get_local $i2)
+ (get_local $i3)
+ (get_local $i4)
)
)
(func $stackAlloc (param $i1 i32) (result i32)
@@ -10102,21 +10067,17 @@
(i32.const -16)
)
)
- (return
- (get_local $i2)
- )
+ (get_local $i2)
)
(func $___errno_location (result i32)
- (return
- (if
- (i32.load
- (i32.const 8)
- )
- (i32.load offset=60
- (call_import $_pthread_self)
- )
- (i32.const 60)
+ (if
+ (i32.load
+ (i32.const 8)
)
+ (i32.load offset=60
+ (call_import $_pthread_self)
+ )
+ (i32.const 60)
)
)
(func $setThrew (param $i1 i32) (param $i2 i32)
@@ -10139,32 +10100,28 @@
)
)
(func $_fputs (param $i1 i32) (param $i2 i32) (result i32)
- (return
- (i32.add
- (call $_fwrite
+ (i32.add
+ (call $_fwrite
+ (get_local $i1)
+ (call $_strlen
(get_local $i1)
- (call $_strlen
- (get_local $i1)
- )
- (i32.const 1)
- (get_local $i2)
)
- (i32.const -1)
+ (i32.const 1)
+ (get_local $i2)
)
+ (i32.const -1)
)
)
(func $dynCall_ii (param $i1 i32) (param $i2 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $i1)
- (i32.const 1)
- )
- (i32.const 0)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $i1)
+ (i32.const 1)
)
- (get_local $i2)
+ (i32.const 0)
)
+ (get_local $i2)
)
)
(func $_cleanup_418 (param $i1 i32)
@@ -10178,7 +10135,6 @@
(get_local $i1)
)
)
- (return)
)
(func $establishStackSpace (param $i1 i32) (param $i2 i32)
(i32.store
@@ -10206,9 +10162,7 @@
(call_import $abort
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $stackRestore (param $i1 i32)
(i32.store
@@ -10226,38 +10180,28 @@
(call_import $abort
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $___unlockfile (param $i1 i32)
- (return)
+ (nop)
)
(func $___lockfile (param $i1 i32) (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $getTempRet0 (result i32)
- (return
- (i32.load
- (i32.const 160)
- )
+ (i32.load
+ (i32.const 160)
)
)
(func $_main (result i32)
(call $_puts
(i32.const 672)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $stackSave (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $b2 (param $i1 i32)
diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm
index fb3b2a14f..1aabeb0ee 100644
--- a/test/emcc_hello_world.fromasm
+++ b/test/emcc_hello_world.fromasm
@@ -91,15 +91,11 @@
)
(call_import $abort)
)
- (return
- (get_local $ret)
- )
+ (get_local $ret)
)
(func $stackSave (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $stackRestore (param $top i32)
@@ -245,10 +241,8 @@
)
)
(func $getTempRet0 (result i32)
- (return
- (i32.load
- (i32.const 168)
- )
+ (i32.load
+ (i32.const 168)
)
)
(func $_main (result i32)
@@ -287,9 +281,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_frexp (param $$x f64) (param $$e i32) (result f64)
(local $$x$addr$0 f64)
@@ -329,97 +321,95 @@
(i32.load
(i32.const 168)
)
- (return
- (block $switch$0
+ (block $switch$0
+ (block $switch-default$3
(block $switch-default$3
- (block $switch-default$3
- (block $switch-case$2
- (block $switch-case$1
- (br_table $switch-case$1 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-case$2 $switch-default$3
- (i32.sub
- (set_local $$conv
- (i32.and
- (get_local $$2)
- (i32.const 2047)
- )
+ (block $switch-case$2
+ (block $switch-case$1
+ (br_table $switch-case$1 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-case$2 $switch-default$3
+ (i32.sub
+ (set_local $$conv
+ (i32.and
+ (get_local $$2)
+ (i32.const 2047)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
- (set_local $$storemerge
- (if
- (f64.ne
- (get_local $$x)
- (f64.const 0)
- )
- (block
- (set_local $$x$addr$0
- (call $_frexp
- (f64.mul
- (get_local $$x)
- (f64.const 18446744073709551615)
- )
- (get_local $$e)
- )
- )
- (i32.add
- (i32.load
- (get_local $$e)
+ )
+ (set_local $$storemerge
+ (if
+ (f64.ne
+ (get_local $$x)
+ (f64.const 0)
+ )
+ (block
+ (set_local $$x$addr$0
+ (call $_frexp
+ (f64.mul
+ (get_local $$x)
+ (f64.const 18446744073709551615)
)
- (i32.const -64)
+ (get_local $$e)
)
)
- (block
- (set_local $$x$addr$0
- (get_local $$x)
+ (i32.add
+ (i32.load
+ (get_local $$e)
)
- (i32.const 0)
+ (i32.const -64)
)
)
+ (block
+ (set_local $$x$addr$0
+ (get_local $$x)
+ )
+ (i32.const 0)
+ )
)
- (i32.store
- (get_local $$e)
- (get_local $$storemerge)
- )
- (br $switch$0
- (get_local $$x$addr$0)
- )
+ )
+ (i32.store
+ (get_local $$e)
+ (get_local $$storemerge)
)
(br $switch$0
- (get_local $$x)
+ (get_local $$x$addr$0)
)
)
- (i32.store
- (get_local $$e)
- (i32.add
- (get_local $$conv)
- (i32.const -1022)
- )
+ (br $switch$0
+ (get_local $$x)
)
- (i32.store
- (i32.load
- (i32.const 24)
- )
- (get_local $$0)
+ )
+ (i32.store
+ (get_local $$e)
+ (i32.add
+ (get_local $$conv)
+ (i32.const -1022)
)
- (i32.store offset=4
- (i32.load
- (i32.const 24)
- )
- (i32.or
- (i32.and
- (get_local $$1)
- (i32.const -2146435073)
- )
- (i32.const 1071644672)
- )
+ )
+ (i32.store
+ (i32.load
+ (i32.const 24)
)
+ (get_local $$0)
)
- (f64.load
+ (i32.store offset=4
(i32.load
(i32.const 24)
)
+ (i32.or
+ (i32.and
+ (get_local $$1)
+ (i32.const -2146435073)
+ )
+ (i32.const 1071644672)
+ )
+ )
+ )
+ (f64.load
+ (i32.load
+ (i32.const 24)
)
)
)
@@ -428,11 +418,9 @@
(i32.load
(i32.const 8)
)
- (return
- (call $_frexp
- (get_local $$x)
- (get_local $$e)
- )
+ (call $_frexp
+ (get_local $$x)
+ (get_local $$e)
)
)
(func $_strerror (param $$e i32) (result i32)
@@ -603,26 +591,22 @@
(br $while-in$3)
)
)
- (return
- (get_local $$s$0$lcssa)
- )
+ (get_local $$s$0$lcssa)
)
(func $___errno_location (result i32)
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.eq
- (i32.load
- (i32.const 16)
- )
- (i32.const 0)
- )
- (i32.const 60)
- (i32.load offset=60
- (call_import $_pthread_self)
+ (if
+ (i32.eq
+ (i32.load
+ (i32.const 16)
)
+ (i32.const 0)
+ )
+ (i32.const 60)
+ (i32.load offset=60
+ (call_import $_pthread_self)
)
)
)
@@ -675,9 +659,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call1)
- )
+ (get_local $$call1)
)
(func $___stdout_write (param $$f i32) (param $$buf i32) (param $$len i32) (result i32)
(local $$vararg_buffer i32)
@@ -773,9 +755,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call3)
- )
+ (get_local $$call3)
)
(func $___stdio_seek (param $$f i32) (param $$off i32) (param $$whence i32) (result i32)
(local $$vararg_buffer i32)
@@ -863,9 +843,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$1)
- )
+ (get_local $$1)
)
(func $_fflush (param $$f i32) (result i32)
(local $$f$addr$022 i32)
@@ -881,164 +859,162 @@
(i32.load
(i32.const 8)
)
- (return
- (block $do-once$0
- (if
- (i32.eq
- (get_local $$f)
- (i32.const 0)
- )
- (block
- (set_local $$cond10
- (if
- (i32.eq
- (i32.load
- (i32.const 12)
- )
- (i32.const 0)
+ (block $do-once$0
+ (if
+ (i32.eq
+ (get_local $$f)
+ (i32.const 0)
+ )
+ (block
+ (set_local $$cond10
+ (if
+ (i32.eq
+ (i32.load
+ (i32.const 12)
)
(i32.const 0)
- (call $_fflush
- (i32.load
- (i32.const 12)
- )
+ )
+ (i32.const 0)
+ (call $_fflush
+ (i32.load
+ (i32.const 12)
)
)
)
- (call_import $___lock
- (i32.const 44)
- )
- (if
- (i32.eq
- (set_local $$f$addr$0$19
- (i32.load
- (i32.const 40)
- )
+ )
+ (call_import $___lock
+ (i32.const 44)
+ )
+ (if
+ (i32.eq
+ (set_local $$f$addr$0$19
+ (i32.load
+ (i32.const 40)
)
- (i32.const 0)
)
- (set_local $$r$0$lcssa
+ (i32.const 0)
+ )
+ (set_local $$r$0$lcssa
+ (get_local $$cond10)
+ )
+ (block
+ (set_local $$f$addr$022
+ (get_local $$f$addr$0$19)
+ )
+ (set_local $$r$021
(get_local $$cond10)
)
- (block
- (set_local $$f$addr$022
- (get_local $$f$addr$0$19)
- )
- (set_local $$r$021
- (get_local $$cond10)
- )
- (loop $while-out$2 $while-in$3
- (set_local $$cond19
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $$f$addr$022)
- )
- (i32.const -1)
- )
- (call $___lockfile
+ (loop $while-out$2 $while-in$3
+ (set_local $$cond19
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $$f$addr$022)
)
- (i32.const 0)
+ (i32.const -1)
+ )
+ (call $___lockfile
+ (get_local $$f$addr$022)
)
+ (i32.const 0)
)
- (set_local $$r$1
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $$f$addr$022)
- )
- (i32.load offset=28
- (get_local $$f$addr$022)
- )
+ )
+ (set_local $$r$1
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $$f$addr$022)
)
- (i32.or
- (call $___fflush_unlocked
- (get_local $$f$addr$022)
- )
- (get_local $$r$021)
+ (i32.load offset=28
+ (get_local $$f$addr$022)
+ )
+ )
+ (i32.or
+ (call $___fflush_unlocked
+ (get_local $$f$addr$022)
)
(get_local $$r$021)
)
+ (get_local $$r$021)
)
- (if
- (i32.ne
- (get_local $$cond19)
- (i32.const 0)
- )
- (call $___unlockfile
- (get_local $$f$addr$022)
- )
+ )
+ (if
+ (i32.ne
+ (get_local $$cond19)
+ (i32.const 0)
)
- (if
- (i32.eq
- (set_local $$f$addr$0
- (i32.load offset=56
- (get_local $$f$addr$022)
- )
+ (call $___unlockfile
+ (get_local $$f$addr$022)
+ )
+ )
+ (if
+ (i32.eq
+ (set_local $$f$addr$0
+ (i32.load offset=56
+ (get_local $$f$addr$022)
)
- (i32.const 0)
)
- (block
- (set_local $$r$0$lcssa
- (get_local $$r$1)
- )
- (br $while-out$2)
+ (i32.const 0)
+ )
+ (block
+ (set_local $$r$0$lcssa
+ (get_local $$r$1)
)
- (block
- (set_local $$f$addr$022
- (get_local $$f$addr$0)
- )
- (set_local $$r$021
- (get_local $$r$1)
- )
+ (br $while-out$2)
+ )
+ (block
+ (set_local $$f$addr$022
+ (get_local $$f$addr$0)
+ )
+ (set_local $$r$021
+ (get_local $$r$1)
)
)
- (br $while-in$3)
)
+ (br $while-in$3)
)
)
- (call_import $___unlock
- (i32.const 44)
- )
- (get_local $$r$0$lcssa)
)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $$f)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $___fflush_unlocked
- (get_local $$f)
- )
+ (call_import $___unlock
+ (i32.const 44)
+ )
+ (get_local $$r$0$lcssa)
+ )
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $$f)
)
+ (i32.const -1)
)
- (set_local $$phitmp
- (i32.eq
- (call $___lockfile
- (get_local $$f)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $___fflush_unlocked
+ (get_local $$f)
)
)
- (set_local $$call1
- (call $___fflush_unlocked
+ )
+ (set_local $$phitmp
+ (i32.eq
+ (call $___lockfile
(get_local $$f)
)
+ (i32.const 0)
)
- (if
- (get_local $$phitmp)
- (get_local $$call1)
- (block
- (call $___unlockfile
- (get_local $$f)
- )
- (get_local $$call1)
+ )
+ (set_local $$call1
+ (call $___fflush_unlocked
+ (get_local $$f)
+ )
+ )
+ (if
+ (get_local $$phitmp)
+ (get_local $$call1)
+ (block
+ (call $___unlockfile
+ (get_local $$f)
)
+ (get_local $$call1)
)
)
)
@@ -1093,23 +1069,18 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call)
- )
+ (get_local $$call)
)
(func $___lockfile (param $$f i32) (result i32)
(i32.load
(i32.const 8)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $___unlockfile (param $$f i32)
(i32.load
(i32.const 8)
)
- (return)
)
(func $___stdio_write (param $$f i32) (param $$buf i32) (param $$len i32) (result i32)
(local $$iov$0 i32)
@@ -1536,9 +1507,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_vfprintf (param $$f i32) (param $$fmt i32) (param $$ap i32) (result i32)
(local $sp i32)
@@ -1557,7 +1526,6 @@
(local $$7 i32)
(local $$and i32)
(local $$cond i32)
- (local $$ret$1 i32)
(local $$ret$1$ i32)
(local $$retval$0 i32)
(local $$wbase i32)
@@ -1698,145 +1666,144 @@
)
)
)
- (set_local $$ret$1
- (if
- (i32.eq
- (i32.load
- (set_local $$buf_size
- (i32.add
- (get_local $$f)
- (i32.const 48)
- )
- )
- )
- (i32.const 0)
- )
- (block
- (set_local $$4
+ (set_local $$ret$1$
+ (select
+ (if
+ (i32.eq
(i32.load
- (set_local $$buf
+ (set_local $$buf_size
(i32.add
(get_local $$f)
- (i32.const 44)
+ (i32.const 48)
)
)
)
+ (i32.const 0)
)
- (i32.store
- (get_local $$buf)
- (get_local $$internal_buf)
- )
- (i32.store
- (set_local $$wbase
- (i32.add
- (get_local $$f)
- (i32.const 28)
+ (block
+ (set_local $$4
+ (i32.load
+ (set_local $$buf
+ (i32.add
+ (get_local $$f)
+ (i32.const 44)
+ )
+ )
)
)
- (get_local $$internal_buf)
- )
- (i32.store
- (set_local $$wpos
- (i32.add
- (get_local $$f)
- (i32.const 20)
- )
+ (i32.store
+ (get_local $$buf)
+ (get_local $$internal_buf)
)
- (get_local $$internal_buf)
- )
- (i32.store
- (get_local $$buf_size)
- (i32.const 80)
- )
- (i32.store
- (set_local $$wend
- (i32.add
- (get_local $$f)
- (i32.const 16)
+ (i32.store
+ (set_local $$wbase
+ (i32.add
+ (get_local $$f)
+ (i32.const 28)
+ )
)
- )
- (i32.add
(get_local $$internal_buf)
- (i32.const 80)
)
- )
- (set_local $$call21
- (call $_printf_core
- (get_local $$f)
- (get_local $$fmt)
- (get_local $$ap2)
- (get_local $$nl_arg)
- (get_local $$nl_type)
+ (i32.store
+ (set_local $$wpos
+ (i32.add
+ (get_local $$f)
+ (i32.const 20)
+ )
+ )
+ (get_local $$internal_buf)
)
- )
- (if
- (i32.eq
- (get_local $$4)
- (i32.const 0)
+ (i32.store
+ (get_local $$buf_size)
+ (i32.const 80)
)
- (get_local $$call21)
- (block
- (call_indirect $FUNCSIG$iiii
+ (i32.store
+ (set_local $$wend
(i32.add
- (i32.and
- (i32.load offset=36
- (get_local $$f)
- )
- (i32.const 7)
- )
- (i32.const 2)
+ (get_local $$f)
+ (i32.const 16)
)
+ )
+ (i32.add
+ (get_local $$internal_buf)
+ (i32.const 80)
+ )
+ )
+ (set_local $$call21
+ (call $_printf_core
(get_local $$f)
- (i32.const 0)
+ (get_local $$fmt)
+ (get_local $$ap2)
+ (get_local $$nl_arg)
+ (get_local $$nl_type)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $$4)
(i32.const 0)
)
- (set_local $$$call21
- (if
- (i32.eq
- (i32.load
- (get_local $$wpos)
+ (get_local $$call21)
+ (block
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (get_local $$f)
+ )
+ (i32.const 7)
)
- (i32.const 0)
+ (i32.const 2)
)
- (i32.const -1)
- (get_local $$call21)
+ (get_local $$f)
+ (i32.const 0)
+ (i32.const 0)
)
+ (set_local $$$call21
+ (select
+ (i32.const -1)
+ (get_local $$call21)
+ (i32.eq
+ (i32.load
+ (get_local $$wpos)
+ )
+ (i32.const 0)
+ )
+ )
+ )
+ (i32.store
+ (get_local $$buf)
+ (get_local $$4)
+ )
+ (i32.store
+ (get_local $$buf_size)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wend)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wbase)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wpos)
+ (i32.const 0)
+ )
+ (get_local $$$call21)
)
- (i32.store
- (get_local $$buf)
- (get_local $$4)
- )
- (i32.store
- (get_local $$buf_size)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wend)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wbase)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wpos)
- (i32.const 0)
- )
- (get_local $$$call21)
)
)
+ (call $_printf_core
+ (get_local $$f)
+ (get_local $$fmt)
+ (get_local $$ap2)
+ (get_local $$nl_arg)
+ (get_local $$nl_type)
+ )
)
- (call $_printf_core
- (get_local $$f)
- (get_local $$fmt)
- (get_local $$ap2)
- (get_local $$nl_arg)
- (get_local $$nl_type)
- )
- )
- )
- (set_local $$ret$1$
- (if
+ (i32.const -1)
(i32.eq
(i32.and
(set_local $$7
@@ -1848,8 +1815,6 @@
)
(i32.const 0)
)
- (get_local $$ret$1)
- (i32.const -1)
)
)
(i32.store
@@ -1876,9 +1841,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $___fwritex (param $$s i32) (param $$l i32) (param $$f i32) (result i32)
(local $$i$0$lcssa36 i32)
@@ -2145,9 +2108,7 @@
)
)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $___towrite (param $$f i32) (result i32)
(local $$2 i32)
@@ -2189,61 +2150,59 @@
(get_local $$mode)
(get_local $$conv3)
)
- (return
- (if
- (i32.eq
- (i32.and
- (set_local $$1
- (i32.load
- (get_local $$f)
- )
+ (if
+ (i32.eq
+ (i32.and
+ (set_local $$1
+ (i32.load
+ (get_local $$f)
)
- (i32.const 8)
)
+ (i32.const 8)
+ )
+ (i32.const 0)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $$f)
(i32.const 0)
)
- (block
- (i32.store offset=8
- (get_local $$f)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $$f)
- (i32.const 0)
- )
- (i32.store offset=28
- (get_local $$f)
- (set_local $$2
- (i32.load offset=44
- (get_local $$f)
- )
+ (i32.store offset=4
+ (get_local $$f)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $$f)
+ (set_local $$2
+ (i32.load offset=44
+ (get_local $$f)
)
)
- (i32.store offset=20
- (get_local $$f)
+ )
+ (i32.store offset=20
+ (get_local $$f)
+ (get_local $$2)
+ )
+ (i32.store offset=16
+ (get_local $$f)
+ (i32.add
(get_local $$2)
- )
- (i32.store offset=16
- (get_local $$f)
- (i32.add
- (get_local $$2)
- (i32.load offset=48
- (get_local $$f)
- )
+ (i32.load offset=48
+ (get_local $$f)
)
)
- (i32.const 0)
)
- (block
- (i32.store
- (get_local $$f)
- (i32.or
- (get_local $$1)
- (i32.const 32)
- )
+ (i32.const 0)
+ )
+ (block
+ (i32.store
+ (get_local $$f)
+ (i32.or
+ (get_local $$1)
+ (i32.const 32)
)
- (i32.const -1)
)
+ (i32.const -1)
)
)
)
@@ -2251,208 +2210,206 @@
(i32.load
(i32.const 8)
)
- (return
- (block $do-once$0
- (if
- (i32.eq
- (get_local $$s)
- (i32.const 0)
- )
- (i32.const 1)
- (block
- (if
- (i32.lt_u
- (get_local $$wc)
- (i32.const 128)
- )
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (get_local $$wc)
- (i32.const 255)
- )
- )
- (br $do-once$0
- (i32.const 1)
+ (block $do-once$0
+ (if
+ (i32.eq
+ (get_local $$s)
+ (i32.const 0)
+ )
+ (i32.const 1)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 128)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (get_local $$wc)
+ (i32.const 255)
)
)
- )
- (if
- (i32.lt_u
- (get_local $$wc)
- (i32.const 2048)
+ (br $do-once$0
+ (i32.const 1)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 192)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 2048)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 6)
)
- (i32.const 255)
+ (i32.const 192)
)
+ (i32.const 255)
)
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (br $do-once$0
- (i32.const 2)
- )
+ )
+ (br $do-once$0
+ (i32.const 2)
)
)
- (if
- (i32.or
- (i32.lt_u
+ )
+ (if
+ (i32.or
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 55296)
+ )
+ (i32.eq
+ (i32.and
(get_local $$wc)
- (i32.const 55296)
+ (i32.const -8192)
)
- (i32.eq
- (i32.and
- (get_local $$wc)
- (i32.const -8192)
+ (i32.const 57344)
+ )
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 12)
+ )
+ (i32.const 224)
)
- (i32.const 57344)
+ (i32.const 255)
)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
(i32.shr_u
(get_local $$wc)
- (i32.const 12)
- )
- (i32.const 224)
- )
- (i32.const 255)
- )
- )
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 63)
+ (i32.const 6)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=2
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=2
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (br $do-once$0
- (i32.const 3)
- )
+ )
+ (br $do-once$0
+ (i32.const 3)
)
)
- (if
- (i32.lt_u
- (i32.add
- (get_local $$wc)
- (i32.const -65536)
- )
- (i32.const 1048576)
+ )
+ (if
+ (i32.lt_u
+ (i32.add
+ (get_local $$wc)
+ (i32.const -65536)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.shr_u
- (get_local $$wc)
- (i32.const 18)
- )
- (i32.const 240)
+ (i32.const 1048576)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 18)
)
- (i32.const 255)
+ (i32.const 240)
)
+ (i32.const 255)
)
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 12)
- )
- (i32.const 63)
+ )
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 12)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=2
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 63)
+ )
+ (i32.store8 offset=2
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 6)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=3
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=3
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.const 4)
)
- (block
- (i32.store
- (call $___errno_location)
- (i32.const 84)
- )
- (i32.const -1)
+ (i32.const 4)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.const 84)
)
+ (i32.const -1)
)
)
)
@@ -2463,18 +2420,16 @@
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.eq
- (get_local $$s)
- (i32.const 0)
- )
+ (if
+ (i32.eq
+ (get_local $$s)
+ (i32.const 0)
+ )
+ (i32.const 0)
+ (call $_wcrtomb
+ (get_local $$s)
+ (get_local $$wc)
(i32.const 0)
- (call $_wcrtomb
- (get_local $$s)
- (get_local $$wc)
- (i32.const 0)
- )
)
)
)
@@ -2934,13 +2889,11 @@
)
)
)
- (return
- (if
- (i32.ne
- (get_local $$n$addr$3)
- (i32.const 0)
- )
- (get_local $$s$2)
+ (select
+ (get_local $$s$2)
+ (i32.const 0)
+ (i32.ne
+ (get_local $$n$addr$3)
(i32.const 0)
)
)
@@ -2949,24 +2902,22 @@
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.gt_u
- (get_local $$r)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $___errno_location)
- (i32.sub
- (i32.const 0)
- (get_local $$r)
- )
+ (if
+ (i32.gt_u
+ (get_local $$r)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.sub
+ (i32.const 0)
+ (get_local $$r)
)
- (i32.const -1)
)
- (get_local $$r)
+ (i32.const -1)
)
+ (get_local $$r)
)
)
(func $___fflush_unlocked (param $$f i32) (result i32)
@@ -3106,9 +3057,7 @@
)
)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_cleanup (param $$p i32)
(i32.load
@@ -3125,7 +3074,6 @@
(get_local $$p)
)
)
- (return)
)
(func $_printf_core (param $$f i32) (param $$fmt i32) (param $$ap i32) (param $$nl_arg i32) (param $$nl_type i32) (result i32)
(local $label i32)
@@ -3152,10 +3100,10 @@
(local $$a$3539$i i32)
(local $$i$0$lcssa i32)
(local $$p$2 i32)
- (local $$t$0 i32)
(local $sp i32)
(local $$add$ptr358$i i32)
(local $$arraydecay208$add$ptr213$i i32)
+ (local $$t$0 i32)
(local $$fl$0284 i32)
(local $$fl$4 i32)
(local $$fl$6 i32)
@@ -3184,13 +3132,11 @@
(local $$a$2 i32)
(local $$a$5$lcssa$i i32)
(local $$add$ptr671$i i32)
- (local $$add165$i i32)
(local $$call384 i32)
(local $$fl$3 i32)
(local $$i$0316 i32)
(local $$i$1$lcssa$i i32)
(local $$i$2299 i32)
- (local $$incdec$ptr292$a$3573$i i32)
(local $$j$2$i i32)
(local $$mul$i$240 f64)
(local $$p$addr$2$i i32)
@@ -3209,13 +3155,13 @@
(local $$12 i32)
(local $$149 i32)
(local $$181 f64)
+ (local $$7 i32)
(local $$a$0 i32)
(local $$a$5521$i i32)
(local $$a$8$i i32)
+ (local $$add165$i i32)
(local $$add441 i32)
(local $$add653$i i32)
- (local $$and219 i32)
- (local $$argpos$0 i32)
(local $$arrayidx$i$236 i32)
(local $$cond271$i i32)
(local $$d$0545$i i32)
@@ -3238,8 +3184,8 @@
(local $$s$addr$0$lcssa$i$229 i32)
(local $$sub$ptr$rhs$cast345$i i32)
(local $$w$0 i32)
- (local $$w$2 i32)
(local $$z$0$lcssa i32)
+ (local $$z$4$i i32)
(local $$$396$i f64)
(local $$$pr477$i i32)
(local $$126 i32)
@@ -3253,6 +3199,8 @@
(local $$a$1$lcssa$i i32)
(local $$a$2$ph$i i32)
(local $$add$i$239 i32)
+ (local $$and219 i32)
+ (local $$argpos$0 i32)
(local $$arrayidx119 i32)
(local $$arrayidx68 i32)
(local $$cmp450$lcssa$i i32)
@@ -3263,6 +3211,7 @@
(local $$fl$0310 i32)
(local $$i$3296 i32)
(local $$incdec$ptr122$i i32)
+ (local $$incdec$ptr292$a$3573$i i32)
(local $$incdec$ptr639$i i32)
(local $$incdec$ptr681$i i32)
(local $$incdec$ptr725$i i32)
@@ -3286,6 +3235,7 @@
(local $$sub$ptr$sub789$i i32)
(local $$sub256$i i32)
(local $$t$1 i32)
+ (local $$w$2 i32)
(local $$ws$0317 i32)
(local $$ws$1326 i32)
(local $$y$addr$2$i f64)
@@ -3299,8 +3249,6 @@
(local $$$p$inc468$i i32)
(local $$$pr$i i32)
(local $$$pre566$i i32)
- (local $$$sub514$i i32)
- (local $$$sub562$i i32)
(local $$1 i32)
(local $$10 i32)
(local $$101 i32)
@@ -3315,7 +3263,6 @@
(local $$255 i32)
(local $$29 i32)
(local $$49 i32)
- (local $$7 i32)
(local $$a$6$i i32)
(local $$add$i i32)
(local $$add$i$203 i32)
@@ -3323,7 +3270,6 @@
(local $$add$ptr i32)
(local $$add$ptr311$z$4$i i32)
(local $$add$ptr340 i32)
- (local $$add$ptr43$arrayidx31 i32)
(local $$add275$i i32)
(local $$add313$i i32)
(local $$add395 i32)
@@ -3338,7 +3284,6 @@
(local $$carry262$0535$i i32)
(local $$cmp184 i32)
(local $$cmp37 i32)
- (local $$cmp38$i i32)
(local $$cond233$i i32)
(local $$conv174 i32)
(local $$conv174$lcssa i32)
@@ -3407,17 +3352,16 @@
(local $$sub$ptr$lhs$cast317 i32)
(local $$sub$ptr$lhs$cast694$i i32)
(local $$sub$ptr$sub172$i i32)
- (local $$sub$ptr$sub433$p$5 i32)
(local $$sub$ptr$sub650$pn$i i32)
(local $$sub735$i i32)
(local $$sub806$i i32)
(local $$tobool357 i32)
(local $$wc i32)
(local $$y$addr$3$i f64)
- (local $$z$4$i i32)
(local $$z$7$ph$i i32)
(local $$$ i32)
- (local $$$l10n$0 i32)
+ (local $$$sub514$i i32)
+ (local $$$sub562$i i32)
(local $$0 i32)
(local $$102 i32)
(local $$103 i32)
@@ -3444,6 +3388,7 @@
(local $$193 i32)
(local $$200 i32)
(local $$201 i32)
+ (local $$210 i32)
(local $$215 i32)
(local $$216 i32)
(local $$217 i32)
@@ -3474,26 +3419,16 @@
(local $$92 i32)
(local $$95 i32)
(local $$add$ptr213$i i32)
- (local $$add$ptr311$i i32)
- (local $$add$ptr359 i32)
- (local $$add$ptr43 i32)
+ (local $$add$ptr43$arrayidx31 i32)
(local $$add$ptr442$i i32)
- (local $$add$ptr442$z$3$i i32)
- (local $$add$ptr65$i i32)
- (local $$add$ptr742$i i32)
- (local $$add154$i i32)
- (local $$add163$i i32)
(local $$add269 i32)
- (local $$add269$p$0 i32)
(local $$add322 i32)
(local $$add355$i i32)
(local $$add414$i i32)
(local $$and12$i i32)
- (local $$and214 i32)
(local $$and249 i32)
(local $$and282$i i32)
(local $$and294 i32)
- (local $$and309 i32)
(local $$and483$i i32)
(local $$and62$i i32)
(local $$arrayidx251$i i32)
@@ -3502,21 +3437,28 @@
(local $$big$i i32)
(local $$buf i32)
(local $$call411 i32)
+ (local $$cmp265$i i32)
+ (local $$cmp270 i32)
(local $$cmp299$i i32)
+ (local $$cmp308$i i32)
+ (local $$cmp323 i32)
(local $$cmp338$i i32)
(local $$cmp374$i i32)
+ (local $$cmp38$i i32)
+ (local $$cmp434 i32)
+ (local $$cmp442 i32)
+ (local $$cmp443$i i32)
+ (local $$cmp515$i i32)
+ (local $$cmp528$i i32)
+ (local $$cmp563$i i32)
+ (local $$cmp577$i i32)
(local $$cmp614$i i32)
(local $$cmp94$i i32)
(local $$cnt$1$lcssa i32)
(local $$cond$i i32)
(local $$cond100$i i32)
- (local $$cond245 i32)
(local $$cond304$i i32)
- (local $$cond426 i32)
- (local $$cond43$i i32)
(local $$cond629$i i32)
- (local $$cond732$i i32)
- (local $$cond800$i i32)
(local $$conv116$i i32)
(local $$conv216$i i32)
(local $$conv48 i32)
@@ -3534,8 +3476,6 @@
(local $$incdec$ptr169271$lcssa414 i32)
(local $$incdec$ptr246$i i32)
(local $$incdec$ptr288$i i32)
- (local $$incdec$ptr292$570$i i32)
- (local $$incdec$ptr292$i i32)
(local $$incdec$ptr383 i32)
(local $$incdec$ptr410 i32)
(local $$incdec$ptr423$i i32)
@@ -3555,14 +3495,11 @@
(local $$lor$ext$i i32)
(local $$mul220$i f64)
(local $$mul328$i i32)
- (local $$mul335$i i32)
(local $$mul437$i i32)
(local $$mul499$i i32)
(local $$notrhs$i i32)
(local $$or$cond192 i32)
(local $$or$cond384 i32)
- (local $$p$2$add322 i32)
- (local $$p$3 i32)
(local $$r$0$a$9$i i32)
(local $$retval$0$i i32)
(local $$s$1$i$lcssa i32)
@@ -3572,7 +3509,7 @@
(local $$sub$ptr$sub153$i i32)
(local $$sub$ptr$sub159$i i32)
(local $$sub$ptr$sub175$i i32)
- (local $$sub$ptr$sub363 i32)
+ (local $$sub$ptr$sub433$p$5 i32)
(local $$sub164 i32)
(local $$sub203$i i32)
(local $$sub264$i i32)
@@ -3583,14 +3520,13 @@
(local $$sub562$i i32)
(local $$sub626$le$i i32)
(local $$sub74$i i32)
- (local $$sub97$i i32)
(local $$tobool135$i i32)
(local $$tobool341$i i32)
+ (local $$tobool349 i32)
(local $$tobool37$i i32)
(local $$tobool56$i i32)
(local $$tobool781$i i32)
(local $$y$addr$1$i f64)
- (local $$z$1 i32)
(local $$z$7$add$ptr742$i i32)
(set_local $sp
(i32.load
@@ -3998,104 +3934,98 @@
(br $label$continue$L1)
)
)
- (block $label$break$L25
+ (set_local $$argpos$0
(if
- (i32.eq
- (i32.and
- (set_local $$conv48$307
+ (i32.lt_u
+ (set_local $$isdigittmp
+ (i32.add
(i32.shr_s
(i32.shl
- (set_local $$7
- (if
- (i32.lt_u
- (set_local $$isdigittmp
- (i32.add
- (i32.shr_s
- (i32.shl
- (set_local $$5
- (i32.load8_s
- (set_local $$arrayidx31
- (i32.add
- (get_local $$incdec$ptr169276$lcssa)
- (i32.const 1)
- )
- )
- )
- )
- (i32.const 24)
- )
- (i32.const 24)
- )
- (i32.const -48)
- )
+ (set_local $$5
+ (i32.load8_s
+ (set_local $$arrayidx31
+ (i32.add
+ (get_local $$incdec$ptr169276$lcssa)
+ (i32.const 1)
)
- (i32.const 10)
)
- (block
- (set_local $$add$ptr43
- (i32.add
+ )
+ )
+ (i32.const 24)
+ )
+ (i32.const 24)
+ )
+ (i32.const -48)
+ )
+ )
+ (i32.const 10)
+ )
+ (block
+ (set_local $$7
+ (i32.load8_s
+ (set_local $$add$ptr43$arrayidx31
+ (select
+ (i32.add
+ (get_local $$incdec$ptr169276$lcssa)
+ (i32.const 3)
+ )
+ (get_local $$arrayidx31)
+ (set_local $$cmp37
+ (i32.eq
+ (i32.shr_s
+ (i32.shl
+ (i32.load8_s offset=2
(get_local $$incdec$ptr169276$lcssa)
- (i32.const 3)
)
+ (i32.const 24)
)
- (set_local $$add$ptr43$arrayidx31
- (if
- (set_local $$cmp37
- (i32.eq
- (i32.shr_s
- (i32.shl
- (i32.load8_s offset=2
- (get_local $$incdec$ptr169276$lcssa)
- )
- (i32.const 24)
- )
- (i32.const 24)
- )
- (i32.const 36)
- )
- )
- (get_local $$add$ptr43)
- (get_local $$arrayidx31)
- )
- )
- (set_local $$$l10n$0
- (if
- (get_local $$cmp37)
- (i32.const 1)
- (get_local $$l10n$0)
- )
- )
- (set_local $$argpos$0
- (if
- (get_local $$cmp37)
- (get_local $$isdigittmp)
- (i32.const -1)
- )
- )
- (set_local $$l10n$1
- (get_local $$$l10n$0)
- )
- (set_local $$storemerge
- (get_local $$add$ptr43$arrayidx31)
- )
- (i32.load8_s
- (get_local $$add$ptr43$arrayidx31)
- )
- )
- (block
- (set_local $$argpos$0
- (i32.const -1)
- )
- (set_local $$l10n$1
- (get_local $$l10n$0)
- )
- (set_local $$storemerge
- (get_local $$arrayidx31)
- )
- (get_local $$5)
+ (i32.const 24)
)
+ (i32.const 36)
)
)
+ )
+ )
+ )
+ )
+ (set_local $$l10n$1
+ (select
+ (i32.const 1)
+ (get_local $$l10n$0)
+ (get_local $$cmp37)
+ )
+ )
+ (set_local $$storemerge
+ (get_local $$add$ptr43$arrayidx31)
+ )
+ (select
+ (get_local $$isdigittmp)
+ (i32.const -1)
+ (get_local $$cmp37)
+ )
+ )
+ (block
+ (set_local $$7
+ (get_local $$5)
+ )
+ (set_local $$l10n$1
+ (get_local $$l10n$0)
+ )
+ (set_local $$storemerge
+ (get_local $$arrayidx31)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (block $label$break$L25
+ (if
+ (i32.eq
+ (i32.and
+ (set_local $$conv48$307
+ (i32.shr_s
+ (i32.shl
+ (get_local $$7)
(i32.const 24)
)
(i32.const 24)
@@ -5145,27 +5075,15 @@
)
)
)
- (set_local $$and214
- (i32.and
- (get_local $$conv207)
- (i32.const -33)
- )
- )
- (set_local $$t$0
- (if
- (get_local $$or$cond192)
- (get_local $$and214)
- (get_local $$conv207)
- )
- )
- (set_local $$and219
- (i32.and
- (get_local $$fl$1)
- (i32.const -65537)
- )
- )
(set_local $$fl$1$and219
- (if
+ (select
+ (get_local $$fl$1)
+ (set_local $$and219
+ (i32.and
+ (get_local $$fl$1)
+ (i32.const -65537)
+ )
+ )
(i32.eq
(i32.and
(get_local $$fl$1)
@@ -5173,8 +5091,6 @@
)
(i32.const 0)
)
- (get_local $$fl$1)
- (get_local $$and219)
)
)
(block $label$break$L75
@@ -5204,7 +5120,16 @@
(block $switch-case$34
(br_table $switch-case$49 $switch-default$127 $switch-case$47 $switch-default$127 $switch-case$52 $switch-case$51 $switch-case$50 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$48 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$36 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$53 $switch-default$127 $switch-case$44 $switch-case$42 $switch-case$126 $switch-case$55 $switch-case$54 $switch-default$127 $switch-case$41 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$45 $switch-case$34 $switch-case$40 $switch-case$35 $switch-default$127 $switch-default$127 $switch-case$46 $switch-default$127 $switch-case$43 $switch-default$127 $switch-default$127 $switch-case$37 $switch-default$127
(i32.sub
- (get_local $$t$0)
+ (set_local $$t$0
+ (select
+ (i32.and
+ (get_local $$conv207)
+ (i32.const -33)
+ )
+ (get_local $$conv207)
+ (get_local $$or$cond192)
+ )
+ )
(i32.const 65)
)
)
@@ -5419,16 +5344,6 @@
)
(br $switch$24)
)
- (set_local $$cond245
- (if
- (i32.gt_u
- (get_local $$p$0)
- (i32.const 8)
- )
- (get_local $$p$0)
- (i32.const 8)
- )
- )
(set_local $$fl$3
(i32.or
(get_local $$fl$1$and219)
@@ -5436,7 +5351,14 @@
)
)
(set_local $$p$1
- (get_local $$cond245)
+ (select
+ (get_local $$p$0)
+ (i32.const 8)
+ (i32.gt_u
+ (get_local $$p$0)
+ (i32.const 8)
+ )
+ )
)
(set_local $$t$1
(i32.const 120)
@@ -5585,29 +5507,29 @@
(get_local $$s$addr$0$lcssa$i$229)
)
(block
- (set_local $$add269$p$0
- (if
- (i32.lt_s
- (get_local $$p$0)
- (set_local $$add269
- (i32.add
- (i32.sub
- (get_local $$sub$ptr$lhs$cast317)
- (get_local $$s$addr$0$lcssa$i$229)
- )
- (i32.const 1)
+ (set_local $$cmp270
+ (i32.lt_s
+ (get_local $$p$0)
+ (set_local $$add269
+ (i32.add
+ (i32.sub
+ (get_local $$sub$ptr$lhs$cast317)
+ (get_local $$s$addr$0$lcssa$i$229)
)
+ (i32.const 1)
)
)
- (get_local $$add269)
- (get_local $$p$0)
)
)
(set_local $$fl$4
(get_local $$fl$1$and219)
)
(set_local $$p$2
- (get_local $$add269$p$0)
+ (select
+ (get_local $$add269)
+ (get_local $$p$0)
+ (get_local $$cmp270)
+ )
)
(set_local $$pl$1
(i32.const 0)
@@ -5694,7 +5616,9 @@
)
(block
(set_local $$$
- (if
+ (select
+ (i32.const 4091)
+ (i32.const 4093)
(i32.eq
(set_local $$and294
(i32.and
@@ -5704,8 +5628,6 @@
)
(i32.const 0)
)
- (i32.const 4091)
- (i32.const 4093)
)
)
(set_local $$149
@@ -5813,18 +5735,21 @@
)
(br $switch$24)
)
- (set_local $$a$1
- (if
- (i32.ne
- (set_local $$169
- (i32.load
- (get_local $$arg)
- )
+ (set_local $$tobool349
+ (i32.ne
+ (set_local $$169
+ (i32.load
+ (get_local $$arg)
)
- (i32.const 0)
)
+ (i32.const 0)
+ )
+ )
+ (set_local $$a$1
+ (select
(get_local $$169)
(i32.const 4101)
+ (get_local $$tobool349)
)
)
(set_local $label
@@ -5949,7 +5874,9 @@
)
(block
(set_local $$prefix$0$i
- (if
+ (select
+ (i32.const 4109)
+ (i32.const 4114)
(i32.eq
(set_local $$and12$i
(i32.and
@@ -5959,8 +5886,6 @@
)
(i32.const 0)
)
- (i32.const 4109)
- (i32.const 4114)
)
)
(set_local $$y$addr$0$i
@@ -6056,14 +5981,13 @@
(i32.const 97)
)
(block
- (set_local $$add$ptr65$i
- (i32.add
- (get_local $$prefix$0$i)
- (i32.const 9)
- )
- )
(set_local $$prefix$0$add$ptr65$i
- (if
+ (select
+ (get_local $$prefix$0$i)
+ (i32.add
+ (get_local $$prefix$0$i)
+ (i32.const 9)
+ )
(i32.eq
(set_local $$and62$i
(i32.and
@@ -6073,8 +5997,6 @@
)
(i32.const 0)
)
- (get_local $$prefix$0$i)
- (get_local $$add$ptr65$i)
)
)
(set_local $$add67$i
@@ -6187,21 +6109,18 @@
(i32.const 0)
)
)
- (set_local $$sub97$i
- (i32.sub
- (i32.const 0)
- (get_local $$198)
- )
- )
(set_local $$200
(i32.shr_s
(i32.shl
(i32.lt_s
(set_local $$cond100$i
- (if
- (get_local $$cmp94$i)
- (get_local $$sub97$i)
+ (select
+ (i32.sub
+ (i32.const 0)
+ (get_local $$198)
+ )
(get_local $$198)
+ (get_local $$cmp94$i)
)
)
(i32.const 0)
@@ -6404,41 +6323,34 @@
)
)
)
- (set_local $$add154$i
- (i32.sub
- (i32.add
- (get_local $$sub$ptr$sub153$i)
- (get_local $$p$0)
- )
- (get_local $$incdec$ptr115$i)
- )
- )
- (set_local $$add163$i
- (i32.add
- (i32.sub
- (get_local $$sub$ptr$sub159$i)
- (get_local $$incdec$ptr115$i)
- )
- (get_local $$$pre566$i)
- )
- )
- (set_local $$add165$i
- (i32.add
- (set_local $$l$0$i
- (if
- (get_local $$or$cond384)
- (get_local $$add154$i)
- (get_local $$add163$i)
- )
- )
- (get_local $$add67$i)
- )
- )
(call $_pad
(get_local $$f)
(i32.const 32)
(get_local $$w$1)
- (get_local $$add165$i)
+ (set_local $$add165$i
+ (i32.add
+ (set_local $$l$0$i
+ (select
+ (i32.sub
+ (i32.add
+ (get_local $$sub$ptr$sub153$i)
+ (get_local $$p$0)
+ )
+ (get_local $$incdec$ptr115$i)
+ )
+ (i32.add
+ (i32.sub
+ (get_local $$sub$ptr$sub159$i)
+ (get_local $$incdec$ptr115$i)
+ )
+ (get_local $$$pre566$i)
+ )
+ (get_local $$or$cond384)
+ )
+ )
+ (get_local $$add67$i)
+ )
+ )
(get_local $$fl$1$and219)
)
(if
@@ -6534,66 +6446,69 @@
)
)
(br $do-once$56
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add165$i)
(i32.lt_s
(get_local $$add165$i)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add165$i)
)
)
)
)
(set_local $$$p$i
- (if
+ (select
+ (i32.const 6)
+ (get_local $$p$0)
(i32.lt_s
(get_local $$p$0)
(i32.const 0)
)
- (i32.const 6)
- (get_local $$p$0)
)
)
- (set_local $$sub$ptr$rhs$cast345$i
- (set_local $$arraydecay208$add$ptr213$i
- (if
- (i32.lt_s
- (if
- (get_local $$tobool56$i)
- (block
- (i32.store
- (get_local $$e2$i)
- (set_local $$sub203$i
- (i32.add
- (i32.load
- (get_local $$e2$i)
- )
- (i32.const -28)
- )
- )
- )
- (set_local $$y$addr$3$i
- (f64.mul
- (get_local $$mul$i$240)
- (f64.const 268435456)
- )
- )
- (get_local $$sub203$i)
- )
- (block
- (set_local $$y$addr$3$i
- (get_local $$mul$i$240)
- )
+ (set_local $$210
+ (if
+ (get_local $$tobool56$i)
+ (block
+ (i32.store
+ (get_local $$e2$i)
+ (set_local $$sub203$i
+ (i32.add
(i32.load
(get_local $$e2$i)
)
+ (i32.const -28)
)
)
- (i32.const 0)
)
+ (set_local $$y$addr$3$i
+ (f64.mul
+ (get_local $$mul$i$240)
+ (f64.const 268435456)
+ )
+ )
+ (get_local $$sub203$i)
+ )
+ (block
+ (set_local $$y$addr$3$i
+ (get_local $$mul$i$240)
+ )
+ (i32.load
+ (get_local $$e2$i)
+ )
+ )
+ )
+ )
+ (set_local $$sub$ptr$rhs$cast345$i
+ (set_local $$arraydecay208$add$ptr213$i
+ (select
(get_local $$big$i)
(get_local $$add$ptr213$i)
+ (i32.lt_s
+ (get_local $$210)
+ (i32.const 0)
+ )
)
)
)
@@ -6671,13 +6586,13 @@
)
(loop $while-out$68 $while-in$69
(set_local $$cond233$i
- (if
+ (select
+ (i32.const 29)
+ (get_local $$211)
(i32.gt_s
(get_local $$211)
(i32.const 29)
)
- (i32.const 29)
- (get_local $$211)
)
)
(set_local $$a$2$ph$i
@@ -6928,22 +6843,25 @@
(get_local $$z$1$lcssa$i)
)
(loop $while-out$76 $while-in$77
- (set_local $$cond271$i
- (if
- (i32.gt_s
- (set_local $$sub264$i
- (i32.sub
- (i32.const 0)
- (get_local $$223)
- )
+ (set_local $$cmp265$i
+ (i32.gt_s
+ (set_local $$sub264$i
+ (i32.sub
+ (i32.const 0)
+ (get_local $$223)
)
- (i32.const 9)
)
(i32.const 9)
+ )
+ )
+ (set_local $$cond271$i
+ (select
+ (i32.const 9)
(get_local $$sub264$i)
+ (get_local $$cmp265$i)
)
)
- (set_local $$z$4$i
+ (set_local $$incdec$ptr292$a$3573$i
(block $do-once$78
(if
(i32.lt_u
@@ -7026,22 +6944,19 @@
)
(br $while-in$81)
)
- (set_local $$incdec$ptr292$i
- (i32.add
- (get_local $$a$3539$i)
- (i32.const 4)
- )
- )
(set_local $$incdec$ptr292$a$3$i
- (if
+ (select
+ (i32.add
+ (get_local $$a$3539$i)
+ (i32.const 4)
+ )
+ (get_local $$a$3539$i)
(i32.eq
(i32.load
(get_local $$a$3539$i)
)
(i32.const 0)
)
- (get_local $$incdec$ptr292$i)
- (get_local $$a$3539$i)
)
)
(if
@@ -7050,11 +6965,11 @@
(i32.const 0)
)
(block
- (set_local $$incdec$ptr292$a$3573$i
- (get_local $$incdec$ptr292$a$3$i)
+ (set_local $$z$4$i
+ (get_local $$z$3538$i)
)
(br $do-once$78
- (get_local $$z$3538$i)
+ (get_local $$incdec$ptr292$a$3$i)
)
)
)
@@ -7062,67 +6977,64 @@
(get_local $$z$3538$i)
(get_local $$mul286$i$lcssa)
)
- (set_local $$incdec$ptr292$a$3573$i
- (get_local $$incdec$ptr292$a$3$i)
- )
- (i32.add
- (get_local $$z$3538$i)
- (i32.const 4)
+ (set_local $$z$4$i
+ (i32.add
+ (get_local $$z$3538$i)
+ (i32.const 4)
+ )
)
+ (get_local $$incdec$ptr292$a$3$i)
)
(block
- (set_local $$incdec$ptr292$570$i
+ (set_local $$z$4$i
+ (get_local $$z$3538$i)
+ )
+ (select
(i32.add
(get_local $$a$3539$i)
(i32.const 4)
)
- )
- (set_local $$incdec$ptr292$a$3573$i
- (if
- (i32.eq
- (i32.load
- (get_local $$a$3539$i)
- )
- (i32.const 0)
+ (get_local $$a$3539$i)
+ (i32.eq
+ (i32.load
+ (get_local $$a$3539$i)
)
- (get_local $$incdec$ptr292$570$i)
- (get_local $$a$3539$i)
+ (i32.const 0)
)
)
- (get_local $$z$3538$i)
)
)
)
)
- (set_local $$add$ptr311$i
- (i32.add
- (set_local $$cond304$i
- (if
- (get_local $$cmp299$i)
- (get_local $$arraydecay208$add$ptr213$i)
- (get_local $$incdec$ptr292$a$3573$i)
+ (set_local $$cmp308$i
+ (i32.gt_s
+ (i32.shr_s
+ (i32.sub
+ (get_local $$z$4$i)
+ (set_local $$cond304$i
+ (select
+ (get_local $$arraydecay208$add$ptr213$i)
+ (get_local $$incdec$ptr292$a$3573$i)
+ (get_local $$cmp299$i)
+ )
+ )
)
- )
- (i32.shl
- (get_local $$add275$i)
(i32.const 2)
)
+ (get_local $$add275$i)
)
)
(set_local $$add$ptr311$z$4$i
- (if
- (i32.gt_s
- (i32.shr_s
- (i32.sub
- (get_local $$z$4$i)
- (get_local $$cond304$i)
- )
+ (select
+ (i32.add
+ (get_local $$cond304$i)
+ (i32.shl
+ (get_local $$add275$i)
(i32.const 2)
)
- (get_local $$add275$i)
)
- (get_local $$add$ptr311$i)
(get_local $$z$4$i)
+ (get_local $$cmp308$i)
)
)
(i32.store
@@ -7257,16 +7169,6 @@
)
)
)
- (set_local $$mul335$i
- (if
- (i32.ne
- (get_local $$or$i$241)
- (i32.const 102)
- )
- (get_local $$e$1$i)
- (i32.const 0)
- )
- )
(set_local $$a$9$ph$i
(if
(i32.lt_s
@@ -7274,7 +7176,14 @@
(i32.add
(i32.sub
(get_local $$$p$i)
- (get_local $$mul335$i)
+ (select
+ (get_local $$e$1$i)
+ (i32.const 0)
+ (i32.ne
+ (get_local $$or$i$241)
+ (i32.const 102)
+ )
+ )
)
(i32.shr_s
(i32.shl
@@ -7443,7 +7352,9 @@
)
(block
(set_local $$$396$i
- (if
+ (select
+ (f64.const 9007199254740992)
+ (f64.const 9007199254740994)
(i32.eq
(i32.and
(i32.and
@@ -7457,8 +7368,6 @@
)
(i32.const 0)
)
- (f64.const 9007199254740992)
- (f64.const 9007199254740994)
)
)
(set_local $$small$0$i
@@ -7476,7 +7385,9 @@
)
)
(f64.const 0.5)
- (if
+ (select
+ (f64.const 1)
+ (f64.const 1.5)
(i32.and
(get_local $$cmp374$i)
(i32.eq
@@ -7484,8 +7395,6 @@
(get_local $$div384$i)
)
)
- (f64.const 1)
- (f64.const 1.5)
)
)
)
@@ -7750,26 +7659,26 @@
)
)
)
- (set_local $$add$ptr442$z$3$i
- (if
- (i32.gt_u
- (get_local $$z$3$lcssa$i)
- (set_local $$add$ptr442$i
- (i32.add
- (get_local $$d$4$i)
- (i32.const 4)
- )
+ (set_local $$cmp443$i
+ (i32.gt_u
+ (get_local $$z$3$lcssa$i)
+ (set_local $$add$ptr442$i
+ (i32.add
+ (get_local $$d$4$i)
+ (i32.const 4)
)
)
- (get_local $$add$ptr442$i)
- (get_local $$z$3$lcssa$i)
)
)
(set_local $$e$5$ph$i
(get_local $$e$4$i)
)
(set_local $$z$7$ph$i
- (get_local $$add$ptr442$z$3$i)
+ (select
+ (get_local $$add$ptr442$i)
+ (get_local $$z$3$lcssa$i)
+ (get_local $$cmp443$i)
+ )
)
(get_local $$a$8$i)
)
@@ -8034,29 +7943,34 @@
(i32.const 102)
)
(block
- (set_local $$$sub514$i
- (if
- (i32.lt_s
- (set_local $$sub514$i
- (i32.sub
- (get_local $$mul513$i)
- (get_local $$j$2$i)
- )
+ (set_local $$cmp515$i
+ (i32.lt_s
+ (set_local $$sub514$i
+ (i32.sub
+ (get_local $$mul513$i)
+ (get_local $$j$2$i)
)
- (i32.const 0)
)
(i32.const 0)
- (get_local $$sub514$i)
)
)
- (set_local $$p$addr$3$i
- (if
- (i32.lt_s
- (get_local $$p$addr$2$i)
- (get_local $$$sub514$i)
+ (set_local $$cmp528$i
+ (i32.lt_s
+ (get_local $$p$addr$2$i)
+ (set_local $$$sub514$i
+ (select
+ (i32.const 0)
+ (get_local $$sub514$i)
+ (get_local $$cmp515$i)
+ )
)
+ )
+ )
+ (set_local $$p$addr$3$i
+ (select
(get_local $$p$addr$2$i)
(get_local $$$sub514$i)
+ (get_local $$cmp528$i)
)
)
(set_local $$t$addr$1$i
@@ -8065,32 +7979,37 @@
(i32.const 0)
)
(block
- (set_local $$$sub562$i
- (if
- (i32.lt_s
- (set_local $$sub562$i
- (i32.sub
- (i32.add
- (get_local $$mul513$i)
- (get_local $$e$5$ph$i)
- )
- (get_local $$j$2$i)
+ (set_local $$cmp563$i
+ (i32.lt_s
+ (set_local $$sub562$i
+ (i32.sub
+ (i32.add
+ (get_local $$mul513$i)
+ (get_local $$e$5$ph$i)
)
+ (get_local $$j$2$i)
)
- (i32.const 0)
)
(i32.const 0)
- (get_local $$sub562$i)
)
)
- (set_local $$p$addr$3$i
- (if
- (i32.lt_s
- (get_local $$p$addr$2$i)
- (get_local $$$sub562$i)
+ (set_local $$cmp577$i
+ (i32.lt_s
+ (get_local $$p$addr$2$i)
+ (set_local $$$sub562$i
+ (select
+ (i32.const 0)
+ (get_local $$sub562$i)
+ (get_local $$cmp563$i)
+ )
)
+ )
+ )
+ (set_local $$p$addr$3$i
+ (select
(get_local $$p$addr$2$i)
(get_local $$$sub562$i)
+ (get_local $$cmp577$i)
)
)
(set_local $$t$addr$1$i
@@ -8142,13 +8061,13 @@
)
(block
(set_local $$sub$ptr$sub650$pn$i
- (if
+ (select
+ (get_local $$e$5$ph$i)
+ (i32.const 0)
(i32.gt_s
(get_local $$e$5$ph$i)
(i32.const 0)
)
- (get_local $$e$5$ph$i)
- (i32.const 0)
)
)
(i32.const 0)
@@ -8159,13 +8078,13 @@
(i32.shl
(i32.lt_s
(set_local $$cond629$i
- (if
+ (select
+ (get_local $$sub626$le$i)
+ (get_local $$e$5$ph$i)
(i32.lt_s
(get_local $$e$5$ph$i)
(i32.const 0)
)
- (get_local $$sub626$le$i)
- (get_local $$e$5$ph$i)
)
)
(i32.const 0)
@@ -8322,13 +8241,13 @@
(block
(set_local $$d$5494$i
(set_local $$r$0$a$9$i
- (if
+ (select
+ (get_local $$arraydecay208$add$ptr213$i)
+ (get_local $$a$9$ph$i)
(i32.gt_u
(get_local $$a$9$ph$i)
(get_local $$arraydecay208$add$ptr213$i)
)
- (get_local $$arraydecay208$add$ptr213$i)
- (get_local $$a$9$ph$i)
)
)
)
@@ -8560,22 +8479,17 @@
)
(i32.const 0)
)
- (block
- (set_local $$cond732$i
- (if
- (i32.gt_s
- (get_local $$p$addr$4489$i)
- (i32.const 9)
- )
- (i32.const 9)
+ (call $___fwritex
+ (get_local $$s715$0$lcssa$i)
+ (select
+ (i32.const 9)
+ (get_local $$p$addr$4489$i)
+ (i32.gt_s
(get_local $$p$addr$4489$i)
+ (i32.const 9)
)
)
- (call $___fwritex
- (get_local $$s715$0$lcssa$i)
- (get_local $$cond732$i)
- (get_local $$f)
- )
+ (get_local $$f)
)
)
(set_local $$sub735$i
@@ -8634,17 +8548,14 @@
)
)
(block
- (set_local $$add$ptr742$i
- (i32.add
- (get_local $$a$9$ph$i)
- (i32.const 4)
- )
- )
(set_local $$z$7$add$ptr742$i
- (if
- (get_local $$cmp450$lcssa$i)
+ (select
(get_local $$z$7$i$lcssa)
- (get_local $$add$ptr742$i)
+ (i32.add
+ (get_local $$a$9$ph$i)
+ (i32.const 4)
+ )
+ (get_local $$cmp450$lcssa$i)
)
)
(if
@@ -8822,22 +8733,17 @@
)
(i32.const 0)
)
- (block
- (set_local $$cond800$i
- (if
- (i32.gt_s
- (get_local $$p$addr$5501$i)
- (get_local $$sub$ptr$sub789$i)
- )
- (get_local $$sub$ptr$sub789$i)
+ (call $___fwritex
+ (get_local $$s753$2$i)
+ (select
+ (get_local $$sub$ptr$sub789$i)
+ (get_local $$p$addr$5501$i)
+ (i32.gt_s
(get_local $$p$addr$5501$i)
+ (get_local $$sub$ptr$sub789$i)
)
)
- (call $___fwritex
- (get_local $$s753$2$i)
- (get_local $$cond800$i)
- (get_local $$f)
- )
+ (get_local $$f)
)
)
(if
@@ -8925,18 +8831,20 @@
(i32.const 8192)
)
)
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add653$i)
(i32.lt_s
(get_local $$add653$i)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add653$i)
)
)
(block
(set_local $$cond$i
- (if
+ (select
+ (i32.const 4127)
+ (i32.const 4131)
(set_local $$tobool37$i
(i32.ne
(i32.and
@@ -8946,41 +8854,35 @@
(i32.const 0)
)
)
- (i32.const 4127)
- (i32.const 4131)
- )
- )
- (set_local $$cmp38$i
- (i32.or
- (f64.ne
- (get_local $$y$addr$0$i)
- (get_local $$y$addr$0$i)
- )
- (f64.ne
- (f64.const 0)
- (f64.const 0)
- )
- )
- )
- (set_local $$cond43$i
- (if
- (get_local $$tobool37$i)
- (i32.const 4135)
- (i32.const 4139)
)
)
(set_local $$pl$1$i
- (if
- (get_local $$cmp38$i)
+ (select
(i32.const 0)
(get_local $$pl$0$i)
+ (set_local $$cmp38$i
+ (i32.or
+ (f64.ne
+ (get_local $$y$addr$0$i)
+ (get_local $$y$addr$0$i)
+ )
+ (f64.ne
+ (f64.const 0)
+ (f64.const 0)
+ )
+ )
+ )
)
)
(set_local $$s35$0$i
- (if
- (get_local $$cmp38$i)
- (get_local $$cond43$i)
+ (select
+ (select
+ (i32.const 4135)
+ (i32.const 4139)
+ (get_local $$tobool37$i)
+ )
(get_local $$cond$i)
+ (get_local $$cmp38$i)
)
)
(call $_pad
@@ -9042,13 +8944,13 @@
(i32.const 8192)
)
)
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add$i$239)
(i32.lt_s
(get_local $$add$i$239)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add$i$239)
)
)
)
@@ -9347,32 +9249,6 @@
(i32.const 0)
)
)
- (set_local $$sub$ptr$sub363
- (i32.sub
- (get_local $$call356)
- (get_local $$a$1)
- )
- )
- (set_local $$add$ptr359
- (i32.add
- (get_local $$a$1)
- (get_local $$p$0)
- )
- )
- (set_local $$z$1
- (if
- (get_local $$tobool357)
- (get_local $$add$ptr359)
- (get_local $$call356)
- )
- )
- (set_local $$p$3
- (if
- (get_local $$tobool357)
- (get_local $$p$0)
- (get_local $$sub$ptr$sub363)
- )
- )
(set_local $$a$2
(get_local $$a$1)
)
@@ -9380,7 +9256,14 @@
(get_local $$and219)
)
(set_local $$p$5
- (get_local $$p$3)
+ (select
+ (get_local $$p$0)
+ (i32.sub
+ (get_local $$call356)
+ (get_local $$a$1)
+ )
+ (get_local $$tobool357)
+ )
)
(set_local $$pl$2
(i32.const 0)
@@ -9389,7 +9272,14 @@
(i32.const 4091)
)
(set_local $$z$2
- (get_local $$z$1)
+ (select
+ (i32.add
+ (get_local $$a$1)
+ (get_local $$p$0)
+ )
+ (get_local $$call356)
+ (get_local $$tobool357)
+ )
)
)
(if
@@ -9660,16 +9550,6 @@
(i32.const 8192)
)
)
- (set_local $$cond426
- (if
- (i32.gt_s
- (get_local $$w$1)
- (get_local $$i$0$lcssa368)
- )
- (get_local $$w$1)
- (get_local $$i$0$lcssa368)
- )
- )
(set_local $$cnt$0
(get_local $$cnt$1)
)
@@ -9677,7 +9557,14 @@
(get_local $$incdec$ptr169$lcssa)
)
(set_local $$l$0
- (get_local $$cond426)
+ (select
+ (get_local $$w$1)
+ (get_local $$i$0$lcssa368)
+ (i32.gt_s
+ (get_local $$w$1)
+ (get_local $$i$0$lcssa368)
+ )
+ )
)
(set_local $$l10n$0
(get_local $$l10n$3)
@@ -9694,20 +9581,17 @@
(set_local $label
(i32.const 0)
)
- (set_local $$and309
- (i32.and
- (get_local $$fl$4)
- (i32.const -65537)
- )
- )
(set_local $$and309$fl$4
- (if
+ (select
+ (i32.and
+ (get_local $$fl$4)
+ (i32.const -65537)
+ )
+ (get_local $$fl$4)
(i32.gt_s
(get_local $$p$2)
(i32.const -1)
)
- (get_local $$and309)
- (get_local $$fl$4)
)
)
(set_local $$a$2
@@ -9737,35 +9621,35 @@
)
)
(block
- (set_local $$p$2$add322
- (if
- (i32.gt_s
- (get_local $$p$2)
- (set_local $$add322
- (i32.add
- (i32.xor
- (i32.and
- (get_local $$159)
- (i32.const 1)
- )
+ (set_local $$cmp323
+ (i32.gt_s
+ (get_local $$p$2)
+ (set_local $$add322
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $$159)
(i32.const 1)
)
- (i32.sub
- (get_local $$sub$ptr$lhs$cast317)
- (get_local $$a$0)
- )
+ (i32.const 1)
+ )
+ (i32.sub
+ (get_local $$sub$ptr$lhs$cast317)
+ (get_local $$a$0)
)
)
)
- (get_local $$p$2)
- (get_local $$add322)
)
)
(set_local $$fl$6
(get_local $$and309$fl$4)
)
(set_local $$p$5
- (get_local $$p$2$add322)
+ (select
+ (get_local $$p$2)
+ (get_local $$add322)
+ (get_local $$cmp323)
+ )
)
(set_local $$pl$2
(get_local $$pl$1)
@@ -9800,40 +9684,44 @@
)
)
)
- (set_local $$sub$ptr$sub433$p$5
- (if
- (i32.lt_s
- (get_local $$p$5)
- (set_local $$sub$ptr$sub433
- (i32.sub
- (get_local $$z$2)
- (get_local $$a$2)
- )
+ (set_local $$cmp434
+ (i32.lt_s
+ (get_local $$p$5)
+ (set_local $$sub$ptr$sub433
+ (i32.sub
+ (get_local $$z$2)
+ (get_local $$a$2)
)
)
- (get_local $$sub$ptr$sub433)
- (get_local $$p$5)
)
)
- (set_local $$w$2
- (if
- (i32.lt_s
- (get_local $$w$1)
- (set_local $$add441
- (i32.add
- (get_local $$pl$2)
- (get_local $$sub$ptr$sub433$p$5)
+ (set_local $$cmp442
+ (i32.lt_s
+ (get_local $$w$1)
+ (set_local $$add441
+ (i32.add
+ (get_local $$pl$2)
+ (set_local $$sub$ptr$sub433$p$5
+ (select
+ (get_local $$sub$ptr$sub433)
+ (get_local $$p$5)
+ (get_local $$cmp434)
+ )
)
)
)
- (get_local $$add441)
- (get_local $$w$1)
)
)
(call $_pad
(get_local $$f)
(i32.const 32)
- (get_local $$w$2)
+ (set_local $$w$2
+ (select
+ (get_local $$add441)
+ (get_local $$w$1)
+ (get_local $$cmp442)
+ )
+ )
(get_local $$add441)
(get_local $$fl$6)
)
@@ -10059,9 +9947,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_pop_arg_336 (param $$arg i32) (param $$type i32) (param $$ap i32)
(local $$13 i32)
@@ -10669,7 +10555,6 @@
)
)
)
- (return)
)
(func $_fmt_u (param $$0 i32) (param $$1 i32) (param $$s i32) (result i32)
(local $$8 i32)
@@ -10883,9 +10768,7 @@
)
)
)
- (return
- (get_local $$s$addr$1$lcssa)
- )
+ (get_local $$s$addr$1$lcssa)
)
(func $_pad (param $$f i32) (param $$c i32) (param $$w i32) (param $$l i32) (param $$fl i32)
(local $$sub i32)
@@ -10901,7 +10784,7 @@
(local $$1 i32)
(local $$2 i32)
(local $$3 i32)
- (local $$cond i32)
+ (local $$cmp1 i32)
(local $$sub5 i32)
(set_local $sp
(i32.load
@@ -10947,25 +10830,25 @@
)
)
(block
- (set_local $$cond
- (if
- (i32.gt_u
- (set_local $$sub
- (i32.sub
- (get_local $$w)
- (get_local $$l)
- )
+ (set_local $$cmp1
+ (i32.gt_u
+ (set_local $$sub
+ (i32.sub
+ (get_local $$w)
+ (get_local $$l)
)
- (i32.const 256)
)
(i32.const 256)
- (get_local $$sub)
)
)
(call $_memset
(get_local $$pad)
(get_local $$c)
- (get_local $$cond)
+ (select
+ (i32.const 256)
+ (get_local $$sub)
+ (get_local $$cmp1)
+ )
)
(set_local $$tobool$i$16
(i32.eq
@@ -11085,7 +10968,6 @@
(i32.const 8)
(get_local $sp)
)
- (return)
)
(func $_malloc (param $$bytes i32) (result i32)
(local $$119 i32)
@@ -11142,7 +11024,6 @@
(local $$RP$1$i i32)
(local $$RP$1$i$167 i32)
(local $$RP$1$i$i i32)
- (local $$add$ptr4$i$37$i i32)
(local $$arrayidx$i$20$i i32)
(local $$arrayidx103 i32)
(local $$arrayidx196$i i32)
@@ -11151,7 +11032,6 @@
(local $$br$2$ph$i i32)
(local $$cond4$i i32)
(local $$rsize$0$i i32)
- (local $$shr i32)
(local $$sub160 i32)
(local $$sub18$i$i i32)
(local $$v$3$i i32)
@@ -11183,6 +11063,8 @@
(local $$T$0$i$lcssa i32)
(local $$add$ptr$i i32)
(local $$add$ptr227$i i32)
+ (local $$add$ptr4$i$26$i i32)
+ (local $$add$ptr4$i$37$i i32)
(local $$add26$i$i i32)
(local $$and80$i i32)
(local $$arrayidx$i$i i32)
@@ -11198,10 +11080,12 @@
(local $$rsize$0$i$152 i32)
(local $$rsize$1$i i32)
(local $$rsize$3$i i32)
+ (local $$shr i32)
(local $$shr3 i32)
(local $$sizebits$0$i i32)
(local $$ssize$5$i i32)
(local $$sub101$rsize$4$i i32)
+ (local $$sub5$i$27$i i32)
(local $$sub91 i32)
(local $$t$0$i i32)
(local $$t$2$i i32)
@@ -11236,7 +11120,6 @@
(local $$add$ptr$i$i$i$lcssa i32)
(local $$add$ptr166 i32)
(local $$add$ptr24$i$i i32)
- (local $$add$ptr4$i$26$i i32)
(local $$add$ptr4$i$i i32)
(local $$add$ptr4$i$i$i i32)
(local $$add$ptr95 i32)
@@ -11257,9 +11140,8 @@
(local $$arrayidx66 i32)
(local $$call132$i i32)
(local $$child$i$i i32)
- (local $$cond$i$25$i i32)
- (local $$cond$i$i i32)
- (local $$cond$i$i$i i32)
+ (local $$cmp102$i i32)
+ (local $$cmp32$i i32)
(local $$fd68$pre$phi$i$iZ2D i32)
(local $$head$i$17$i i32)
(local $$p$0$i$i i32)
@@ -11276,7 +11158,6 @@
(local $$sp$1107$i$lcssa i32)
(local $$sub$i$138 i32)
(local $$sub33$i i32)
- (local $$sub5$i$27$i i32)
(local $$sub5$i$i i32)
(local $$sub5$i$i$i i32)
(local $$v$0$i$153 i32)
@@ -11297,7 +11178,6 @@
(local $$127 i32)
(local $$128 i32)
(local $$129 i32)
- (local $$131 i32)
(local $$132 i32)
(local $$135 i32)
(local $$137 i32)
@@ -11316,7 +11196,6 @@
(local $$174 i32)
(local $$175 i32)
(local $$177 i32)
- (local $$178 i32)
(local $$180 i32)
(local $$183 i32)
(local $$185 i32)
@@ -11326,7 +11205,6 @@
(local $$196 i32)
(local $$197 i32)
(local $$199 i32)
- (local $$200 i32)
(local $$202 i32)
(local $$205 i32)
(local $$207 i32)
@@ -11358,7 +11236,6 @@
(local $$83 i32)
(local $$84 i32)
(local $$86 i32)
- (local $$87 i32)
(local $$89 i32)
(local $$92 i32)
(local $$97 i32)
@@ -11371,7 +11248,6 @@
(local $$add$i$180 i32)
(local $$add$i$i i32)
(local $$add$ptr$i$i$i i32)
- (local $$add$ptr15$i$i i32)
(local $$add$ptr193 i32)
(local $$add$ptr2$i$i i32)
(local $$add$ptr262$i i32)
@@ -11387,20 +11263,14 @@
(local $$add346$i i32)
(local $$add83$i$i i32)
(local $$add9$i i32)
- (local $$and i32)
(local $$and$i$143 i32)
(local $$and12$i i32)
(local $$and13$i i32)
- (local $$and13$i$i i32)
(local $$and17$i i32)
(local $$and209$i$i i32)
(local $$and264$i$i i32)
(local $$and268$i$i i32)
(local $$and273$i$i i32)
- (local $$and3$i$24$i i32)
- (local $$and3$i$35$i i32)
- (local $$and3$i$i i32)
- (local $$and3$i$i$i i32)
(local $$and32$i i32)
(local $$and331$i i32)
(local $$and336$i i32)
@@ -11410,7 +11280,6 @@
(local $$and53 i32)
(local $$and57 i32)
(local $$and6$i i32)
- (local $$and6$i$i i32)
(local $$and61 i32)
(local $$and69$i$i i32)
(local $$and73$i$i i32)
@@ -11458,18 +11327,13 @@
(local $$cmp$i$2$i$i i32)
(local $$cmp$i$23$i i32)
(local $$cmp$i$34$i i32)
- (local $$cmp102$i i32)
- (local $$cmp32$i i32)
+ (local $$cmp45$i$155 i32)
(local $$cmp49$i i32)
(local $$cmp7$i$i i32)
- (local $$cond$i i32)
- (local $$cond$i$16$i i32)
- (local $$cond$i$36$i i32)
- (local $$cond$v$0$i i32)
- (local $$cond115$i$i i32)
- (local $$cond15$i$i i32)
- (local $$cond315$i$i i32)
- (local $$cond383$i i32)
+ (local $$cmp9$i$i i32)
+ (local $$cond$i$25$i i32)
+ (local $$cond$i$i i32)
+ (local $$cond$i$i$i i32)
(local $$fd139$i i32)
(local $$fd148$i$i i32)
(local $$fd344$i$i i32)
@@ -11541,19 +11405,13 @@
(local $$sub i32)
(local $$sub$i$181 i32)
(local $$sub$ptr$sub$i i32)
+ (local $$sub$ptr$sub$i$41$i i32)
(local $$sub101$i i32)
(local $$sub112$i i32)
- (local $$sub113$i$i i32)
- (local $$sub16$i$i i32)
- (local $$sub172$i i32)
(local $$sub190 i32)
(local $$sub2$i i32)
(local $$sub260$i i32)
- (local $$sub30$i i32)
(local $$sub31$i i32)
- (local $$sub31$rsize$0$i i32)
- (local $$sub313$i$i i32)
- (local $$sub381$i i32)
(local $$sub41$i i32)
(local $$sub42 i32)
(local $$sub44 i32)
@@ -11570,30 +11428,6 @@
(i32.const 245)
)
(block
- (set_local $$and
- (i32.and
- (i32.add
- (get_local $$bytes)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- (set_local $$shr
- (i32.shr_u
- (set_local $$cond
- (if
- (i32.lt_u
- (get_local $$bytes)
- (i32.const 11)
- )
- (i32.const 16)
- (get_local $$and)
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.ne
(i32.and
@@ -11604,7 +11438,27 @@
(i32.const 176)
)
)
- (get_local $$shr)
+ (set_local $$shr
+ (i32.shr_u
+ (set_local $$cond
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $$bytes)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $$bytes)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -12289,43 +12143,38 @@
(get_local $$22)
)
)
- (set_local $$sub31$rsize$0$i
- (if
- (set_local $$cmp32$i
- (i32.lt_u
- (set_local $$sub31$i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $$cond4$i)
- )
- (i32.const -8)
- )
- (get_local $$cond)
+ (set_local $$cmp32$i
+ (i32.lt_u
+ (set_local $$sub31$i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $$cond4$i)
)
+ (i32.const -8)
)
- (get_local $$rsize$0$i)
+ (get_local $$cond)
)
)
- (get_local $$sub31$i)
(get_local $$rsize$0$i)
)
)
- (set_local $$cond$v$0$i
- (if
+ (set_local $$rsize$0$i
+ (select
+ (get_local $$sub31$i)
+ (get_local $$rsize$0$i)
(get_local $$cmp32$i)
- (get_local $$cond4$i)
- (get_local $$v$0$i)
)
)
- (set_local $$rsize$0$i
- (get_local $$sub31$rsize$0$i)
- )
(set_local $$t$0$i
(get_local $$cond4$i)
)
(set_local $$v$0$i
- (get_local $$cond$v$0$i)
+ (select
+ (get_local $$cond4$i)
+ (get_local $$v$0$i)
+ (get_local $$cmp32$i)
+ )
)
(br $while-in$7)
)
@@ -13089,25 +12938,6 @@
)
)
(block
- (set_local $$sub30$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$idx$0$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond$i
- (if
- (i32.eq
- (get_local $$idx$0$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub30$i)
- )
- )
(set_local $$rsize$0$i$152
(get_local $$sub$i$138)
)
@@ -13117,7 +12947,20 @@
(set_local $$sizebits$0$i
(i32.shl
(get_local $$and145)
- (get_local $$cond$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$idx$0$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$idx$0$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$t$0$i$151
@@ -13182,17 +13025,22 @@
)
)
)
+ (set_local $$cmp45$i$155
+ (i32.eq
+ (set_local $$54
+ (i32.load offset=20
+ (get_local $$t$0$i$151)
+ )
+ )
+ (i32.const 0)
+ )
+ )
(set_local $$rst$1$i
- (if
+ (select
+ (get_local $$rst$0$i)
+ (get_local $$54)
(i32.or
- (i32.eq
- (set_local $$54
- (i32.load offset=20
- (get_local $$t$0$i$151)
- )
- )
- (i32.const 0)
- )
+ (get_local $$cmp45$i$155)
(i32.eq
(get_local $$54)
(set_local $$55
@@ -13214,8 +13062,6 @@
)
)
)
- (get_local $$rst$0$i)
- (get_local $$54)
)
)
(set_local $$sizebits$0$shl52$i
@@ -13461,33 +13307,34 @@
(set_local $label
(i32.const 0)
)
- (set_local $$sub101$rsize$4$i
- (if
- (set_local $$cmp102$i
- (i32.lt_u
- (set_local $$sub101$i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $$t$48$i)
- )
- (i32.const -8)
- )
- (get_local $$and145)
+ (set_local $$cmp102$i
+ (i32.lt_u
+ (set_local $$sub101$i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $$t$48$i)
)
+ (i32.const -8)
)
- (get_local $$rsize$49$i)
+ (get_local $$and145)
)
)
+ (get_local $$rsize$49$i)
+ )
+ )
+ (set_local $$sub101$rsize$4$i
+ (select
(get_local $$sub101$i)
(get_local $$rsize$49$i)
+ (get_local $$cmp102$i)
)
)
(set_local $$t$4$v$4$i
- (if
- (get_local $$cmp102$i)
+ (select
(get_local $$t$48$i)
(get_local $$v$410$i)
+ (get_local $$cmp102$i)
)
)
(if
@@ -14303,38 +14150,29 @@
(br $do-once$29)
)
)
- (set_local $$87
- (i32.load
- (get_local $$arrayidx355$i)
- )
- )
- (set_local $$sub381$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I316$0$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond383$i
- (if
- (i32.eq
- (get_local $$I316$0$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub381$i)
- )
- )
(set_local $$K373$0$i
(i32.shl
(get_local $$rsize$4$lcssa$i)
- (get_local $$cond383$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I316$0$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I316$0$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i
- (get_local $$87)
+ (i32.load
+ (get_local $$arrayidx355$i)
+ )
)
(loop $while-out$31 $while-in$32
(if
@@ -15407,12 +15245,6 @@
)
(br $while-in$47)
)
- (set_local $$sub172$i
- (i32.add
- (get_local $$tsize$795$i)
- (i32.const -40)
- )
- )
(set_local $$cmp$i$13$i
(i32.eq
(i32.and
@@ -15427,28 +15259,24 @@
(i32.const 0)
)
)
- (set_local $$and3$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$124)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$i
- (if
- (get_local $$cmp$i$13$i)
- (i32.const 0)
- (get_local $$and3$i$i)
- )
- )
(i32.store
(i32.const 200)
(set_local $$add$ptr4$i$i
(i32.add
(get_local $$tbase$796$i)
- (get_local $$cond$i$i)
+ (set_local $$cond$i$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$124)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$13$i)
+ )
+ )
)
)
)
@@ -15456,7 +15284,10 @@
(i32.const 188)
(set_local $$sub5$i$i
(i32.sub
- (get_local $$sub172$i)
+ (i32.add
+ (get_local $$tsize$795$i)
+ (i32.const -40)
+ )
(get_local $$cond$i$i)
)
)
@@ -15577,11 +15408,6 @@
(get_local $$tsize$795$i)
)
)
- (set_local $$131
- (i32.load
- (i32.const 188)
- )
- )
(set_local $$cmp$i$23$i
(i32.eq
(i32.and
@@ -15596,42 +15422,42 @@
(i32.const 0)
)
)
- (set_local $$and3$i$24$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$132)
+ (set_local $$add$ptr4$i$26$i
+ (i32.add
+ (get_local $$119)
+ (set_local $$cond$i$25$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$132)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$23$i)
+ )
)
- (i32.const 7)
)
)
- (set_local $$cond$i$25$i
- (if
- (get_local $$cmp$i$23$i)
- (i32.const 0)
- (get_local $$and3$i$24$i)
+ (set_local $$sub5$i$27$i
+ (i32.add
+ (i32.sub
+ (get_local $$tsize$795$i)
+ (get_local $$cond$i$25$i)
+ )
+ (i32.load
+ (i32.const 188)
+ )
)
)
(i32.store
(i32.const 200)
- (set_local $$add$ptr4$i$26$i
- (i32.add
- (get_local $$119)
- (get_local $$cond$i$25$i)
- )
- )
+ (get_local $$add$ptr4$i$26$i)
)
(i32.store
(i32.const 188)
- (set_local $$sub5$i$27$i
- (i32.add
- (i32.sub
- (get_local $$tsize$795$i)
- (get_local $$cond$i$25$i)
- )
- (get_local $$131)
- )
- )
+ (get_local $$sub5$i$27$i)
)
(i32.store offset=4
(get_local $$add$ptr4$i$26$i)
@@ -15780,28 +15606,6 @@
(i32.const 0)
)
)
- (set_local $$and3$i$35$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$140)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$36$i
- (if
- (get_local $$cmp$i$34$i)
- (i32.const 0)
- (get_local $$and3$i$35$i)
- )
- )
- (set_local $$add$ptr4$i$37$i
- (i32.add
- (get_local $$tbase$796$i)
- (get_local $$cond$i$36$i)
- )
- )
(set_local $$cmp7$i$i
(i32.eq
(i32.and
@@ -15816,20 +15620,40 @@
(i32.const 0)
)
)
- (set_local $$and13$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$142)
+ (set_local $$sub$ptr$sub$i$41$i
+ (i32.sub
+ (set_local $$add$ptr16$i$i
+ (i32.add
+ (get_local $$add$ptr227$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$142)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp7$i$i)
+ )
+ )
+ )
+ (set_local $$add$ptr4$i$37$i
+ (i32.add
+ (get_local $$tbase$796$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$140)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$34$i)
+ )
+ )
)
- (i32.const 7)
- )
- )
- (set_local $$cond15$i$i
- (if
- (get_local $$cmp7$i$i)
- (i32.const 0)
- (get_local $$and13$i$i)
)
)
(set_local $$add$ptr17$i$i
@@ -15840,15 +15664,7 @@
)
(set_local $$sub18$i$i
(i32.sub
- (i32.sub
- (set_local $$add$ptr16$i$i
- (i32.add
- (get_local $$add$ptr227$i)
- (get_local $$cond15$i$i)
- )
- )
- (get_local $$add$ptr4$i$37$i)
- )
+ (get_local $$sub$ptr$sub$i$41$i)
(get_local $$nb$0)
)
)
@@ -16794,38 +16610,29 @@
(br $do-once$52)
)
)
- (set_local $$178
- (i32.load
- (get_local $$arrayidx287$i$i)
- )
- )
- (set_local $$sub313$i$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I252$0$i$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond315$i$i
- (if
- (i32.eq
- (get_local $$I252$0$i$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub313$i$i)
- )
- )
(set_local $$K305$0$i$i
(i32.shl
(get_local $$qsize$0$i$i)
- (get_local $$cond315$i$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I252$0$i$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I252$0$i$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i$58$i
- (get_local $$178)
+ (i32.load
+ (get_local $$arrayidx287$i$i)
+ )
)
(loop $while-out$71 $while-in$72
(if
@@ -17058,59 +16865,44 @@
(i32.const 0)
)
)
- (set_local $$and6$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$188)
+ (set_local $$cmp9$i$i
+ (i32.lt_u
+ (set_local $$add$ptr7$i$i
+ (i32.add
+ (get_local $$add$ptr2$i$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$188)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$15$i)
+ )
+ )
+ )
+ (set_local $$add$ptr8$i122$i
+ (i32.add
+ (get_local $$119)
+ (i32.const 16)
+ )
)
- (i32.const 7)
- )
- )
- (set_local $$cond$i$16$i
- (if
- (get_local $$cmp$i$15$i)
- (i32.const 0)
- (get_local $$and6$i$i)
)
)
(set_local $$add$ptr14$i$i
(i32.add
(set_local $$cond13$i$i
- (if
- (i32.lt_u
- (set_local $$add$ptr7$i$i
- (i32.add
- (get_local $$add$ptr2$i$i)
- (get_local $$cond$i$16$i)
- )
- )
- (set_local $$add$ptr8$i122$i
- (i32.add
- (get_local $$119)
- (i32.const 16)
- )
- )
- )
+ (select
(get_local $$119)
(get_local $$add$ptr7$i$i)
+ (get_local $$cmp9$i$i)
)
)
(i32.const 8)
)
)
- (set_local $$add$ptr15$i$i
- (i32.add
- (get_local $$cond13$i$i)
- (i32.const 24)
- )
- )
- (set_local $$sub16$i$i
- (i32.add
- (get_local $$tsize$795$i)
- (i32.const -40)
- )
- )
(set_local $$cmp$i$2$i$i
(i32.eq
(i32.and
@@ -17125,28 +16917,24 @@
(i32.const 0)
)
)
- (set_local $$and3$i$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$190)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$i$i
- (if
- (get_local $$cmp$i$2$i$i)
- (i32.const 0)
- (get_local $$and3$i$i$i)
- )
- )
(i32.store
(i32.const 200)
(set_local $$add$ptr4$i$i$i
(i32.add
(get_local $$tbase$796$i)
- (get_local $$cond$i$i$i)
+ (set_local $$cond$i$i$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$190)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$2$i$i)
+ )
+ )
)
)
)
@@ -17154,7 +16942,10 @@
(i32.const 188)
(set_local $$sub5$i$i$i
(i32.sub
- (get_local $$sub16$i$i)
+ (i32.add
+ (get_local $$tsize$795$i)
+ (i32.const -40)
+ )
(get_local $$cond$i$i$i)
)
)
@@ -17229,7 +17020,10 @@
(get_local $$add$ptr14$i$i)
)
(set_local $$p$0$i$i
- (get_local $$add$ptr15$i$i)
+ (i32.add
+ (get_local $$cond13$i$i)
+ (i32.const 24)
+ )
)
(loop $while-out$75 $while-in$76
(i32.store
@@ -17561,38 +17355,29 @@
(br $do-once$44)
)
)
- (set_local $$200
- (i32.load
- (get_local $$arrayidx91$i$i)
- )
- )
- (set_local $$sub113$i$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I57$0$i$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond115$i$i
- (if
- (i32.eq
- (get_local $$I57$0$i$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub113$i$i)
- )
- )
(set_local $$K105$0$i$i
(i32.shl
(get_local $$sub$ptr$sub$i$i)
- (get_local $$cond115$i$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I57$0$i$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I57$0$i$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i$i
- (get_local $$200)
+ (i32.load
+ (get_local $$arrayidx91$i$i)
+ )
)
(loop $while-out$77 $while-in$78
(if
@@ -17819,9 +17604,7 @@
(call $___errno_location)
(i32.const 12)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_free (param $$mem i32)
(local $$p$1 i32)
@@ -17897,7 +17680,6 @@
(local $$63 i32)
(local $$64 i32)
(local $$66 i32)
- (local $$67 i32)
(local $$69 i32)
(local $$72 i32)
(local $$R$1$lcssa i32)
@@ -17927,7 +17709,6 @@
(local $$child171 i32)
(local $$child443 i32)
(local $$cmp$i i32)
- (local $$cond i32)
(local $$dec i32)
(local $$fd311 i32)
(local $$fd347 i32)
@@ -17944,7 +17725,6 @@
(local $$shl573 i32)
(local $$shl600 i32)
(local $$sp$0$i i32)
- (local $$sub589 i32)
(i32.load
(i32.const 8)
)
@@ -19647,38 +19427,29 @@
)
)
(block
- (set_local $$67
- (i32.load
- (get_local $$arrayidx567)
- )
- )
- (set_local $$sub589
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I534$0)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond
- (if
- (i32.eq
- (get_local $$I534$0)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub589)
- )
- )
(set_local $$K583$0
(i32.shl
(get_local $$psize$2)
- (get_local $$cond)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I534$0)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I534$0)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0
- (get_local $$67)
+ (i32.load
+ (get_local $$arrayidx567)
+ )
)
(loop $while-out$18 $while-in$19
(if
@@ -19893,7 +19664,6 @@
(i32.const 208)
(i32.const -1)
)
- (return)
)
(func $runPostSets
(nop)
@@ -19903,53 +19673,45 @@
(get_local $b)
(get_local $d)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.sub
- (i32.sub
- (get_local $b)
- (get_local $d)
- )
- (i32.gt_u
- (get_local $c)
- (get_local $a)
- )
- )
- )
+ (i32.store
+ (i32.const 168)
+ (i32.sub
(i32.sub
- (get_local $a)
+ (get_local $b)
+ (get_local $d)
+ )
+ (i32.gt_u
(get_local $c)
+ (get_local $a)
)
)
)
+ (i32.sub
+ (get_local $a)
+ (get_local $c)
+ )
)
(func $_i64Add (param $a i32) (param $b i32) (param $c i32) (param $d i32) (result i32)
(local $l i32)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.add
+ (i32.store
+ (i32.const 168)
+ (i32.add
+ (i32.add
+ (get_local $b)
+ (get_local $d)
+ )
+ (i32.lt_u
+ (set_local $l
(i32.add
- (get_local $b)
- (get_local $d)
- )
- (i32.lt_u
- (set_local $l
- (i32.add
- (get_local $a)
- (get_local $c)
- )
- )
(get_local $a)
+ (get_local $c)
)
)
+ (get_local $a)
)
- (get_local $l)
)
)
+ (get_local $l)
)
(func $_memset (param $ptr i32) (param $value i32) (param $num i32) (result i32)
(local $unaligned i32)
@@ -20081,11 +19843,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $ptr)
- (get_local $num)
- )
+ (i32.sub
+ (get_local $ptr)
+ (get_local $num)
)
)
(func $_bitshift64Lshr (param $low i32) (param $high i32) (param $bits i32) (result i32)
@@ -20132,13 +19892,11 @@
(i32.const 168)
(i32.const 0)
)
- (return
- (i32.shr_u
- (get_local $high)
- (i32.sub
- (get_local $bits)
- (i32.const 32)
- )
+ (i32.shr_u
+ (get_local $high)
+ (i32.sub
+ (get_local $bits)
+ (i32.const 32)
)
)
)
@@ -20198,9 +19956,7 @@
)
)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_memcpy (param $dest i32) (param $src i32) (param $num i32) (result i32)
(local $ret i32)
@@ -20344,9 +20100,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $ret)
- )
+ (get_local $ret)
)
(func $_bitshift64Ashr (param $low i32) (param $high i32) (param $bits i32) (result i32)
(if
@@ -20390,22 +20144,20 @@
)
(i32.store
(i32.const 168)
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $high)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
)
- (return
- (i32.shr_s
- (get_local $high)
- (i32.sub
- (get_local $bits)
- (i32.const 32)
- )
+ (i32.shr_s
+ (get_local $high)
+ (i32.sub
+ (get_local $bits)
+ (i32.const 32)
)
)
)
@@ -20460,48 +20212,44 @@
(get_local $$1)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.add
- (i32.add
- (i32.shr_u
- (get_local $$8)
- (i32.const 16)
- )
- (i32.mul
- (get_local $$11)
- (get_local $$6)
- )
- )
- (i32.shr_u
- (i32.add
- (i32.and
- (get_local $$8)
- (i32.const 65535)
- )
- (get_local $$12)
- )
- (i32.const 16)
- )
+ (i32.store
+ (i32.const 168)
+ (i32.add
+ (i32.add
+ (i32.shr_u
+ (get_local $$8)
+ (i32.const 16)
+ )
+ (i32.mul
+ (get_local $$11)
+ (get_local $$6)
)
)
- (i32.or
- (i32.const 0)
- (i32.or
- (i32.shl
- (i32.add
- (get_local $$8)
- (get_local $$12)
- )
- (i32.const 16)
- )
+ (i32.shr_u
+ (i32.add
(i32.and
- (get_local $$3)
+ (get_local $$8)
(i32.const 65535)
)
+ (get_local $$12)
)
+ (i32.const 16)
+ )
+ )
+ )
+ (i32.or
+ (i32.const 0)
+ (i32.or
+ (i32.shl
+ (i32.add
+ (get_local $$8)
+ (get_local $$12)
+ )
+ (i32.const 16)
+ )
+ (i32.and
+ (get_local $$3)
+ (i32.const 65535)
)
)
)
@@ -20513,162 +20261,156 @@
(local $$2$1 i32)
(local $$7$0 i32)
(local $$7$1 i32)
- (set_local $$1$0
- (i32.or
- (i32.shr_s
- (get_local $$a$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
+ (call $_i64Subtract
+ (i32.xor
+ (call $___udivmoddi4
+ (call $_i64Subtract
+ (i32.xor
+ (set_local $$1$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$a$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (get_local $$a$0)
)
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$1$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
+ (i32.xor
+ (set_local $$1$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$1)
- (i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
+ (get_local $$1$0)
+ (get_local $$1$1)
)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
+ (i32.load
+ (i32.const 168)
)
- (i32.const 1)
- )
- )
- )
- (set_local $$2$0
- (i32.or
- (i32.shr_s
- (get_local $$b$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
+ (call $_i64Subtract
+ (i32.xor
+ (set_local $$2$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$b$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (get_local $$b$0)
)
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
+ (i32.xor
+ (set_local $$2$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$1)
- (i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
+ (get_local $$2$0)
+ (get_local $$2$1)
)
- (i32.const 31)
+ (i32.load
+ (i32.const 168)
+ )
+ (i32.const 0)
)
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
+ (set_local $$7$0
+ (i32.xor
+ (get_local $$2$0)
+ (get_local $$1$0)
)
- (i32.const 1)
)
)
- )
- (return
- (call $_i64Subtract
- (i32.xor
- (call $___udivmoddi4
- (call $_i64Subtract
- (i32.xor
- (get_local $$1$0)
- (get_local $$a$0)
- )
- (i32.xor
- (get_local $$1$1)
- (get_local $$a$1)
- )
- (get_local $$1$0)
- (get_local $$1$1)
- )
- (i32.load
- (i32.const 168)
- )
- (call $_i64Subtract
- (i32.xor
- (get_local $$2$0)
- (get_local $$b$0)
- )
- (i32.xor
- (get_local $$2$1)
- (get_local $$b$1)
- )
- (get_local $$2$0)
- (get_local $$2$1)
- )
- (i32.load
- (i32.const 168)
- )
- (i32.const 0)
- )
- (set_local $$7$0
- (i32.xor
- (get_local $$2$0)
- (get_local $$1$0)
- )
- )
+ (i32.xor
+ (i32.load
+ (i32.const 168)
)
- (i32.xor
- (i32.load
- (i32.const 168)
- )
- (set_local $$7$1
- (i32.xor
- (get_local $$2$1)
- (get_local $$1$1)
- )
+ (set_local $$7$1
+ (i32.xor
+ (get_local $$2$1)
+ (get_local $$1$1)
)
)
- (get_local $$7$0)
- (get_local $$7$1)
)
+ (get_local $$7$0)
+ (get_local $$7$1)
)
)
(func $___remdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
(local $$1$0 i32)
(local $$1$1 i32)
(local $$rem i32)
+ (local $__stackBase__ i32)
(local $$2$0 i32)
(local $$2$1 i32)
- (local $__stackBase__ i32)
(local $$10$0 i32)
(local $$10$1 i32)
(set_local $__stackBase__
@@ -20685,107 +20427,57 @@
(i32.const 16)
)
)
- (set_local $$rem
- (get_local $__stackBase__)
- )
- (set_local $$1$0
- (i32.or
- (i32.shr_s
- (get_local $$a$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$1$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$0
- (i32.or
- (i32.shr_s
- (get_local $$b$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
(call $___udivmoddi4
(call $_i64Subtract
(i32.xor
- (get_local $$1$0)
+ (set_local $$1$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$a$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$0)
)
(i32.xor
- (get_local $$1$1)
+ (set_local $$1$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$1)
)
(get_local $$1$0)
@@ -20796,11 +20488,54 @@
)
(call $_i64Subtract
(i32.xor
- (get_local $$2$0)
+ (set_local $$2$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$b$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$0)
)
(i32.xor
- (get_local $$2$1)
+ (set_local $$2$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$1)
)
(get_local $$2$0)
@@ -20809,7 +20544,9 @@
(i32.load
(i32.const 168)
)
- (get_local $$rem)
+ (set_local $$rem
+ (get_local $__stackBase__)
+ )
)
(set_local $$10$0
(call $_i64Subtract
@@ -20838,15 +20575,11 @@
(i32.const 8)
(get_local $__stackBase__)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (get_local $$10$1)
- )
- (get_local $$10$0)
- )
+ (i32.store
+ (i32.const 168)
+ (get_local $$10$1)
)
+ (get_local $$10$0)
)
(func $___muldi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
(local $$x_sroa_0_0_extract_trunc i32)
@@ -20863,53 +20596,47 @@
)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.or
- (i32.add
- (i32.add
- (i32.mul
- (get_local $$b$1)
- (get_local $$x_sroa_0_0_extract_trunc)
- )
- (i32.mul
- (get_local $$a$1)
- (get_local $$y_sroa_0_0_extract_trunc)
- )
- )
- (set_local $$1$1
- (i32.load
- (i32.const 168)
- )
- )
+ (i32.store
+ (i32.const 168)
+ (i32.or
+ (i32.add
+ (i32.add
+ (i32.mul
+ (get_local $$b$1)
+ (get_local $$x_sroa_0_0_extract_trunc)
)
- (i32.and
- (get_local $$1$1)
- (i32.const 0)
+ (i32.mul
+ (get_local $$a$1)
+ (get_local $$y_sroa_0_0_extract_trunc)
+ )
+ )
+ (set_local $$1$1
+ (i32.load
+ (i32.const 168)
)
)
)
- (i32.or
+ (i32.and
+ (get_local $$1$1)
(i32.const 0)
- (i32.and
- (get_local $$1$0)
- (i32.const -1)
- )
)
)
)
+ (i32.or
+ (i32.const 0)
+ (i32.and
+ (get_local $$1$0)
+ (i32.const -1)
+ )
+ )
)
(func $___udivdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
- (return
- (call $___udivmoddi4
- (get_local $$a$0)
- (get_local $$a$1)
- (get_local $$b$0)
- (get_local $$b$1)
- (i32.const 0)
- )
+ (call $___udivmoddi4
+ (get_local $$a$0)
+ (get_local $$a$1)
+ (get_local $$b$0)
+ (get_local $$b$1)
+ (i32.const 0)
)
)
(func $___uremdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
@@ -20942,19 +20669,15 @@
(i32.const 8)
(get_local $__stackBase__)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.load offset=4
- (get_local $$rem)
- )
- )
- (i32.load
- (get_local $$rem)
- )
+ (i32.store
+ (i32.const 168)
+ (i32.load offset=4
+ (get_local $$rem)
)
)
+ (i32.load
+ (get_local $$rem)
+ )
)
(func $___udivmoddi4 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (param $$rem i32) (result i32)
(local $$n_sroa_1_4_extract_trunc i32)
@@ -21851,13 +21574,13 @@
(i32.const 31)
)
(i32.shl
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 1)
)
@@ -21877,24 +21600,24 @@
(i32.and
(i32.or
(i32.shr_s
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 31)
)
(i32.shl
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 1)
)
@@ -21991,89 +21714,81 @@
)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
+ (i32.store
+ (i32.const 168)
+ (i32.or
+ (i32.or
(i32.or
- (i32.or
+ (i32.shr_u
(i32.or
- (i32.shr_u
- (i32.or
- (i32.const 0)
- (get_local $$q_sroa_0_0_insert_ext75$0)
- )
- (i32.const 31)
- )
- (i32.shl
- (get_local $$q_sroa_0_0_insert_insert77$1)
- (i32.const 1)
- )
- )
- (i32.and
- (i32.or
- (i32.shl
- (get_local $$q_sroa_0_0_insert_ext75$1)
- (i32.const 1)
- )
- (i32.shr_u
- (get_local $$q_sroa_0_0_insert_ext75$0)
- (i32.const 31)
- )
- )
(i32.const 0)
+ (get_local $$q_sroa_0_0_insert_ext75$0)
)
+ (i32.const 31)
+ )
+ (i32.shl
+ (get_local $$q_sroa_0_0_insert_insert77$1)
+ (i32.const 1)
)
- (get_local $$carry_0_lcssa$1)
)
- )
- (i32.or
(i32.and
(i32.or
(i32.shl
- (get_local $$q_sroa_0_0_insert_ext75$0)
+ (get_local $$q_sroa_0_0_insert_ext75$1)
(i32.const 1)
)
(i32.shr_u
- (i32.const 0)
+ (get_local $$q_sroa_0_0_insert_ext75$0)
(i32.const 31)
)
)
- (i32.const -2)
+ (i32.const 0)
)
- (get_local $$carry_0_lcssa$0)
)
+ (get_local $$carry_0_lcssa$1)
)
)
- )
- (func $dynCall_ii (param $index i32) (param $a1 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $index)
+ (i32.or
+ (i32.and
+ (i32.or
+ (i32.shl
+ (get_local $$q_sroa_0_0_insert_ext75$0)
(i32.const 1)
)
- (i32.const 0)
+ (i32.shr_u
+ (i32.const 0)
+ (i32.const 31)
+ )
)
- (get_local $a1)
+ (i32.const -2)
)
+ (get_local $$carry_0_lcssa$0)
+ )
+ )
+ (func $dynCall_ii (param $index i32) (param $a1 i32) (result i32)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $index)
+ (i32.const 1)
+ )
+ (i32.const 0)
+ )
+ (get_local $a1)
)
)
(func $dynCall_iiii (param $index i32) (param $a1 i32) (param $a2 i32) (param $a3 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $index)
- (i32.const 7)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $index)
+ (i32.const 7)
)
- (get_local $a1)
- (get_local $a2)
- (get_local $a3)
+ (i32.const 2)
)
+ (get_local $a1)
+ (get_local $a2)
+ (get_local $a3)
)
)
(func $dynCall_vi (param $index i32) (param $a1 i32)
@@ -22092,17 +21807,13 @@
(call_import $nullFunc_ii
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $b1 (param $p0 i32) (param $p1 i32) (param $p2 i32) (result i32)
(call_import $nullFunc_iiii
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $b2 (param $p0 i32)
(call_import $nullFunc_vi
diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise
index 2da4263e7..c5d341988 100644
--- a/test/emcc_hello_world.fromasm.imprecise
+++ b/test/emcc_hello_world.fromasm.imprecise
@@ -89,15 +89,11 @@
)
(call_import $abort)
)
- (return
- (get_local $ret)
- )
+ (get_local $ret)
)
(func $stackSave (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $stackRestore (param $top i32)
@@ -243,10 +239,8 @@
)
)
(func $getTempRet0 (result i32)
- (return
- (i32.load
- (i32.const 168)
- )
+ (i32.load
+ (i32.const 168)
)
)
(func $_main (result i32)
@@ -285,9 +279,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_frexp (param $$x f64) (param $$e i32) (result f64)
(local $$x$addr$0 f64)
@@ -327,97 +319,95 @@
(i32.load
(i32.const 168)
)
- (return
- (block $switch$0
+ (block $switch$0
+ (block $switch-default$3
(block $switch-default$3
- (block $switch-default$3
- (block $switch-case$2
- (block $switch-case$1
- (br_table $switch-case$1 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-case$2 $switch-default$3
- (i32.sub
- (set_local $$conv
- (i32.and
- (get_local $$2)
- (i32.const 2047)
- )
+ (block $switch-case$2
+ (block $switch-case$1
+ (br_table $switch-case$1 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-default$3 $switch-case$2 $switch-default$3
+ (i32.sub
+ (set_local $$conv
+ (i32.and
+ (get_local $$2)
+ (i32.const 2047)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
- (set_local $$storemerge
- (if
- (f64.ne
- (get_local $$x)
- (f64.const 0)
- )
- (block
- (set_local $$x$addr$0
- (call $_frexp
- (f64.mul
- (get_local $$x)
- (f64.const 18446744073709551615)
- )
- (get_local $$e)
- )
- )
- (i32.add
- (i32.load
- (get_local $$e)
+ )
+ (set_local $$storemerge
+ (if
+ (f64.ne
+ (get_local $$x)
+ (f64.const 0)
+ )
+ (block
+ (set_local $$x$addr$0
+ (call $_frexp
+ (f64.mul
+ (get_local $$x)
+ (f64.const 18446744073709551615)
)
- (i32.const -64)
+ (get_local $$e)
)
)
- (block
- (set_local $$x$addr$0
- (get_local $$x)
+ (i32.add
+ (i32.load
+ (get_local $$e)
)
- (i32.const 0)
+ (i32.const -64)
)
)
+ (block
+ (set_local $$x$addr$0
+ (get_local $$x)
+ )
+ (i32.const 0)
+ )
)
- (i32.store
- (get_local $$e)
- (get_local $$storemerge)
- )
- (br $switch$0
- (get_local $$x$addr$0)
- )
+ )
+ (i32.store
+ (get_local $$e)
+ (get_local $$storemerge)
)
(br $switch$0
- (get_local $$x)
+ (get_local $$x$addr$0)
)
)
- (i32.store
- (get_local $$e)
- (i32.add
- (get_local $$conv)
- (i32.const -1022)
- )
+ (br $switch$0
+ (get_local $$x)
)
- (i32.store
- (i32.load
- (i32.const 24)
- )
- (get_local $$0)
+ )
+ (i32.store
+ (get_local $$e)
+ (i32.add
+ (get_local $$conv)
+ (i32.const -1022)
)
- (i32.store offset=4
- (i32.load
- (i32.const 24)
- )
- (i32.or
- (i32.and
- (get_local $$1)
- (i32.const -2146435073)
- )
- (i32.const 1071644672)
- )
+ )
+ (i32.store
+ (i32.load
+ (i32.const 24)
)
+ (get_local $$0)
)
- (f64.load
+ (i32.store offset=4
(i32.load
(i32.const 24)
)
+ (i32.or
+ (i32.and
+ (get_local $$1)
+ (i32.const -2146435073)
+ )
+ (i32.const 1071644672)
+ )
+ )
+ )
+ (f64.load
+ (i32.load
+ (i32.const 24)
)
)
)
@@ -426,11 +416,9 @@
(i32.load
(i32.const 8)
)
- (return
- (call $_frexp
- (get_local $$x)
- (get_local $$e)
- )
+ (call $_frexp
+ (get_local $$x)
+ (get_local $$e)
)
)
(func $_strerror (param $$e i32) (result i32)
@@ -601,26 +589,22 @@
(br $while-in$3)
)
)
- (return
- (get_local $$s$0$lcssa)
- )
+ (get_local $$s$0$lcssa)
)
(func $___errno_location (result i32)
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.eq
- (i32.load
- (i32.const 16)
- )
- (i32.const 0)
- )
- (i32.const 60)
- (i32.load offset=60
- (call_import $_pthread_self)
+ (if
+ (i32.eq
+ (i32.load
+ (i32.const 16)
)
+ (i32.const 0)
+ )
+ (i32.const 60)
+ (i32.load offset=60
+ (call_import $_pthread_self)
)
)
)
@@ -673,9 +657,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call1)
- )
+ (get_local $$call1)
)
(func $___stdout_write (param $$f i32) (param $$buf i32) (param $$len i32) (result i32)
(local $$vararg_buffer i32)
@@ -771,9 +753,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call3)
- )
+ (get_local $$call3)
)
(func $___stdio_seek (param $$f i32) (param $$off i32) (param $$whence i32) (result i32)
(local $$vararg_buffer i32)
@@ -861,9 +841,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$1)
- )
+ (get_local $$1)
)
(func $_fflush (param $$f i32) (result i32)
(local $$f$addr$022 i32)
@@ -879,164 +857,162 @@
(i32.load
(i32.const 8)
)
- (return
- (block $do-once$0
- (if
- (i32.eq
- (get_local $$f)
- (i32.const 0)
- )
- (block
- (set_local $$cond10
- (if
- (i32.eq
- (i32.load
- (i32.const 12)
- )
- (i32.const 0)
+ (block $do-once$0
+ (if
+ (i32.eq
+ (get_local $$f)
+ (i32.const 0)
+ )
+ (block
+ (set_local $$cond10
+ (if
+ (i32.eq
+ (i32.load
+ (i32.const 12)
)
(i32.const 0)
- (call $_fflush
- (i32.load
- (i32.const 12)
- )
+ )
+ (i32.const 0)
+ (call $_fflush
+ (i32.load
+ (i32.const 12)
)
)
)
- (call_import $___lock
- (i32.const 44)
- )
- (if
- (i32.eq
- (set_local $$f$addr$0$19
- (i32.load
- (i32.const 40)
- )
+ )
+ (call_import $___lock
+ (i32.const 44)
+ )
+ (if
+ (i32.eq
+ (set_local $$f$addr$0$19
+ (i32.load
+ (i32.const 40)
)
- (i32.const 0)
)
- (set_local $$r$0$lcssa
+ (i32.const 0)
+ )
+ (set_local $$r$0$lcssa
+ (get_local $$cond10)
+ )
+ (block
+ (set_local $$f$addr$022
+ (get_local $$f$addr$0$19)
+ )
+ (set_local $$r$021
(get_local $$cond10)
)
- (block
- (set_local $$f$addr$022
- (get_local $$f$addr$0$19)
- )
- (set_local $$r$021
- (get_local $$cond10)
- )
- (loop $while-out$2 $while-in$3
- (set_local $$cond19
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $$f$addr$022)
- )
- (i32.const -1)
- )
- (call $___lockfile
+ (loop $while-out$2 $while-in$3
+ (set_local $$cond19
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $$f$addr$022)
)
- (i32.const 0)
+ (i32.const -1)
+ )
+ (call $___lockfile
+ (get_local $$f$addr$022)
)
+ (i32.const 0)
)
- (set_local $$r$1
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $$f$addr$022)
- )
- (i32.load offset=28
- (get_local $$f$addr$022)
- )
+ )
+ (set_local $$r$1
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $$f$addr$022)
)
- (i32.or
- (call $___fflush_unlocked
- (get_local $$f$addr$022)
- )
- (get_local $$r$021)
+ (i32.load offset=28
+ (get_local $$f$addr$022)
+ )
+ )
+ (i32.or
+ (call $___fflush_unlocked
+ (get_local $$f$addr$022)
)
(get_local $$r$021)
)
+ (get_local $$r$021)
)
- (if
- (i32.ne
- (get_local $$cond19)
- (i32.const 0)
- )
- (call $___unlockfile
- (get_local $$f$addr$022)
- )
+ )
+ (if
+ (i32.ne
+ (get_local $$cond19)
+ (i32.const 0)
)
- (if
- (i32.eq
- (set_local $$f$addr$0
- (i32.load offset=56
- (get_local $$f$addr$022)
- )
+ (call $___unlockfile
+ (get_local $$f$addr$022)
+ )
+ )
+ (if
+ (i32.eq
+ (set_local $$f$addr$0
+ (i32.load offset=56
+ (get_local $$f$addr$022)
)
- (i32.const 0)
)
- (block
- (set_local $$r$0$lcssa
- (get_local $$r$1)
- )
- (br $while-out$2)
+ (i32.const 0)
+ )
+ (block
+ (set_local $$r$0$lcssa
+ (get_local $$r$1)
)
- (block
- (set_local $$f$addr$022
- (get_local $$f$addr$0)
- )
- (set_local $$r$021
- (get_local $$r$1)
- )
+ (br $while-out$2)
+ )
+ (block
+ (set_local $$f$addr$022
+ (get_local $$f$addr$0)
+ )
+ (set_local $$r$021
+ (get_local $$r$1)
)
)
- (br $while-in$3)
)
+ (br $while-in$3)
)
)
- (call_import $___unlock
- (i32.const 44)
- )
- (get_local $$r$0$lcssa)
)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $$f)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $___fflush_unlocked
- (get_local $$f)
- )
+ (call_import $___unlock
+ (i32.const 44)
+ )
+ (get_local $$r$0$lcssa)
+ )
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $$f)
)
+ (i32.const -1)
)
- (set_local $$phitmp
- (i32.eq
- (call $___lockfile
- (get_local $$f)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $___fflush_unlocked
+ (get_local $$f)
)
)
- (set_local $$call1
- (call $___fflush_unlocked
+ )
+ (set_local $$phitmp
+ (i32.eq
+ (call $___lockfile
(get_local $$f)
)
+ (i32.const 0)
)
- (if
- (get_local $$phitmp)
- (get_local $$call1)
- (block
- (call $___unlockfile
- (get_local $$f)
- )
- (get_local $$call1)
+ )
+ (set_local $$call1
+ (call $___fflush_unlocked
+ (get_local $$f)
+ )
+ )
+ (if
+ (get_local $$phitmp)
+ (get_local $$call1)
+ (block
+ (call $___unlockfile
+ (get_local $$f)
)
+ (get_local $$call1)
)
)
)
@@ -1091,23 +1067,18 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$call)
- )
+ (get_local $$call)
)
(func $___lockfile (param $$f i32) (result i32)
(i32.load
(i32.const 8)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $___unlockfile (param $$f i32)
(i32.load
(i32.const 8)
)
- (return)
)
(func $___stdio_write (param $$f i32) (param $$buf i32) (param $$len i32) (result i32)
(local $$iov$0 i32)
@@ -1534,9 +1505,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_vfprintf (param $$f i32) (param $$fmt i32) (param $$ap i32) (result i32)
(local $sp i32)
@@ -1555,7 +1524,6 @@
(local $$7 i32)
(local $$and i32)
(local $$cond i32)
- (local $$ret$1 i32)
(local $$ret$1$ i32)
(local $$retval$0 i32)
(local $$wbase i32)
@@ -1696,145 +1664,144 @@
)
)
)
- (set_local $$ret$1
- (if
- (i32.eq
- (i32.load
- (set_local $$buf_size
- (i32.add
- (get_local $$f)
- (i32.const 48)
- )
- )
- )
- (i32.const 0)
- )
- (block
- (set_local $$4
+ (set_local $$ret$1$
+ (select
+ (if
+ (i32.eq
(i32.load
- (set_local $$buf
+ (set_local $$buf_size
(i32.add
(get_local $$f)
- (i32.const 44)
+ (i32.const 48)
)
)
)
+ (i32.const 0)
)
- (i32.store
- (get_local $$buf)
- (get_local $$internal_buf)
- )
- (i32.store
- (set_local $$wbase
- (i32.add
- (get_local $$f)
- (i32.const 28)
+ (block
+ (set_local $$4
+ (i32.load
+ (set_local $$buf
+ (i32.add
+ (get_local $$f)
+ (i32.const 44)
+ )
+ )
)
)
- (get_local $$internal_buf)
- )
- (i32.store
- (set_local $$wpos
- (i32.add
- (get_local $$f)
- (i32.const 20)
- )
+ (i32.store
+ (get_local $$buf)
+ (get_local $$internal_buf)
)
- (get_local $$internal_buf)
- )
- (i32.store
- (get_local $$buf_size)
- (i32.const 80)
- )
- (i32.store
- (set_local $$wend
- (i32.add
- (get_local $$f)
- (i32.const 16)
+ (i32.store
+ (set_local $$wbase
+ (i32.add
+ (get_local $$f)
+ (i32.const 28)
+ )
)
- )
- (i32.add
(get_local $$internal_buf)
- (i32.const 80)
)
- )
- (set_local $$call21
- (call $_printf_core
- (get_local $$f)
- (get_local $$fmt)
- (get_local $$ap2)
- (get_local $$nl_arg)
- (get_local $$nl_type)
+ (i32.store
+ (set_local $$wpos
+ (i32.add
+ (get_local $$f)
+ (i32.const 20)
+ )
+ )
+ (get_local $$internal_buf)
)
- )
- (if
- (i32.eq
- (get_local $$4)
- (i32.const 0)
+ (i32.store
+ (get_local $$buf_size)
+ (i32.const 80)
)
- (get_local $$call21)
- (block
- (call_indirect $FUNCSIG$iiii
+ (i32.store
+ (set_local $$wend
(i32.add
- (i32.and
- (i32.load offset=36
- (get_local $$f)
- )
- (i32.const 7)
- )
- (i32.const 2)
+ (get_local $$f)
+ (i32.const 16)
)
+ )
+ (i32.add
+ (get_local $$internal_buf)
+ (i32.const 80)
+ )
+ )
+ (set_local $$call21
+ (call $_printf_core
(get_local $$f)
- (i32.const 0)
+ (get_local $$fmt)
+ (get_local $$ap2)
+ (get_local $$nl_arg)
+ (get_local $$nl_type)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $$4)
(i32.const 0)
)
- (set_local $$$call21
- (if
- (i32.eq
- (i32.load
- (get_local $$wpos)
+ (get_local $$call21)
+ (block
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (get_local $$f)
+ )
+ (i32.const 7)
)
- (i32.const 0)
+ (i32.const 2)
)
- (i32.const -1)
- (get_local $$call21)
+ (get_local $$f)
+ (i32.const 0)
+ (i32.const 0)
)
+ (set_local $$$call21
+ (select
+ (i32.const -1)
+ (get_local $$call21)
+ (i32.eq
+ (i32.load
+ (get_local $$wpos)
+ )
+ (i32.const 0)
+ )
+ )
+ )
+ (i32.store
+ (get_local $$buf)
+ (get_local $$4)
+ )
+ (i32.store
+ (get_local $$buf_size)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wend)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wbase)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $$wpos)
+ (i32.const 0)
+ )
+ (get_local $$$call21)
)
- (i32.store
- (get_local $$buf)
- (get_local $$4)
- )
- (i32.store
- (get_local $$buf_size)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wend)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wbase)
- (i32.const 0)
- )
- (i32.store
- (get_local $$wpos)
- (i32.const 0)
- )
- (get_local $$$call21)
)
)
+ (call $_printf_core
+ (get_local $$f)
+ (get_local $$fmt)
+ (get_local $$ap2)
+ (get_local $$nl_arg)
+ (get_local $$nl_type)
+ )
)
- (call $_printf_core
- (get_local $$f)
- (get_local $$fmt)
- (get_local $$ap2)
- (get_local $$nl_arg)
- (get_local $$nl_type)
- )
- )
- )
- (set_local $$ret$1$
- (if
+ (i32.const -1)
(i32.eq
(i32.and
(set_local $$7
@@ -1846,8 +1813,6 @@
)
(i32.const 0)
)
- (get_local $$ret$1)
- (i32.const -1)
)
)
(i32.store
@@ -1874,9 +1839,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $___fwritex (param $$s i32) (param $$l i32) (param $$f i32) (result i32)
(local $$i$0$lcssa36 i32)
@@ -2143,9 +2106,7 @@
)
)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $___towrite (param $$f i32) (result i32)
(local $$2 i32)
@@ -2187,61 +2148,59 @@
(get_local $$mode)
(get_local $$conv3)
)
- (return
- (if
- (i32.eq
- (i32.and
- (set_local $$1
- (i32.load
- (get_local $$f)
- )
+ (if
+ (i32.eq
+ (i32.and
+ (set_local $$1
+ (i32.load
+ (get_local $$f)
)
- (i32.const 8)
)
+ (i32.const 8)
+ )
+ (i32.const 0)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $$f)
(i32.const 0)
)
- (block
- (i32.store offset=8
- (get_local $$f)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $$f)
- (i32.const 0)
- )
- (i32.store offset=28
- (get_local $$f)
- (set_local $$2
- (i32.load offset=44
- (get_local $$f)
- )
+ (i32.store offset=4
+ (get_local $$f)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $$f)
+ (set_local $$2
+ (i32.load offset=44
+ (get_local $$f)
)
)
- (i32.store offset=20
- (get_local $$f)
+ )
+ (i32.store offset=20
+ (get_local $$f)
+ (get_local $$2)
+ )
+ (i32.store offset=16
+ (get_local $$f)
+ (i32.add
(get_local $$2)
- )
- (i32.store offset=16
- (get_local $$f)
- (i32.add
- (get_local $$2)
- (i32.load offset=48
- (get_local $$f)
- )
+ (i32.load offset=48
+ (get_local $$f)
)
)
- (i32.const 0)
)
- (block
- (i32.store
- (get_local $$f)
- (i32.or
- (get_local $$1)
- (i32.const 32)
- )
+ (i32.const 0)
+ )
+ (block
+ (i32.store
+ (get_local $$f)
+ (i32.or
+ (get_local $$1)
+ (i32.const 32)
)
- (i32.const -1)
)
+ (i32.const -1)
)
)
)
@@ -2249,208 +2208,206 @@
(i32.load
(i32.const 8)
)
- (return
- (block $do-once$0
- (if
- (i32.eq
- (get_local $$s)
- (i32.const 0)
- )
- (i32.const 1)
- (block
- (if
- (i32.lt_u
- (get_local $$wc)
- (i32.const 128)
- )
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (get_local $$wc)
- (i32.const 255)
- )
- )
- (br $do-once$0
- (i32.const 1)
+ (block $do-once$0
+ (if
+ (i32.eq
+ (get_local $$s)
+ (i32.const 0)
+ )
+ (i32.const 1)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 128)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (get_local $$wc)
+ (i32.const 255)
)
)
- )
- (if
- (i32.lt_u
- (get_local $$wc)
- (i32.const 2048)
+ (br $do-once$0
+ (i32.const 1)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 192)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 2048)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 6)
)
- (i32.const 255)
+ (i32.const 192)
)
+ (i32.const 255)
)
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (br $do-once$0
- (i32.const 2)
- )
+ )
+ (br $do-once$0
+ (i32.const 2)
)
)
- (if
- (i32.or
- (i32.lt_u
+ )
+ (if
+ (i32.or
+ (i32.lt_u
+ (get_local $$wc)
+ (i32.const 55296)
+ )
+ (i32.eq
+ (i32.and
(get_local $$wc)
- (i32.const 55296)
+ (i32.const -8192)
)
- (i32.eq
- (i32.and
- (get_local $$wc)
- (i32.const -8192)
+ (i32.const 57344)
+ )
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 12)
+ )
+ (i32.const 224)
)
- (i32.const 57344)
+ (i32.const 255)
)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
(i32.shr_u
(get_local $$wc)
- (i32.const 12)
- )
- (i32.const 224)
- )
- (i32.const 255)
- )
- )
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 63)
+ (i32.const 6)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=2
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=2
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (br $do-once$0
- (i32.const 3)
- )
+ )
+ (br $do-once$0
+ (i32.const 3)
)
)
- (if
- (i32.lt_u
- (i32.add
- (get_local $$wc)
- (i32.const -65536)
- )
- (i32.const 1048576)
+ )
+ (if
+ (i32.lt_u
+ (i32.add
+ (get_local $$wc)
+ (i32.const -65536)
)
- (block
- (i32.store8
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.shr_u
- (get_local $$wc)
- (i32.const 18)
- )
- (i32.const 240)
+ (i32.const 1048576)
+ )
+ (block
+ (i32.store8
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 18)
)
- (i32.const 255)
+ (i32.const 240)
)
+ (i32.const 255)
)
- (i32.store8 offset=1
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 12)
- )
- (i32.const 63)
+ )
+ (i32.store8 offset=1
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 12)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=2
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $$wc)
- (i32.const 6)
- )
- (i32.const 63)
+ )
+ (i32.store8 offset=2
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $$wc)
+ (i32.const 6)
)
- (i32.const 128)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.store8 offset=3
- (get_local $$s)
- (i32.and
- (i32.or
- (i32.and
- (get_local $$wc)
- (i32.const 63)
- )
- (i32.const 128)
+ )
+ (i32.store8 offset=3
+ (get_local $$s)
+ (i32.and
+ (i32.or
+ (i32.and
+ (get_local $$wc)
+ (i32.const 63)
)
- (i32.const 255)
+ (i32.const 128)
)
+ (i32.const 255)
)
- (i32.const 4)
)
- (block
- (i32.store
- (call $___errno_location)
- (i32.const 84)
- )
- (i32.const -1)
+ (i32.const 4)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.const 84)
)
+ (i32.const -1)
)
)
)
@@ -2461,18 +2418,16 @@
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.eq
- (get_local $$s)
- (i32.const 0)
- )
+ (if
+ (i32.eq
+ (get_local $$s)
+ (i32.const 0)
+ )
+ (i32.const 0)
+ (call $_wcrtomb
+ (get_local $$s)
+ (get_local $$wc)
(i32.const 0)
- (call $_wcrtomb
- (get_local $$s)
- (get_local $$wc)
- (i32.const 0)
- )
)
)
)
@@ -2932,13 +2887,11 @@
)
)
)
- (return
- (if
- (i32.ne
- (get_local $$n$addr$3)
- (i32.const 0)
- )
- (get_local $$s$2)
+ (select
+ (get_local $$s$2)
+ (i32.const 0)
+ (i32.ne
+ (get_local $$n$addr$3)
(i32.const 0)
)
)
@@ -2947,24 +2900,22 @@
(i32.load
(i32.const 8)
)
- (return
- (if
- (i32.gt_u
- (get_local $$r)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $___errno_location)
- (i32.sub
- (i32.const 0)
- (get_local $$r)
- )
+ (if
+ (i32.gt_u
+ (get_local $$r)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $___errno_location)
+ (i32.sub
+ (i32.const 0)
+ (get_local $$r)
)
- (i32.const -1)
)
- (get_local $$r)
+ (i32.const -1)
)
+ (get_local $$r)
)
)
(func $___fflush_unlocked (param $$f i32) (result i32)
@@ -3104,9 +3055,7 @@
)
)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_cleanup (param $$p i32)
(i32.load
@@ -3123,7 +3072,6 @@
(get_local $$p)
)
)
- (return)
)
(func $_printf_core (param $$f i32) (param $$fmt i32) (param $$ap i32) (param $$nl_arg i32) (param $$nl_type i32) (result i32)
(local $label i32)
@@ -3150,10 +3098,10 @@
(local $$a$3539$i i32)
(local $$i$0$lcssa i32)
(local $$p$2 i32)
- (local $$t$0 i32)
(local $sp i32)
(local $$add$ptr358$i i32)
(local $$arraydecay208$add$ptr213$i i32)
+ (local $$t$0 i32)
(local $$fl$0284 i32)
(local $$fl$4 i32)
(local $$fl$6 i32)
@@ -3182,13 +3130,11 @@
(local $$a$2 i32)
(local $$a$5$lcssa$i i32)
(local $$add$ptr671$i i32)
- (local $$add165$i i32)
(local $$call384 i32)
(local $$fl$3 i32)
(local $$i$0316 i32)
(local $$i$1$lcssa$i i32)
(local $$i$2299 i32)
- (local $$incdec$ptr292$a$3573$i i32)
(local $$j$2$i i32)
(local $$mul$i$240 f64)
(local $$p$addr$2$i i32)
@@ -3207,13 +3153,13 @@
(local $$12 i32)
(local $$149 i32)
(local $$181 f64)
+ (local $$7 i32)
(local $$a$0 i32)
(local $$a$5521$i i32)
(local $$a$8$i i32)
+ (local $$add165$i i32)
(local $$add441 i32)
(local $$add653$i i32)
- (local $$and219 i32)
- (local $$argpos$0 i32)
(local $$arrayidx$i$236 i32)
(local $$cond271$i i32)
(local $$d$0545$i i32)
@@ -3236,8 +3182,8 @@
(local $$s$addr$0$lcssa$i$229 i32)
(local $$sub$ptr$rhs$cast345$i i32)
(local $$w$0 i32)
- (local $$w$2 i32)
(local $$z$0$lcssa i32)
+ (local $$z$4$i i32)
(local $$$396$i f64)
(local $$$pr477$i i32)
(local $$126 i32)
@@ -3251,6 +3197,8 @@
(local $$a$1$lcssa$i i32)
(local $$a$2$ph$i i32)
(local $$add$i$239 i32)
+ (local $$and219 i32)
+ (local $$argpos$0 i32)
(local $$arrayidx119 i32)
(local $$arrayidx68 i32)
(local $$cmp450$lcssa$i i32)
@@ -3261,6 +3209,7 @@
(local $$fl$0310 i32)
(local $$i$3296 i32)
(local $$incdec$ptr122$i i32)
+ (local $$incdec$ptr292$a$3573$i i32)
(local $$incdec$ptr639$i i32)
(local $$incdec$ptr681$i i32)
(local $$incdec$ptr725$i i32)
@@ -3284,6 +3233,7 @@
(local $$sub$ptr$sub789$i i32)
(local $$sub256$i i32)
(local $$t$1 i32)
+ (local $$w$2 i32)
(local $$ws$0317 i32)
(local $$ws$1326 i32)
(local $$y$addr$2$i f64)
@@ -3297,8 +3247,6 @@
(local $$$p$inc468$i i32)
(local $$$pr$i i32)
(local $$$pre566$i i32)
- (local $$$sub514$i i32)
- (local $$$sub562$i i32)
(local $$1 i32)
(local $$10 i32)
(local $$101 i32)
@@ -3313,7 +3261,6 @@
(local $$255 i32)
(local $$29 i32)
(local $$49 i32)
- (local $$7 i32)
(local $$a$6$i i32)
(local $$add$i i32)
(local $$add$i$203 i32)
@@ -3321,7 +3268,6 @@
(local $$add$ptr i32)
(local $$add$ptr311$z$4$i i32)
(local $$add$ptr340 i32)
- (local $$add$ptr43$arrayidx31 i32)
(local $$add275$i i32)
(local $$add313$i i32)
(local $$add395 i32)
@@ -3336,7 +3282,6 @@
(local $$carry262$0535$i i32)
(local $$cmp184 i32)
(local $$cmp37 i32)
- (local $$cmp38$i i32)
(local $$cond233$i i32)
(local $$conv174 i32)
(local $$conv174$lcssa i32)
@@ -3405,17 +3350,16 @@
(local $$sub$ptr$lhs$cast317 i32)
(local $$sub$ptr$lhs$cast694$i i32)
(local $$sub$ptr$sub172$i i32)
- (local $$sub$ptr$sub433$p$5 i32)
(local $$sub$ptr$sub650$pn$i i32)
(local $$sub735$i i32)
(local $$sub806$i i32)
(local $$tobool357 i32)
(local $$wc i32)
(local $$y$addr$3$i f64)
- (local $$z$4$i i32)
(local $$z$7$ph$i i32)
(local $$$ i32)
- (local $$$l10n$0 i32)
+ (local $$$sub514$i i32)
+ (local $$$sub562$i i32)
(local $$0 i32)
(local $$102 i32)
(local $$103 i32)
@@ -3442,6 +3386,7 @@
(local $$193 i32)
(local $$200 i32)
(local $$201 i32)
+ (local $$210 i32)
(local $$215 i32)
(local $$216 i32)
(local $$217 i32)
@@ -3472,26 +3417,16 @@
(local $$92 i32)
(local $$95 i32)
(local $$add$ptr213$i i32)
- (local $$add$ptr311$i i32)
- (local $$add$ptr359 i32)
- (local $$add$ptr43 i32)
+ (local $$add$ptr43$arrayidx31 i32)
(local $$add$ptr442$i i32)
- (local $$add$ptr442$z$3$i i32)
- (local $$add$ptr65$i i32)
- (local $$add$ptr742$i i32)
- (local $$add154$i i32)
- (local $$add163$i i32)
(local $$add269 i32)
- (local $$add269$p$0 i32)
(local $$add322 i32)
(local $$add355$i i32)
(local $$add414$i i32)
(local $$and12$i i32)
- (local $$and214 i32)
(local $$and249 i32)
(local $$and282$i i32)
(local $$and294 i32)
- (local $$and309 i32)
(local $$and483$i i32)
(local $$and62$i i32)
(local $$arrayidx251$i i32)
@@ -3500,21 +3435,28 @@
(local $$big$i i32)
(local $$buf i32)
(local $$call411 i32)
+ (local $$cmp265$i i32)
+ (local $$cmp270 i32)
(local $$cmp299$i i32)
+ (local $$cmp308$i i32)
+ (local $$cmp323 i32)
(local $$cmp338$i i32)
(local $$cmp374$i i32)
+ (local $$cmp38$i i32)
+ (local $$cmp434 i32)
+ (local $$cmp442 i32)
+ (local $$cmp443$i i32)
+ (local $$cmp515$i i32)
+ (local $$cmp528$i i32)
+ (local $$cmp563$i i32)
+ (local $$cmp577$i i32)
(local $$cmp614$i i32)
(local $$cmp94$i i32)
(local $$cnt$1$lcssa i32)
(local $$cond$i i32)
(local $$cond100$i i32)
- (local $$cond245 i32)
(local $$cond304$i i32)
- (local $$cond426 i32)
- (local $$cond43$i i32)
(local $$cond629$i i32)
- (local $$cond732$i i32)
- (local $$cond800$i i32)
(local $$conv116$i i32)
(local $$conv216$i i32)
(local $$conv48 i32)
@@ -3532,8 +3474,6 @@
(local $$incdec$ptr169271$lcssa414 i32)
(local $$incdec$ptr246$i i32)
(local $$incdec$ptr288$i i32)
- (local $$incdec$ptr292$570$i i32)
- (local $$incdec$ptr292$i i32)
(local $$incdec$ptr383 i32)
(local $$incdec$ptr410 i32)
(local $$incdec$ptr423$i i32)
@@ -3553,14 +3493,11 @@
(local $$lor$ext$i i32)
(local $$mul220$i f64)
(local $$mul328$i i32)
- (local $$mul335$i i32)
(local $$mul437$i i32)
(local $$mul499$i i32)
(local $$notrhs$i i32)
(local $$or$cond192 i32)
(local $$or$cond384 i32)
- (local $$p$2$add322 i32)
- (local $$p$3 i32)
(local $$r$0$a$9$i i32)
(local $$retval$0$i i32)
(local $$s$1$i$lcssa i32)
@@ -3570,7 +3507,7 @@
(local $$sub$ptr$sub153$i i32)
(local $$sub$ptr$sub159$i i32)
(local $$sub$ptr$sub175$i i32)
- (local $$sub$ptr$sub363 i32)
+ (local $$sub$ptr$sub433$p$5 i32)
(local $$sub164 i32)
(local $$sub203$i i32)
(local $$sub264$i i32)
@@ -3581,14 +3518,13 @@
(local $$sub562$i i32)
(local $$sub626$le$i i32)
(local $$sub74$i i32)
- (local $$sub97$i i32)
(local $$tobool135$i i32)
(local $$tobool341$i i32)
+ (local $$tobool349 i32)
(local $$tobool37$i i32)
(local $$tobool56$i i32)
(local $$tobool781$i i32)
(local $$y$addr$1$i f64)
- (local $$z$1 i32)
(local $$z$7$add$ptr742$i i32)
(set_local $sp
(i32.load
@@ -3996,104 +3932,98 @@
(br $label$continue$L1)
)
)
- (block $label$break$L25
+ (set_local $$argpos$0
(if
- (i32.eq
- (i32.and
- (set_local $$conv48$307
+ (i32.lt_u
+ (set_local $$isdigittmp
+ (i32.add
(i32.shr_s
(i32.shl
- (set_local $$7
- (if
- (i32.lt_u
- (set_local $$isdigittmp
- (i32.add
- (i32.shr_s
- (i32.shl
- (set_local $$5
- (i32.load8_s
- (set_local $$arrayidx31
- (i32.add
- (get_local $$incdec$ptr169276$lcssa)
- (i32.const 1)
- )
- )
- )
- )
- (i32.const 24)
- )
- (i32.const 24)
- )
- (i32.const -48)
- )
+ (set_local $$5
+ (i32.load8_s
+ (set_local $$arrayidx31
+ (i32.add
+ (get_local $$incdec$ptr169276$lcssa)
+ (i32.const 1)
)
- (i32.const 10)
)
- (block
- (set_local $$add$ptr43
- (i32.add
+ )
+ )
+ (i32.const 24)
+ )
+ (i32.const 24)
+ )
+ (i32.const -48)
+ )
+ )
+ (i32.const 10)
+ )
+ (block
+ (set_local $$7
+ (i32.load8_s
+ (set_local $$add$ptr43$arrayidx31
+ (select
+ (i32.add
+ (get_local $$incdec$ptr169276$lcssa)
+ (i32.const 3)
+ )
+ (get_local $$arrayidx31)
+ (set_local $$cmp37
+ (i32.eq
+ (i32.shr_s
+ (i32.shl
+ (i32.load8_s offset=2
(get_local $$incdec$ptr169276$lcssa)
- (i32.const 3)
)
+ (i32.const 24)
)
- (set_local $$add$ptr43$arrayidx31
- (if
- (set_local $$cmp37
- (i32.eq
- (i32.shr_s
- (i32.shl
- (i32.load8_s offset=2
- (get_local $$incdec$ptr169276$lcssa)
- )
- (i32.const 24)
- )
- (i32.const 24)
- )
- (i32.const 36)
- )
- )
- (get_local $$add$ptr43)
- (get_local $$arrayidx31)
- )
- )
- (set_local $$$l10n$0
- (if
- (get_local $$cmp37)
- (i32.const 1)
- (get_local $$l10n$0)
- )
- )
- (set_local $$argpos$0
- (if
- (get_local $$cmp37)
- (get_local $$isdigittmp)
- (i32.const -1)
- )
- )
- (set_local $$l10n$1
- (get_local $$$l10n$0)
- )
- (set_local $$storemerge
- (get_local $$add$ptr43$arrayidx31)
- )
- (i32.load8_s
- (get_local $$add$ptr43$arrayidx31)
- )
- )
- (block
- (set_local $$argpos$0
- (i32.const -1)
- )
- (set_local $$l10n$1
- (get_local $$l10n$0)
- )
- (set_local $$storemerge
- (get_local $$arrayidx31)
- )
- (get_local $$5)
+ (i32.const 24)
)
+ (i32.const 36)
)
)
+ )
+ )
+ )
+ )
+ (set_local $$l10n$1
+ (select
+ (i32.const 1)
+ (get_local $$l10n$0)
+ (get_local $$cmp37)
+ )
+ )
+ (set_local $$storemerge
+ (get_local $$add$ptr43$arrayidx31)
+ )
+ (select
+ (get_local $$isdigittmp)
+ (i32.const -1)
+ (get_local $$cmp37)
+ )
+ )
+ (block
+ (set_local $$7
+ (get_local $$5)
+ )
+ (set_local $$l10n$1
+ (get_local $$l10n$0)
+ )
+ (set_local $$storemerge
+ (get_local $$arrayidx31)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (block $label$break$L25
+ (if
+ (i32.eq
+ (i32.and
+ (set_local $$conv48$307
+ (i32.shr_s
+ (i32.shl
+ (get_local $$7)
(i32.const 24)
)
(i32.const 24)
@@ -5143,27 +5073,15 @@
)
)
)
- (set_local $$and214
- (i32.and
- (get_local $$conv207)
- (i32.const -33)
- )
- )
- (set_local $$t$0
- (if
- (get_local $$or$cond192)
- (get_local $$and214)
- (get_local $$conv207)
- )
- )
- (set_local $$and219
- (i32.and
- (get_local $$fl$1)
- (i32.const -65537)
- )
- )
(set_local $$fl$1$and219
- (if
+ (select
+ (get_local $$fl$1)
+ (set_local $$and219
+ (i32.and
+ (get_local $$fl$1)
+ (i32.const -65537)
+ )
+ )
(i32.eq
(i32.and
(get_local $$fl$1)
@@ -5171,8 +5089,6 @@
)
(i32.const 0)
)
- (get_local $$fl$1)
- (get_local $$and219)
)
)
(block $label$break$L75
@@ -5202,7 +5118,16 @@
(block $switch-case$34
(br_table $switch-case$49 $switch-default$127 $switch-case$47 $switch-default$127 $switch-case$52 $switch-case$51 $switch-case$50 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$48 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$36 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$53 $switch-default$127 $switch-case$44 $switch-case$42 $switch-case$126 $switch-case$55 $switch-case$54 $switch-default$127 $switch-case$41 $switch-default$127 $switch-default$127 $switch-default$127 $switch-case$45 $switch-case$34 $switch-case$40 $switch-case$35 $switch-default$127 $switch-default$127 $switch-case$46 $switch-default$127 $switch-case$43 $switch-default$127 $switch-default$127 $switch-case$37 $switch-default$127
(i32.sub
- (get_local $$t$0)
+ (set_local $$t$0
+ (select
+ (i32.and
+ (get_local $$conv207)
+ (i32.const -33)
+ )
+ (get_local $$conv207)
+ (get_local $$or$cond192)
+ )
+ )
(i32.const 65)
)
)
@@ -5417,16 +5342,6 @@
)
(br $switch$24)
)
- (set_local $$cond245
- (if
- (i32.gt_u
- (get_local $$p$0)
- (i32.const 8)
- )
- (get_local $$p$0)
- (i32.const 8)
- )
- )
(set_local $$fl$3
(i32.or
(get_local $$fl$1$and219)
@@ -5434,7 +5349,14 @@
)
)
(set_local $$p$1
- (get_local $$cond245)
+ (select
+ (get_local $$p$0)
+ (i32.const 8)
+ (i32.gt_u
+ (get_local $$p$0)
+ (i32.const 8)
+ )
+ )
)
(set_local $$t$1
(i32.const 120)
@@ -5583,29 +5505,29 @@
(get_local $$s$addr$0$lcssa$i$229)
)
(block
- (set_local $$add269$p$0
- (if
- (i32.lt_s
- (get_local $$p$0)
- (set_local $$add269
- (i32.add
- (i32.sub
- (get_local $$sub$ptr$lhs$cast317)
- (get_local $$s$addr$0$lcssa$i$229)
- )
- (i32.const 1)
+ (set_local $$cmp270
+ (i32.lt_s
+ (get_local $$p$0)
+ (set_local $$add269
+ (i32.add
+ (i32.sub
+ (get_local $$sub$ptr$lhs$cast317)
+ (get_local $$s$addr$0$lcssa$i$229)
)
+ (i32.const 1)
)
)
- (get_local $$add269)
- (get_local $$p$0)
)
)
(set_local $$fl$4
(get_local $$fl$1$and219)
)
(set_local $$p$2
- (get_local $$add269$p$0)
+ (select
+ (get_local $$add269)
+ (get_local $$p$0)
+ (get_local $$cmp270)
+ )
)
(set_local $$pl$1
(i32.const 0)
@@ -5692,7 +5614,9 @@
)
(block
(set_local $$$
- (if
+ (select
+ (i32.const 4091)
+ (i32.const 4093)
(i32.eq
(set_local $$and294
(i32.and
@@ -5702,8 +5626,6 @@
)
(i32.const 0)
)
- (i32.const 4091)
- (i32.const 4093)
)
)
(set_local $$149
@@ -5811,18 +5733,21 @@
)
(br $switch$24)
)
- (set_local $$a$1
- (if
- (i32.ne
- (set_local $$169
- (i32.load
- (get_local $$arg)
- )
+ (set_local $$tobool349
+ (i32.ne
+ (set_local $$169
+ (i32.load
+ (get_local $$arg)
)
- (i32.const 0)
)
+ (i32.const 0)
+ )
+ )
+ (set_local $$a$1
+ (select
(get_local $$169)
(i32.const 4101)
+ (get_local $$tobool349)
)
)
(set_local $label
@@ -5947,7 +5872,9 @@
)
(block
(set_local $$prefix$0$i
- (if
+ (select
+ (i32.const 4109)
+ (i32.const 4114)
(i32.eq
(set_local $$and12$i
(i32.and
@@ -5957,8 +5884,6 @@
)
(i32.const 0)
)
- (i32.const 4109)
- (i32.const 4114)
)
)
(set_local $$y$addr$0$i
@@ -6054,14 +5979,13 @@
(i32.const 97)
)
(block
- (set_local $$add$ptr65$i
- (i32.add
- (get_local $$prefix$0$i)
- (i32.const 9)
- )
- )
(set_local $$prefix$0$add$ptr65$i
- (if
+ (select
+ (get_local $$prefix$0$i)
+ (i32.add
+ (get_local $$prefix$0$i)
+ (i32.const 9)
+ )
(i32.eq
(set_local $$and62$i
(i32.and
@@ -6071,8 +5995,6 @@
)
(i32.const 0)
)
- (get_local $$prefix$0$i)
- (get_local $$add$ptr65$i)
)
)
(set_local $$add67$i
@@ -6185,21 +6107,18 @@
(i32.const 0)
)
)
- (set_local $$sub97$i
- (i32.sub
- (i32.const 0)
- (get_local $$198)
- )
- )
(set_local $$200
(i32.shr_s
(i32.shl
(i32.lt_s
(set_local $$cond100$i
- (if
- (get_local $$cmp94$i)
- (get_local $$sub97$i)
+ (select
+ (i32.sub
+ (i32.const 0)
+ (get_local $$198)
+ )
(get_local $$198)
+ (get_local $$cmp94$i)
)
)
(i32.const 0)
@@ -6402,41 +6321,34 @@
)
)
)
- (set_local $$add154$i
- (i32.sub
- (i32.add
- (get_local $$sub$ptr$sub153$i)
- (get_local $$p$0)
- )
- (get_local $$incdec$ptr115$i)
- )
- )
- (set_local $$add163$i
- (i32.add
- (i32.sub
- (get_local $$sub$ptr$sub159$i)
- (get_local $$incdec$ptr115$i)
- )
- (get_local $$$pre566$i)
- )
- )
- (set_local $$add165$i
- (i32.add
- (set_local $$l$0$i
- (if
- (get_local $$or$cond384)
- (get_local $$add154$i)
- (get_local $$add163$i)
- )
- )
- (get_local $$add67$i)
- )
- )
(call $_pad
(get_local $$f)
(i32.const 32)
(get_local $$w$1)
- (get_local $$add165$i)
+ (set_local $$add165$i
+ (i32.add
+ (set_local $$l$0$i
+ (select
+ (i32.sub
+ (i32.add
+ (get_local $$sub$ptr$sub153$i)
+ (get_local $$p$0)
+ )
+ (get_local $$incdec$ptr115$i)
+ )
+ (i32.add
+ (i32.sub
+ (get_local $$sub$ptr$sub159$i)
+ (get_local $$incdec$ptr115$i)
+ )
+ (get_local $$$pre566$i)
+ )
+ (get_local $$or$cond384)
+ )
+ )
+ (get_local $$add67$i)
+ )
+ )
(get_local $$fl$1$and219)
)
(if
@@ -6532,66 +6444,69 @@
)
)
(br $do-once$56
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add165$i)
(i32.lt_s
(get_local $$add165$i)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add165$i)
)
)
)
)
(set_local $$$p$i
- (if
+ (select
+ (i32.const 6)
+ (get_local $$p$0)
(i32.lt_s
(get_local $$p$0)
(i32.const 0)
)
- (i32.const 6)
- (get_local $$p$0)
)
)
- (set_local $$sub$ptr$rhs$cast345$i
- (set_local $$arraydecay208$add$ptr213$i
- (if
- (i32.lt_s
- (if
- (get_local $$tobool56$i)
- (block
- (i32.store
- (get_local $$e2$i)
- (set_local $$sub203$i
- (i32.add
- (i32.load
- (get_local $$e2$i)
- )
- (i32.const -28)
- )
- )
- )
- (set_local $$y$addr$3$i
- (f64.mul
- (get_local $$mul$i$240)
- (f64.const 268435456)
- )
- )
- (get_local $$sub203$i)
- )
- (block
- (set_local $$y$addr$3$i
- (get_local $$mul$i$240)
- )
+ (set_local $$210
+ (if
+ (get_local $$tobool56$i)
+ (block
+ (i32.store
+ (get_local $$e2$i)
+ (set_local $$sub203$i
+ (i32.add
(i32.load
(get_local $$e2$i)
)
+ (i32.const -28)
)
)
- (i32.const 0)
)
+ (set_local $$y$addr$3$i
+ (f64.mul
+ (get_local $$mul$i$240)
+ (f64.const 268435456)
+ )
+ )
+ (get_local $$sub203$i)
+ )
+ (block
+ (set_local $$y$addr$3$i
+ (get_local $$mul$i$240)
+ )
+ (i32.load
+ (get_local $$e2$i)
+ )
+ )
+ )
+ )
+ (set_local $$sub$ptr$rhs$cast345$i
+ (set_local $$arraydecay208$add$ptr213$i
+ (select
(get_local $$big$i)
(get_local $$add$ptr213$i)
+ (i32.lt_s
+ (get_local $$210)
+ (i32.const 0)
+ )
)
)
)
@@ -6669,13 +6584,13 @@
)
(loop $while-out$68 $while-in$69
(set_local $$cond233$i
- (if
+ (select
+ (i32.const 29)
+ (get_local $$211)
(i32.gt_s
(get_local $$211)
(i32.const 29)
)
- (i32.const 29)
- (get_local $$211)
)
)
(set_local $$a$2$ph$i
@@ -6926,22 +6841,25 @@
(get_local $$z$1$lcssa$i)
)
(loop $while-out$76 $while-in$77
- (set_local $$cond271$i
- (if
- (i32.gt_s
- (set_local $$sub264$i
- (i32.sub
- (i32.const 0)
- (get_local $$223)
- )
+ (set_local $$cmp265$i
+ (i32.gt_s
+ (set_local $$sub264$i
+ (i32.sub
+ (i32.const 0)
+ (get_local $$223)
)
- (i32.const 9)
)
(i32.const 9)
+ )
+ )
+ (set_local $$cond271$i
+ (select
+ (i32.const 9)
(get_local $$sub264$i)
+ (get_local $$cmp265$i)
)
)
- (set_local $$z$4$i
+ (set_local $$incdec$ptr292$a$3573$i
(block $do-once$78
(if
(i32.lt_u
@@ -7024,22 +6942,19 @@
)
(br $while-in$81)
)
- (set_local $$incdec$ptr292$i
- (i32.add
- (get_local $$a$3539$i)
- (i32.const 4)
- )
- )
(set_local $$incdec$ptr292$a$3$i
- (if
+ (select
+ (i32.add
+ (get_local $$a$3539$i)
+ (i32.const 4)
+ )
+ (get_local $$a$3539$i)
(i32.eq
(i32.load
(get_local $$a$3539$i)
)
(i32.const 0)
)
- (get_local $$incdec$ptr292$i)
- (get_local $$a$3539$i)
)
)
(if
@@ -7048,11 +6963,11 @@
(i32.const 0)
)
(block
- (set_local $$incdec$ptr292$a$3573$i
- (get_local $$incdec$ptr292$a$3$i)
+ (set_local $$z$4$i
+ (get_local $$z$3538$i)
)
(br $do-once$78
- (get_local $$z$3538$i)
+ (get_local $$incdec$ptr292$a$3$i)
)
)
)
@@ -7060,67 +6975,64 @@
(get_local $$z$3538$i)
(get_local $$mul286$i$lcssa)
)
- (set_local $$incdec$ptr292$a$3573$i
- (get_local $$incdec$ptr292$a$3$i)
- )
- (i32.add
- (get_local $$z$3538$i)
- (i32.const 4)
+ (set_local $$z$4$i
+ (i32.add
+ (get_local $$z$3538$i)
+ (i32.const 4)
+ )
)
+ (get_local $$incdec$ptr292$a$3$i)
)
(block
- (set_local $$incdec$ptr292$570$i
+ (set_local $$z$4$i
+ (get_local $$z$3538$i)
+ )
+ (select
(i32.add
(get_local $$a$3539$i)
(i32.const 4)
)
- )
- (set_local $$incdec$ptr292$a$3573$i
- (if
- (i32.eq
- (i32.load
- (get_local $$a$3539$i)
- )
- (i32.const 0)
+ (get_local $$a$3539$i)
+ (i32.eq
+ (i32.load
+ (get_local $$a$3539$i)
)
- (get_local $$incdec$ptr292$570$i)
- (get_local $$a$3539$i)
+ (i32.const 0)
)
)
- (get_local $$z$3538$i)
)
)
)
)
- (set_local $$add$ptr311$i
- (i32.add
- (set_local $$cond304$i
- (if
- (get_local $$cmp299$i)
- (get_local $$arraydecay208$add$ptr213$i)
- (get_local $$incdec$ptr292$a$3573$i)
+ (set_local $$cmp308$i
+ (i32.gt_s
+ (i32.shr_s
+ (i32.sub
+ (get_local $$z$4$i)
+ (set_local $$cond304$i
+ (select
+ (get_local $$arraydecay208$add$ptr213$i)
+ (get_local $$incdec$ptr292$a$3573$i)
+ (get_local $$cmp299$i)
+ )
+ )
)
- )
- (i32.shl
- (get_local $$add275$i)
(i32.const 2)
)
+ (get_local $$add275$i)
)
)
(set_local $$add$ptr311$z$4$i
- (if
- (i32.gt_s
- (i32.shr_s
- (i32.sub
- (get_local $$z$4$i)
- (get_local $$cond304$i)
- )
+ (select
+ (i32.add
+ (get_local $$cond304$i)
+ (i32.shl
+ (get_local $$add275$i)
(i32.const 2)
)
- (get_local $$add275$i)
)
- (get_local $$add$ptr311$i)
(get_local $$z$4$i)
+ (get_local $$cmp308$i)
)
)
(i32.store
@@ -7255,16 +7167,6 @@
)
)
)
- (set_local $$mul335$i
- (if
- (i32.ne
- (get_local $$or$i$241)
- (i32.const 102)
- )
- (get_local $$e$1$i)
- (i32.const 0)
- )
- )
(set_local $$a$9$ph$i
(if
(i32.lt_s
@@ -7272,7 +7174,14 @@
(i32.add
(i32.sub
(get_local $$$p$i)
- (get_local $$mul335$i)
+ (select
+ (get_local $$e$1$i)
+ (i32.const 0)
+ (i32.ne
+ (get_local $$or$i$241)
+ (i32.const 102)
+ )
+ )
)
(i32.shr_s
(i32.shl
@@ -7441,7 +7350,9 @@
)
(block
(set_local $$$396$i
- (if
+ (select
+ (f64.const 9007199254740992)
+ (f64.const 9007199254740994)
(i32.eq
(i32.and
(i32.and
@@ -7455,8 +7366,6 @@
)
(i32.const 0)
)
- (f64.const 9007199254740992)
- (f64.const 9007199254740994)
)
)
(set_local $$small$0$i
@@ -7474,7 +7383,9 @@
)
)
(f64.const 0.5)
- (if
+ (select
+ (f64.const 1)
+ (f64.const 1.5)
(i32.and
(get_local $$cmp374$i)
(i32.eq
@@ -7482,8 +7393,6 @@
(get_local $$div384$i)
)
)
- (f64.const 1)
- (f64.const 1.5)
)
)
)
@@ -7748,26 +7657,26 @@
)
)
)
- (set_local $$add$ptr442$z$3$i
- (if
- (i32.gt_u
- (get_local $$z$3$lcssa$i)
- (set_local $$add$ptr442$i
- (i32.add
- (get_local $$d$4$i)
- (i32.const 4)
- )
+ (set_local $$cmp443$i
+ (i32.gt_u
+ (get_local $$z$3$lcssa$i)
+ (set_local $$add$ptr442$i
+ (i32.add
+ (get_local $$d$4$i)
+ (i32.const 4)
)
)
- (get_local $$add$ptr442$i)
- (get_local $$z$3$lcssa$i)
)
)
(set_local $$e$5$ph$i
(get_local $$e$4$i)
)
(set_local $$z$7$ph$i
- (get_local $$add$ptr442$z$3$i)
+ (select
+ (get_local $$add$ptr442$i)
+ (get_local $$z$3$lcssa$i)
+ (get_local $$cmp443$i)
+ )
)
(get_local $$a$8$i)
)
@@ -8032,29 +7941,34 @@
(i32.const 102)
)
(block
- (set_local $$$sub514$i
- (if
- (i32.lt_s
- (set_local $$sub514$i
- (i32.sub
- (get_local $$mul513$i)
- (get_local $$j$2$i)
- )
+ (set_local $$cmp515$i
+ (i32.lt_s
+ (set_local $$sub514$i
+ (i32.sub
+ (get_local $$mul513$i)
+ (get_local $$j$2$i)
)
- (i32.const 0)
)
(i32.const 0)
- (get_local $$sub514$i)
)
)
- (set_local $$p$addr$3$i
- (if
- (i32.lt_s
- (get_local $$p$addr$2$i)
- (get_local $$$sub514$i)
+ (set_local $$cmp528$i
+ (i32.lt_s
+ (get_local $$p$addr$2$i)
+ (set_local $$$sub514$i
+ (select
+ (i32.const 0)
+ (get_local $$sub514$i)
+ (get_local $$cmp515$i)
+ )
)
+ )
+ )
+ (set_local $$p$addr$3$i
+ (select
(get_local $$p$addr$2$i)
(get_local $$$sub514$i)
+ (get_local $$cmp528$i)
)
)
(set_local $$t$addr$1$i
@@ -8063,32 +7977,37 @@
(i32.const 0)
)
(block
- (set_local $$$sub562$i
- (if
- (i32.lt_s
- (set_local $$sub562$i
- (i32.sub
- (i32.add
- (get_local $$mul513$i)
- (get_local $$e$5$ph$i)
- )
- (get_local $$j$2$i)
+ (set_local $$cmp563$i
+ (i32.lt_s
+ (set_local $$sub562$i
+ (i32.sub
+ (i32.add
+ (get_local $$mul513$i)
+ (get_local $$e$5$ph$i)
)
+ (get_local $$j$2$i)
)
- (i32.const 0)
)
(i32.const 0)
- (get_local $$sub562$i)
)
)
- (set_local $$p$addr$3$i
- (if
- (i32.lt_s
- (get_local $$p$addr$2$i)
- (get_local $$$sub562$i)
+ (set_local $$cmp577$i
+ (i32.lt_s
+ (get_local $$p$addr$2$i)
+ (set_local $$$sub562$i
+ (select
+ (i32.const 0)
+ (get_local $$sub562$i)
+ (get_local $$cmp563$i)
+ )
)
+ )
+ )
+ (set_local $$p$addr$3$i
+ (select
(get_local $$p$addr$2$i)
(get_local $$$sub562$i)
+ (get_local $$cmp577$i)
)
)
(set_local $$t$addr$1$i
@@ -8140,13 +8059,13 @@
)
(block
(set_local $$sub$ptr$sub650$pn$i
- (if
+ (select
+ (get_local $$e$5$ph$i)
+ (i32.const 0)
(i32.gt_s
(get_local $$e$5$ph$i)
(i32.const 0)
)
- (get_local $$e$5$ph$i)
- (i32.const 0)
)
)
(i32.const 0)
@@ -8157,13 +8076,13 @@
(i32.shl
(i32.lt_s
(set_local $$cond629$i
- (if
+ (select
+ (get_local $$sub626$le$i)
+ (get_local $$e$5$ph$i)
(i32.lt_s
(get_local $$e$5$ph$i)
(i32.const 0)
)
- (get_local $$sub626$le$i)
- (get_local $$e$5$ph$i)
)
)
(i32.const 0)
@@ -8320,13 +8239,13 @@
(block
(set_local $$d$5494$i
(set_local $$r$0$a$9$i
- (if
+ (select
+ (get_local $$arraydecay208$add$ptr213$i)
+ (get_local $$a$9$ph$i)
(i32.gt_u
(get_local $$a$9$ph$i)
(get_local $$arraydecay208$add$ptr213$i)
)
- (get_local $$arraydecay208$add$ptr213$i)
- (get_local $$a$9$ph$i)
)
)
)
@@ -8558,22 +8477,17 @@
)
(i32.const 0)
)
- (block
- (set_local $$cond732$i
- (if
- (i32.gt_s
- (get_local $$p$addr$4489$i)
- (i32.const 9)
- )
- (i32.const 9)
+ (call $___fwritex
+ (get_local $$s715$0$lcssa$i)
+ (select
+ (i32.const 9)
+ (get_local $$p$addr$4489$i)
+ (i32.gt_s
(get_local $$p$addr$4489$i)
+ (i32.const 9)
)
)
- (call $___fwritex
- (get_local $$s715$0$lcssa$i)
- (get_local $$cond732$i)
- (get_local $$f)
- )
+ (get_local $$f)
)
)
(set_local $$sub735$i
@@ -8632,17 +8546,14 @@
)
)
(block
- (set_local $$add$ptr742$i
- (i32.add
- (get_local $$a$9$ph$i)
- (i32.const 4)
- )
- )
(set_local $$z$7$add$ptr742$i
- (if
- (get_local $$cmp450$lcssa$i)
+ (select
(get_local $$z$7$i$lcssa)
- (get_local $$add$ptr742$i)
+ (i32.add
+ (get_local $$a$9$ph$i)
+ (i32.const 4)
+ )
+ (get_local $$cmp450$lcssa$i)
)
)
(if
@@ -8820,22 +8731,17 @@
)
(i32.const 0)
)
- (block
- (set_local $$cond800$i
- (if
- (i32.gt_s
- (get_local $$p$addr$5501$i)
- (get_local $$sub$ptr$sub789$i)
- )
- (get_local $$sub$ptr$sub789$i)
+ (call $___fwritex
+ (get_local $$s753$2$i)
+ (select
+ (get_local $$sub$ptr$sub789$i)
+ (get_local $$p$addr$5501$i)
+ (i32.gt_s
(get_local $$p$addr$5501$i)
+ (get_local $$sub$ptr$sub789$i)
)
)
- (call $___fwritex
- (get_local $$s753$2$i)
- (get_local $$cond800$i)
- (get_local $$f)
- )
+ (get_local $$f)
)
)
(if
@@ -8923,18 +8829,20 @@
(i32.const 8192)
)
)
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add653$i)
(i32.lt_s
(get_local $$add653$i)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add653$i)
)
)
(block
(set_local $$cond$i
- (if
+ (select
+ (i32.const 4127)
+ (i32.const 4131)
(set_local $$tobool37$i
(i32.ne
(i32.and
@@ -8944,41 +8852,35 @@
(i32.const 0)
)
)
- (i32.const 4127)
- (i32.const 4131)
- )
- )
- (set_local $$cmp38$i
- (i32.or
- (f64.ne
- (get_local $$y$addr$0$i)
- (get_local $$y$addr$0$i)
- )
- (f64.ne
- (f64.const 0)
- (f64.const 0)
- )
- )
- )
- (set_local $$cond43$i
- (if
- (get_local $$tobool37$i)
- (i32.const 4135)
- (i32.const 4139)
)
)
(set_local $$pl$1$i
- (if
- (get_local $$cmp38$i)
+ (select
(i32.const 0)
(get_local $$pl$0$i)
+ (set_local $$cmp38$i
+ (i32.or
+ (f64.ne
+ (get_local $$y$addr$0$i)
+ (get_local $$y$addr$0$i)
+ )
+ (f64.ne
+ (f64.const 0)
+ (f64.const 0)
+ )
+ )
+ )
)
)
(set_local $$s35$0$i
- (if
- (get_local $$cmp38$i)
- (get_local $$cond43$i)
+ (select
+ (select
+ (i32.const 4135)
+ (i32.const 4139)
+ (get_local $$tobool37$i)
+ )
(get_local $$cond$i)
+ (get_local $$cmp38$i)
)
)
(call $_pad
@@ -9040,13 +8942,13 @@
(i32.const 8192)
)
)
- (if
+ (select
+ (get_local $$w$1)
+ (get_local $$add$i$239)
(i32.lt_s
(get_local $$add$i$239)
(get_local $$w$1)
)
- (get_local $$w$1)
- (get_local $$add$i$239)
)
)
)
@@ -9345,32 +9247,6 @@
(i32.const 0)
)
)
- (set_local $$sub$ptr$sub363
- (i32.sub
- (get_local $$call356)
- (get_local $$a$1)
- )
- )
- (set_local $$add$ptr359
- (i32.add
- (get_local $$a$1)
- (get_local $$p$0)
- )
- )
- (set_local $$z$1
- (if
- (get_local $$tobool357)
- (get_local $$add$ptr359)
- (get_local $$call356)
- )
- )
- (set_local $$p$3
- (if
- (get_local $$tobool357)
- (get_local $$p$0)
- (get_local $$sub$ptr$sub363)
- )
- )
(set_local $$a$2
(get_local $$a$1)
)
@@ -9378,7 +9254,14 @@
(get_local $$and219)
)
(set_local $$p$5
- (get_local $$p$3)
+ (select
+ (get_local $$p$0)
+ (i32.sub
+ (get_local $$call356)
+ (get_local $$a$1)
+ )
+ (get_local $$tobool357)
+ )
)
(set_local $$pl$2
(i32.const 0)
@@ -9387,7 +9270,14 @@
(i32.const 4091)
)
(set_local $$z$2
- (get_local $$z$1)
+ (select
+ (i32.add
+ (get_local $$a$1)
+ (get_local $$p$0)
+ )
+ (get_local $$call356)
+ (get_local $$tobool357)
+ )
)
)
(if
@@ -9658,16 +9548,6 @@
(i32.const 8192)
)
)
- (set_local $$cond426
- (if
- (i32.gt_s
- (get_local $$w$1)
- (get_local $$i$0$lcssa368)
- )
- (get_local $$w$1)
- (get_local $$i$0$lcssa368)
- )
- )
(set_local $$cnt$0
(get_local $$cnt$1)
)
@@ -9675,7 +9555,14 @@
(get_local $$incdec$ptr169$lcssa)
)
(set_local $$l$0
- (get_local $$cond426)
+ (select
+ (get_local $$w$1)
+ (get_local $$i$0$lcssa368)
+ (i32.gt_s
+ (get_local $$w$1)
+ (get_local $$i$0$lcssa368)
+ )
+ )
)
(set_local $$l10n$0
(get_local $$l10n$3)
@@ -9692,20 +9579,17 @@
(set_local $label
(i32.const 0)
)
- (set_local $$and309
- (i32.and
- (get_local $$fl$4)
- (i32.const -65537)
- )
- )
(set_local $$and309$fl$4
- (if
+ (select
+ (i32.and
+ (get_local $$fl$4)
+ (i32.const -65537)
+ )
+ (get_local $$fl$4)
(i32.gt_s
(get_local $$p$2)
(i32.const -1)
)
- (get_local $$and309)
- (get_local $$fl$4)
)
)
(set_local $$a$2
@@ -9735,35 +9619,35 @@
)
)
(block
- (set_local $$p$2$add322
- (if
- (i32.gt_s
- (get_local $$p$2)
- (set_local $$add322
- (i32.add
- (i32.xor
- (i32.and
- (get_local $$159)
- (i32.const 1)
- )
+ (set_local $$cmp323
+ (i32.gt_s
+ (get_local $$p$2)
+ (set_local $$add322
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $$159)
(i32.const 1)
)
- (i32.sub
- (get_local $$sub$ptr$lhs$cast317)
- (get_local $$a$0)
- )
+ (i32.const 1)
+ )
+ (i32.sub
+ (get_local $$sub$ptr$lhs$cast317)
+ (get_local $$a$0)
)
)
)
- (get_local $$p$2)
- (get_local $$add322)
)
)
(set_local $$fl$6
(get_local $$and309$fl$4)
)
(set_local $$p$5
- (get_local $$p$2$add322)
+ (select
+ (get_local $$p$2)
+ (get_local $$add322)
+ (get_local $$cmp323)
+ )
)
(set_local $$pl$2
(get_local $$pl$1)
@@ -9798,40 +9682,44 @@
)
)
)
- (set_local $$sub$ptr$sub433$p$5
- (if
- (i32.lt_s
- (get_local $$p$5)
- (set_local $$sub$ptr$sub433
- (i32.sub
- (get_local $$z$2)
- (get_local $$a$2)
- )
+ (set_local $$cmp434
+ (i32.lt_s
+ (get_local $$p$5)
+ (set_local $$sub$ptr$sub433
+ (i32.sub
+ (get_local $$z$2)
+ (get_local $$a$2)
)
)
- (get_local $$sub$ptr$sub433)
- (get_local $$p$5)
)
)
- (set_local $$w$2
- (if
- (i32.lt_s
- (get_local $$w$1)
- (set_local $$add441
- (i32.add
- (get_local $$pl$2)
- (get_local $$sub$ptr$sub433$p$5)
+ (set_local $$cmp442
+ (i32.lt_s
+ (get_local $$w$1)
+ (set_local $$add441
+ (i32.add
+ (get_local $$pl$2)
+ (set_local $$sub$ptr$sub433$p$5
+ (select
+ (get_local $$sub$ptr$sub433)
+ (get_local $$p$5)
+ (get_local $$cmp434)
+ )
)
)
)
- (get_local $$add441)
- (get_local $$w$1)
)
)
(call $_pad
(get_local $$f)
(i32.const 32)
- (get_local $$w$2)
+ (set_local $$w$2
+ (select
+ (get_local $$add441)
+ (get_local $$w$1)
+ (get_local $$cmp442)
+ )
+ )
(get_local $$add441)
(get_local $$fl$6)
)
@@ -10057,9 +9945,7 @@
(i32.const 8)
(get_local $sp)
)
- (return
- (get_local $$retval$0)
- )
+ (get_local $$retval$0)
)
(func $_pop_arg_336 (param $$arg i32) (param $$type i32) (param $$ap i32)
(local $$13 i32)
@@ -10667,7 +10553,6 @@
)
)
)
- (return)
)
(func $_fmt_u (param $$0 i32) (param $$1 i32) (param $$s i32) (result i32)
(local $$8 i32)
@@ -10881,9 +10766,7 @@
)
)
)
- (return
- (get_local $$s$addr$1$lcssa)
- )
+ (get_local $$s$addr$1$lcssa)
)
(func $_pad (param $$f i32) (param $$c i32) (param $$w i32) (param $$l i32) (param $$fl i32)
(local $$sub i32)
@@ -10899,7 +10782,7 @@
(local $$1 i32)
(local $$2 i32)
(local $$3 i32)
- (local $$cond i32)
+ (local $$cmp1 i32)
(local $$sub5 i32)
(set_local $sp
(i32.load
@@ -10945,25 +10828,25 @@
)
)
(block
- (set_local $$cond
- (if
- (i32.gt_u
- (set_local $$sub
- (i32.sub
- (get_local $$w)
- (get_local $$l)
- )
+ (set_local $$cmp1
+ (i32.gt_u
+ (set_local $$sub
+ (i32.sub
+ (get_local $$w)
+ (get_local $$l)
)
- (i32.const 256)
)
(i32.const 256)
- (get_local $$sub)
)
)
(call $_memset
(get_local $$pad)
(get_local $$c)
- (get_local $$cond)
+ (select
+ (i32.const 256)
+ (get_local $$sub)
+ (get_local $$cmp1)
+ )
)
(set_local $$tobool$i$16
(i32.eq
@@ -11083,7 +10966,6 @@
(i32.const 8)
(get_local $sp)
)
- (return)
)
(func $_malloc (param $$bytes i32) (result i32)
(local $$119 i32)
@@ -11140,7 +11022,6 @@
(local $$RP$1$i i32)
(local $$RP$1$i$167 i32)
(local $$RP$1$i$i i32)
- (local $$add$ptr4$i$37$i i32)
(local $$arrayidx$i$20$i i32)
(local $$arrayidx103 i32)
(local $$arrayidx196$i i32)
@@ -11149,7 +11030,6 @@
(local $$br$2$ph$i i32)
(local $$cond4$i i32)
(local $$rsize$0$i i32)
- (local $$shr i32)
(local $$sub160 i32)
(local $$sub18$i$i i32)
(local $$v$3$i i32)
@@ -11181,6 +11061,8 @@
(local $$T$0$i$lcssa i32)
(local $$add$ptr$i i32)
(local $$add$ptr227$i i32)
+ (local $$add$ptr4$i$26$i i32)
+ (local $$add$ptr4$i$37$i i32)
(local $$add26$i$i i32)
(local $$and80$i i32)
(local $$arrayidx$i$i i32)
@@ -11196,10 +11078,12 @@
(local $$rsize$0$i$152 i32)
(local $$rsize$1$i i32)
(local $$rsize$3$i i32)
+ (local $$shr i32)
(local $$shr3 i32)
(local $$sizebits$0$i i32)
(local $$ssize$5$i i32)
(local $$sub101$rsize$4$i i32)
+ (local $$sub5$i$27$i i32)
(local $$sub91 i32)
(local $$t$0$i i32)
(local $$t$2$i i32)
@@ -11234,7 +11118,6 @@
(local $$add$ptr$i$i$i$lcssa i32)
(local $$add$ptr166 i32)
(local $$add$ptr24$i$i i32)
- (local $$add$ptr4$i$26$i i32)
(local $$add$ptr4$i$i i32)
(local $$add$ptr4$i$i$i i32)
(local $$add$ptr95 i32)
@@ -11255,9 +11138,8 @@
(local $$arrayidx66 i32)
(local $$call132$i i32)
(local $$child$i$i i32)
- (local $$cond$i$25$i i32)
- (local $$cond$i$i i32)
- (local $$cond$i$i$i i32)
+ (local $$cmp102$i i32)
+ (local $$cmp32$i i32)
(local $$fd68$pre$phi$i$iZ2D i32)
(local $$head$i$17$i i32)
(local $$p$0$i$i i32)
@@ -11274,7 +11156,6 @@
(local $$sp$1107$i$lcssa i32)
(local $$sub$i$138 i32)
(local $$sub33$i i32)
- (local $$sub5$i$27$i i32)
(local $$sub5$i$i i32)
(local $$sub5$i$i$i i32)
(local $$v$0$i$153 i32)
@@ -11295,7 +11176,6 @@
(local $$127 i32)
(local $$128 i32)
(local $$129 i32)
- (local $$131 i32)
(local $$132 i32)
(local $$135 i32)
(local $$137 i32)
@@ -11314,7 +11194,6 @@
(local $$174 i32)
(local $$175 i32)
(local $$177 i32)
- (local $$178 i32)
(local $$180 i32)
(local $$183 i32)
(local $$185 i32)
@@ -11324,7 +11203,6 @@
(local $$196 i32)
(local $$197 i32)
(local $$199 i32)
- (local $$200 i32)
(local $$202 i32)
(local $$205 i32)
(local $$207 i32)
@@ -11356,7 +11234,6 @@
(local $$83 i32)
(local $$84 i32)
(local $$86 i32)
- (local $$87 i32)
(local $$89 i32)
(local $$92 i32)
(local $$97 i32)
@@ -11369,7 +11246,6 @@
(local $$add$i$180 i32)
(local $$add$i$i i32)
(local $$add$ptr$i$i$i i32)
- (local $$add$ptr15$i$i i32)
(local $$add$ptr193 i32)
(local $$add$ptr2$i$i i32)
(local $$add$ptr262$i i32)
@@ -11385,20 +11261,14 @@
(local $$add346$i i32)
(local $$add83$i$i i32)
(local $$add9$i i32)
- (local $$and i32)
(local $$and$i$143 i32)
(local $$and12$i i32)
(local $$and13$i i32)
- (local $$and13$i$i i32)
(local $$and17$i i32)
(local $$and209$i$i i32)
(local $$and264$i$i i32)
(local $$and268$i$i i32)
(local $$and273$i$i i32)
- (local $$and3$i$24$i i32)
- (local $$and3$i$35$i i32)
- (local $$and3$i$i i32)
- (local $$and3$i$i$i i32)
(local $$and32$i i32)
(local $$and331$i i32)
(local $$and336$i i32)
@@ -11408,7 +11278,6 @@
(local $$and53 i32)
(local $$and57 i32)
(local $$and6$i i32)
- (local $$and6$i$i i32)
(local $$and61 i32)
(local $$and69$i$i i32)
(local $$and73$i$i i32)
@@ -11456,18 +11325,13 @@
(local $$cmp$i$2$i$i i32)
(local $$cmp$i$23$i i32)
(local $$cmp$i$34$i i32)
- (local $$cmp102$i i32)
- (local $$cmp32$i i32)
+ (local $$cmp45$i$155 i32)
(local $$cmp49$i i32)
(local $$cmp7$i$i i32)
- (local $$cond$i i32)
- (local $$cond$i$16$i i32)
- (local $$cond$i$36$i i32)
- (local $$cond$v$0$i i32)
- (local $$cond115$i$i i32)
- (local $$cond15$i$i i32)
- (local $$cond315$i$i i32)
- (local $$cond383$i i32)
+ (local $$cmp9$i$i i32)
+ (local $$cond$i$25$i i32)
+ (local $$cond$i$i i32)
+ (local $$cond$i$i$i i32)
(local $$fd139$i i32)
(local $$fd148$i$i i32)
(local $$fd344$i$i i32)
@@ -11539,19 +11403,13 @@
(local $$sub i32)
(local $$sub$i$181 i32)
(local $$sub$ptr$sub$i i32)
+ (local $$sub$ptr$sub$i$41$i i32)
(local $$sub101$i i32)
(local $$sub112$i i32)
- (local $$sub113$i$i i32)
- (local $$sub16$i$i i32)
- (local $$sub172$i i32)
(local $$sub190 i32)
(local $$sub2$i i32)
(local $$sub260$i i32)
- (local $$sub30$i i32)
(local $$sub31$i i32)
- (local $$sub31$rsize$0$i i32)
- (local $$sub313$i$i i32)
- (local $$sub381$i i32)
(local $$sub41$i i32)
(local $$sub42 i32)
(local $$sub44 i32)
@@ -11568,30 +11426,6 @@
(i32.const 245)
)
(block
- (set_local $$and
- (i32.and
- (i32.add
- (get_local $$bytes)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- (set_local $$shr
- (i32.shr_u
- (set_local $$cond
- (if
- (i32.lt_u
- (get_local $$bytes)
- (i32.const 11)
- )
- (i32.const 16)
- (get_local $$and)
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.ne
(i32.and
@@ -11602,7 +11436,27 @@
(i32.const 176)
)
)
- (get_local $$shr)
+ (set_local $$shr
+ (i32.shr_u
+ (set_local $$cond
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $$bytes)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $$bytes)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -12287,43 +12141,38 @@
(get_local $$22)
)
)
- (set_local $$sub31$rsize$0$i
- (if
- (set_local $$cmp32$i
- (i32.lt_u
- (set_local $$sub31$i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $$cond4$i)
- )
- (i32.const -8)
- )
- (get_local $$cond)
+ (set_local $$cmp32$i
+ (i32.lt_u
+ (set_local $$sub31$i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $$cond4$i)
)
+ (i32.const -8)
)
- (get_local $$rsize$0$i)
+ (get_local $$cond)
)
)
- (get_local $$sub31$i)
(get_local $$rsize$0$i)
)
)
- (set_local $$cond$v$0$i
- (if
+ (set_local $$rsize$0$i
+ (select
+ (get_local $$sub31$i)
+ (get_local $$rsize$0$i)
(get_local $$cmp32$i)
- (get_local $$cond4$i)
- (get_local $$v$0$i)
)
)
- (set_local $$rsize$0$i
- (get_local $$sub31$rsize$0$i)
- )
(set_local $$t$0$i
(get_local $$cond4$i)
)
(set_local $$v$0$i
- (get_local $$cond$v$0$i)
+ (select
+ (get_local $$cond4$i)
+ (get_local $$v$0$i)
+ (get_local $$cmp32$i)
+ )
)
(br $while-in$7)
)
@@ -13087,25 +12936,6 @@
)
)
(block
- (set_local $$sub30$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$idx$0$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond$i
- (if
- (i32.eq
- (get_local $$idx$0$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub30$i)
- )
- )
(set_local $$rsize$0$i$152
(get_local $$sub$i$138)
)
@@ -13115,7 +12945,20 @@
(set_local $$sizebits$0$i
(i32.shl
(get_local $$and145)
- (get_local $$cond$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$idx$0$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$idx$0$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$t$0$i$151
@@ -13180,17 +13023,22 @@
)
)
)
+ (set_local $$cmp45$i$155
+ (i32.eq
+ (set_local $$54
+ (i32.load offset=20
+ (get_local $$t$0$i$151)
+ )
+ )
+ (i32.const 0)
+ )
+ )
(set_local $$rst$1$i
- (if
+ (select
+ (get_local $$rst$0$i)
+ (get_local $$54)
(i32.or
- (i32.eq
- (set_local $$54
- (i32.load offset=20
- (get_local $$t$0$i$151)
- )
- )
- (i32.const 0)
- )
+ (get_local $$cmp45$i$155)
(i32.eq
(get_local $$54)
(set_local $$55
@@ -13212,8 +13060,6 @@
)
)
)
- (get_local $$rst$0$i)
- (get_local $$54)
)
)
(set_local $$sizebits$0$shl52$i
@@ -13459,33 +13305,34 @@
(set_local $label
(i32.const 0)
)
- (set_local $$sub101$rsize$4$i
- (if
- (set_local $$cmp102$i
- (i32.lt_u
- (set_local $$sub101$i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $$t$48$i)
- )
- (i32.const -8)
- )
- (get_local $$and145)
+ (set_local $$cmp102$i
+ (i32.lt_u
+ (set_local $$sub101$i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $$t$48$i)
)
+ (i32.const -8)
)
- (get_local $$rsize$49$i)
+ (get_local $$and145)
)
)
+ (get_local $$rsize$49$i)
+ )
+ )
+ (set_local $$sub101$rsize$4$i
+ (select
(get_local $$sub101$i)
(get_local $$rsize$49$i)
+ (get_local $$cmp102$i)
)
)
(set_local $$t$4$v$4$i
- (if
- (get_local $$cmp102$i)
+ (select
(get_local $$t$48$i)
(get_local $$v$410$i)
+ (get_local $$cmp102$i)
)
)
(if
@@ -14301,38 +14148,29 @@
(br $do-once$29)
)
)
- (set_local $$87
- (i32.load
- (get_local $$arrayidx355$i)
- )
- )
- (set_local $$sub381$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I316$0$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond383$i
- (if
- (i32.eq
- (get_local $$I316$0$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub381$i)
- )
- )
(set_local $$K373$0$i
(i32.shl
(get_local $$rsize$4$lcssa$i)
- (get_local $$cond383$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I316$0$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I316$0$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i
- (get_local $$87)
+ (i32.load
+ (get_local $$arrayidx355$i)
+ )
)
(loop $while-out$31 $while-in$32
(if
@@ -15405,12 +15243,6 @@
)
(br $while-in$47)
)
- (set_local $$sub172$i
- (i32.add
- (get_local $$tsize$795$i)
- (i32.const -40)
- )
- )
(set_local $$cmp$i$13$i
(i32.eq
(i32.and
@@ -15425,28 +15257,24 @@
(i32.const 0)
)
)
- (set_local $$and3$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$124)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$i
- (if
- (get_local $$cmp$i$13$i)
- (i32.const 0)
- (get_local $$and3$i$i)
- )
- )
(i32.store
(i32.const 200)
(set_local $$add$ptr4$i$i
(i32.add
(get_local $$tbase$796$i)
- (get_local $$cond$i$i)
+ (set_local $$cond$i$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$124)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$13$i)
+ )
+ )
)
)
)
@@ -15454,7 +15282,10 @@
(i32.const 188)
(set_local $$sub5$i$i
(i32.sub
- (get_local $$sub172$i)
+ (i32.add
+ (get_local $$tsize$795$i)
+ (i32.const -40)
+ )
(get_local $$cond$i$i)
)
)
@@ -15575,11 +15406,6 @@
(get_local $$tsize$795$i)
)
)
- (set_local $$131
- (i32.load
- (i32.const 188)
- )
- )
(set_local $$cmp$i$23$i
(i32.eq
(i32.and
@@ -15594,42 +15420,42 @@
(i32.const 0)
)
)
- (set_local $$and3$i$24$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$132)
+ (set_local $$add$ptr4$i$26$i
+ (i32.add
+ (get_local $$119)
+ (set_local $$cond$i$25$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$132)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$23$i)
+ )
)
- (i32.const 7)
)
)
- (set_local $$cond$i$25$i
- (if
- (get_local $$cmp$i$23$i)
- (i32.const 0)
- (get_local $$and3$i$24$i)
+ (set_local $$sub5$i$27$i
+ (i32.add
+ (i32.sub
+ (get_local $$tsize$795$i)
+ (get_local $$cond$i$25$i)
+ )
+ (i32.load
+ (i32.const 188)
+ )
)
)
(i32.store
(i32.const 200)
- (set_local $$add$ptr4$i$26$i
- (i32.add
- (get_local $$119)
- (get_local $$cond$i$25$i)
- )
- )
+ (get_local $$add$ptr4$i$26$i)
)
(i32.store
(i32.const 188)
- (set_local $$sub5$i$27$i
- (i32.add
- (i32.sub
- (get_local $$tsize$795$i)
- (get_local $$cond$i$25$i)
- )
- (get_local $$131)
- )
- )
+ (get_local $$sub5$i$27$i)
)
(i32.store offset=4
(get_local $$add$ptr4$i$26$i)
@@ -15778,28 +15604,6 @@
(i32.const 0)
)
)
- (set_local $$and3$i$35$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$140)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$36$i
- (if
- (get_local $$cmp$i$34$i)
- (i32.const 0)
- (get_local $$and3$i$35$i)
- )
- )
- (set_local $$add$ptr4$i$37$i
- (i32.add
- (get_local $$tbase$796$i)
- (get_local $$cond$i$36$i)
- )
- )
(set_local $$cmp7$i$i
(i32.eq
(i32.and
@@ -15814,20 +15618,40 @@
(i32.const 0)
)
)
- (set_local $$and13$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$142)
+ (set_local $$sub$ptr$sub$i$41$i
+ (i32.sub
+ (set_local $$add$ptr16$i$i
+ (i32.add
+ (get_local $$add$ptr227$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$142)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp7$i$i)
+ )
+ )
+ )
+ (set_local $$add$ptr4$i$37$i
+ (i32.add
+ (get_local $$tbase$796$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$140)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$34$i)
+ )
+ )
)
- (i32.const 7)
- )
- )
- (set_local $$cond15$i$i
- (if
- (get_local $$cmp7$i$i)
- (i32.const 0)
- (get_local $$and13$i$i)
)
)
(set_local $$add$ptr17$i$i
@@ -15838,15 +15662,7 @@
)
(set_local $$sub18$i$i
(i32.sub
- (i32.sub
- (set_local $$add$ptr16$i$i
- (i32.add
- (get_local $$add$ptr227$i)
- (get_local $$cond15$i$i)
- )
- )
- (get_local $$add$ptr4$i$37$i)
- )
+ (get_local $$sub$ptr$sub$i$41$i)
(get_local $$nb$0)
)
)
@@ -16792,38 +16608,29 @@
(br $do-once$52)
)
)
- (set_local $$178
- (i32.load
- (get_local $$arrayidx287$i$i)
- )
- )
- (set_local $$sub313$i$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I252$0$i$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond315$i$i
- (if
- (i32.eq
- (get_local $$I252$0$i$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub313$i$i)
- )
- )
(set_local $$K305$0$i$i
(i32.shl
(get_local $$qsize$0$i$i)
- (get_local $$cond315$i$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I252$0$i$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I252$0$i$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i$58$i
- (get_local $$178)
+ (i32.load
+ (get_local $$arrayidx287$i$i)
+ )
)
(loop $while-out$71 $while-in$72
(if
@@ -17056,59 +16863,44 @@
(i32.const 0)
)
)
- (set_local $$and6$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$188)
+ (set_local $$cmp9$i$i
+ (i32.lt_u
+ (set_local $$add$ptr7$i$i
+ (i32.add
+ (get_local $$add$ptr2$i$i)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$188)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$15$i)
+ )
+ )
+ )
+ (set_local $$add$ptr8$i122$i
+ (i32.add
+ (get_local $$119)
+ (i32.const 16)
+ )
)
- (i32.const 7)
- )
- )
- (set_local $$cond$i$16$i
- (if
- (get_local $$cmp$i$15$i)
- (i32.const 0)
- (get_local $$and6$i$i)
)
)
(set_local $$add$ptr14$i$i
(i32.add
(set_local $$cond13$i$i
- (if
- (i32.lt_u
- (set_local $$add$ptr7$i$i
- (i32.add
- (get_local $$add$ptr2$i$i)
- (get_local $$cond$i$16$i)
- )
- )
- (set_local $$add$ptr8$i122$i
- (i32.add
- (get_local $$119)
- (i32.const 16)
- )
- )
- )
+ (select
(get_local $$119)
(get_local $$add$ptr7$i$i)
+ (get_local $$cmp9$i$i)
)
)
(i32.const 8)
)
)
- (set_local $$add$ptr15$i$i
- (i32.add
- (get_local $$cond13$i$i)
- (i32.const 24)
- )
- )
- (set_local $$sub16$i$i
- (i32.add
- (get_local $$tsize$795$i)
- (i32.const -40)
- )
- )
(set_local $$cmp$i$2$i$i
(i32.eq
(i32.and
@@ -17123,28 +16915,24 @@
(i32.const 0)
)
)
- (set_local $$and3$i$i$i
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $$190)
- )
- (i32.const 7)
- )
- )
- (set_local $$cond$i$i$i
- (if
- (get_local $$cmp$i$2$i$i)
- (i32.const 0)
- (get_local $$and3$i$i$i)
- )
- )
(i32.store
(i32.const 200)
(set_local $$add$ptr4$i$i$i
(i32.add
(get_local $$tbase$796$i)
- (get_local $$cond$i$i$i)
+ (set_local $$cond$i$i$i
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $$190)
+ )
+ (i32.const 7)
+ )
+ (get_local $$cmp$i$2$i$i)
+ )
+ )
)
)
)
@@ -17152,7 +16940,10 @@
(i32.const 188)
(set_local $$sub5$i$i$i
(i32.sub
- (get_local $$sub16$i$i)
+ (i32.add
+ (get_local $$tsize$795$i)
+ (i32.const -40)
+ )
(get_local $$cond$i$i$i)
)
)
@@ -17227,7 +17018,10 @@
(get_local $$add$ptr14$i$i)
)
(set_local $$p$0$i$i
- (get_local $$add$ptr15$i$i)
+ (i32.add
+ (get_local $$cond13$i$i)
+ (i32.const 24)
+ )
)
(loop $while-out$75 $while-in$76
(i32.store
@@ -17559,38 +17353,29 @@
(br $do-once$44)
)
)
- (set_local $$200
- (i32.load
- (get_local $$arrayidx91$i$i)
- )
- )
- (set_local $$sub113$i$i
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I57$0$i$i)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond115$i$i
- (if
- (i32.eq
- (get_local $$I57$0$i$i)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub113$i$i)
- )
- )
(set_local $$K105$0$i$i
(i32.shl
(get_local $$sub$ptr$sub$i$i)
- (get_local $$cond115$i$i)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I57$0$i$i)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I57$0$i$i)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0$i$i
- (get_local $$200)
+ (i32.load
+ (get_local $$arrayidx91$i$i)
+ )
)
(loop $while-out$77 $while-in$78
(if
@@ -17817,9 +17602,7 @@
(call $___errno_location)
(i32.const 12)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_free (param $$mem i32)
(local $$p$1 i32)
@@ -17895,7 +17678,6 @@
(local $$63 i32)
(local $$64 i32)
(local $$66 i32)
- (local $$67 i32)
(local $$69 i32)
(local $$72 i32)
(local $$R$1$lcssa i32)
@@ -17925,7 +17707,6 @@
(local $$child171 i32)
(local $$child443 i32)
(local $$cmp$i i32)
- (local $$cond i32)
(local $$dec i32)
(local $$fd311 i32)
(local $$fd347 i32)
@@ -17942,7 +17723,6 @@
(local $$shl573 i32)
(local $$shl600 i32)
(local $$sp$0$i i32)
- (local $$sub589 i32)
(i32.load
(i32.const 8)
)
@@ -19645,38 +19425,29 @@
)
)
(block
- (set_local $$67
- (i32.load
- (get_local $$arrayidx567)
- )
- )
- (set_local $$sub589
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $$I534$0)
- (i32.const 1)
- )
- )
- )
- (set_local $$cond
- (if
- (i32.eq
- (get_local $$I534$0)
- (i32.const 31)
- )
- (i32.const 0)
- (get_local $$sub589)
- )
- )
(set_local $$K583$0
(i32.shl
(get_local $$psize$2)
- (get_local $$cond)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $$I534$0)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $$I534$0)
+ (i32.const 31)
+ )
+ )
)
)
(set_local $$T$0
- (get_local $$67)
+ (i32.load
+ (get_local $$arrayidx567)
+ )
)
(loop $while-out$18 $while-in$19
(if
@@ -19891,7 +19662,6 @@
(i32.const 208)
(i32.const -1)
)
- (return)
)
(func $runPostSets
(nop)
@@ -19901,53 +19671,45 @@
(get_local $b)
(get_local $d)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.sub
- (i32.sub
- (get_local $b)
- (get_local $d)
- )
- (i32.gt_u
- (get_local $c)
- (get_local $a)
- )
- )
- )
+ (i32.store
+ (i32.const 168)
+ (i32.sub
(i32.sub
- (get_local $a)
+ (get_local $b)
+ (get_local $d)
+ )
+ (i32.gt_u
(get_local $c)
+ (get_local $a)
)
)
)
+ (i32.sub
+ (get_local $a)
+ (get_local $c)
+ )
)
(func $_i64Add (param $a i32) (param $b i32) (param $c i32) (param $d i32) (result i32)
(local $l i32)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.add
+ (i32.store
+ (i32.const 168)
+ (i32.add
+ (i32.add
+ (get_local $b)
+ (get_local $d)
+ )
+ (i32.lt_u
+ (set_local $l
(i32.add
- (get_local $b)
- (get_local $d)
- )
- (i32.lt_u
- (set_local $l
- (i32.add
- (get_local $a)
- (get_local $c)
- )
- )
(get_local $a)
+ (get_local $c)
)
)
+ (get_local $a)
)
- (get_local $l)
)
)
+ (get_local $l)
)
(func $_memset (param $ptr i32) (param $value i32) (param $num i32) (result i32)
(local $unaligned i32)
@@ -20079,11 +19841,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $ptr)
- (get_local $num)
- )
+ (i32.sub
+ (get_local $ptr)
+ (get_local $num)
)
)
(func $_bitshift64Lshr (param $low i32) (param $high i32) (param $bits i32) (result i32)
@@ -20130,13 +19890,11 @@
(i32.const 168)
(i32.const 0)
)
- (return
- (i32.shr_u
- (get_local $high)
- (i32.sub
- (get_local $bits)
- (i32.const 32)
- )
+ (i32.shr_u
+ (get_local $high)
+ (i32.sub
+ (get_local $bits)
+ (i32.const 32)
)
)
)
@@ -20196,9 +19954,7 @@
)
)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $_memcpy (param $dest i32) (param $src i32) (param $num i32) (result i32)
(local $ret i32)
@@ -20342,9 +20098,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $ret)
- )
+ (get_local $ret)
)
(func $_bitshift64Ashr (param $low i32) (param $high i32) (param $bits i32) (result i32)
(if
@@ -20388,22 +20142,20 @@
)
(i32.store
(i32.const 168)
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $high)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
)
- (return
- (i32.shr_s
- (get_local $high)
- (i32.sub
- (get_local $bits)
- (i32.const 32)
- )
+ (i32.shr_s
+ (get_local $high)
+ (i32.sub
+ (get_local $bits)
+ (i32.const 32)
)
)
)
@@ -20458,48 +20210,44 @@
(get_local $$1)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.add
- (i32.add
- (i32.shr_u
- (get_local $$8)
- (i32.const 16)
- )
- (i32.mul
- (get_local $$11)
- (get_local $$6)
- )
- )
- (i32.shr_u
- (i32.add
- (i32.and
- (get_local $$8)
- (i32.const 65535)
- )
- (get_local $$12)
- )
- (i32.const 16)
- )
+ (i32.store
+ (i32.const 168)
+ (i32.add
+ (i32.add
+ (i32.shr_u
+ (get_local $$8)
+ (i32.const 16)
+ )
+ (i32.mul
+ (get_local $$11)
+ (get_local $$6)
)
)
- (i32.or
- (i32.const 0)
- (i32.or
- (i32.shl
- (i32.add
- (get_local $$8)
- (get_local $$12)
- )
- (i32.const 16)
- )
+ (i32.shr_u
+ (i32.add
(i32.and
- (get_local $$3)
+ (get_local $$8)
(i32.const 65535)
)
+ (get_local $$12)
)
+ (i32.const 16)
+ )
+ )
+ )
+ (i32.or
+ (i32.const 0)
+ (i32.or
+ (i32.shl
+ (i32.add
+ (get_local $$8)
+ (get_local $$12)
+ )
+ (i32.const 16)
+ )
+ (i32.and
+ (get_local $$3)
+ (i32.const 65535)
)
)
)
@@ -20511,162 +20259,156 @@
(local $$2$1 i32)
(local $$7$0 i32)
(local $$7$1 i32)
- (set_local $$1$0
- (i32.or
- (i32.shr_s
- (get_local $$a$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
+ (call $_i64Subtract
+ (i32.xor
+ (call $___udivmoddi4
+ (call $_i64Subtract
+ (i32.xor
+ (set_local $$1$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$a$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (get_local $$a$0)
)
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$1$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
+ (i32.xor
+ (set_local $$1$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$1)
- (i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
+ (get_local $$1$0)
+ (get_local $$1$1)
)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
+ (i32.load
+ (i32.const 168)
)
- (i32.const 1)
- )
- )
- )
- (set_local $$2$0
- (i32.or
- (i32.shr_s
- (get_local $$b$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
+ (call $_i64Subtract
+ (i32.xor
+ (set_local $$2$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$b$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (get_local $$b$0)
)
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
+ (i32.xor
+ (set_local $$2$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$1)
- (i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
+ (get_local $$2$0)
+ (get_local $$2$1)
)
- (i32.const 31)
+ (i32.load
+ (i32.const 168)
+ )
+ (i32.const 0)
)
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
+ (set_local $$7$0
+ (i32.xor
+ (get_local $$2$0)
+ (get_local $$1$0)
)
- (i32.const 1)
)
)
- )
- (return
- (call $_i64Subtract
- (i32.xor
- (call $___udivmoddi4
- (call $_i64Subtract
- (i32.xor
- (get_local $$1$0)
- (get_local $$a$0)
- )
- (i32.xor
- (get_local $$1$1)
- (get_local $$a$1)
- )
- (get_local $$1$0)
- (get_local $$1$1)
- )
- (i32.load
- (i32.const 168)
- )
- (call $_i64Subtract
- (i32.xor
- (get_local $$2$0)
- (get_local $$b$0)
- )
- (i32.xor
- (get_local $$2$1)
- (get_local $$b$1)
- )
- (get_local $$2$0)
- (get_local $$2$1)
- )
- (i32.load
- (i32.const 168)
- )
- (i32.const 0)
- )
- (set_local $$7$0
- (i32.xor
- (get_local $$2$0)
- (get_local $$1$0)
- )
- )
+ (i32.xor
+ (i32.load
+ (i32.const 168)
)
- (i32.xor
- (i32.load
- (i32.const 168)
- )
- (set_local $$7$1
- (i32.xor
- (get_local $$2$1)
- (get_local $$1$1)
- )
+ (set_local $$7$1
+ (i32.xor
+ (get_local $$2$1)
+ (get_local $$1$1)
)
)
- (get_local $$7$0)
- (get_local $$7$1)
)
+ (get_local $$7$0)
+ (get_local $$7$1)
)
)
(func $___remdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
(local $$1$0 i32)
(local $$1$1 i32)
(local $$rem i32)
+ (local $__stackBase__ i32)
(local $$2$0 i32)
(local $$2$1 i32)
- (local $__stackBase__ i32)
(local $$10$0 i32)
(local $$10$1 i32)
(set_local $__stackBase__
@@ -20683,107 +20425,57 @@
(i32.const 16)
)
)
- (set_local $$rem
- (get_local $__stackBase__)
- )
- (set_local $$1$0
- (i32.or
- (i32.shr_s
- (get_local $$a$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$1$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$a$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$0
- (i32.or
- (i32.shr_s
- (get_local $$b$1)
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
- (set_local $$2$1
- (i32.or
- (i32.shr_s
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.shl
- (if
- (i32.lt_s
- (get_local $$b$1)
- (i32.const 0)
- )
- (i32.const -1)
- (i32.const 0)
- )
- (i32.const 1)
- )
- )
- )
(call $___udivmoddi4
(call $_i64Subtract
(i32.xor
- (get_local $$1$0)
+ (set_local $$1$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$a$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$0)
)
(i32.xor
- (get_local $$1$1)
+ (set_local $$1$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$a$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$a$1)
)
(get_local $$1$0)
@@ -20794,11 +20486,54 @@
)
(call $_i64Subtract
(i32.xor
- (get_local $$2$0)
+ (set_local $$2$0
+ (i32.or
+ (i32.shr_s
+ (get_local $$b$1)
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$0)
)
(i32.xor
- (get_local $$2$1)
+ (set_local $$2$1
+ (i32.or
+ (i32.shr_s
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 31)
+ )
+ (i32.shl
+ (select
+ (i32.const -1)
+ (i32.const 0)
+ (i32.lt_s
+ (get_local $$b$1)
+ (i32.const 0)
+ )
+ )
+ (i32.const 1)
+ )
+ )
+ )
(get_local $$b$1)
)
(get_local $$2$0)
@@ -20807,7 +20542,9 @@
(i32.load
(i32.const 168)
)
- (get_local $$rem)
+ (set_local $$rem
+ (get_local $__stackBase__)
+ )
)
(set_local $$10$0
(call $_i64Subtract
@@ -20836,15 +20573,11 @@
(i32.const 8)
(get_local $__stackBase__)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (get_local $$10$1)
- )
- (get_local $$10$0)
- )
+ (i32.store
+ (i32.const 168)
+ (get_local $$10$1)
)
+ (get_local $$10$0)
)
(func $___muldi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
(local $$x_sroa_0_0_extract_trunc i32)
@@ -20861,53 +20594,47 @@
)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.or
- (i32.add
- (i32.add
- (i32.mul
- (get_local $$b$1)
- (get_local $$x_sroa_0_0_extract_trunc)
- )
- (i32.mul
- (get_local $$a$1)
- (get_local $$y_sroa_0_0_extract_trunc)
- )
- )
- (set_local $$1$1
- (i32.load
- (i32.const 168)
- )
- )
+ (i32.store
+ (i32.const 168)
+ (i32.or
+ (i32.add
+ (i32.add
+ (i32.mul
+ (get_local $$b$1)
+ (get_local $$x_sroa_0_0_extract_trunc)
)
- (i32.and
- (get_local $$1$1)
- (i32.const 0)
+ (i32.mul
+ (get_local $$a$1)
+ (get_local $$y_sroa_0_0_extract_trunc)
+ )
+ )
+ (set_local $$1$1
+ (i32.load
+ (i32.const 168)
)
)
)
- (i32.or
+ (i32.and
+ (get_local $$1$1)
(i32.const 0)
- (i32.and
- (get_local $$1$0)
- (i32.const -1)
- )
)
)
)
+ (i32.or
+ (i32.const 0)
+ (i32.and
+ (get_local $$1$0)
+ (i32.const -1)
+ )
+ )
)
(func $___udivdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
- (return
- (call $___udivmoddi4
- (get_local $$a$0)
- (get_local $$a$1)
- (get_local $$b$0)
- (get_local $$b$1)
- (i32.const 0)
- )
+ (call $___udivmoddi4
+ (get_local $$a$0)
+ (get_local $$a$1)
+ (get_local $$b$0)
+ (get_local $$b$1)
+ (i32.const 0)
)
)
(func $___uremdi3 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (result i32)
@@ -20940,19 +20667,15 @@
(i32.const 8)
(get_local $__stackBase__)
)
- (return
- (block
- (i32.store
- (i32.const 168)
- (i32.load offset=4
- (get_local $$rem)
- )
- )
- (i32.load
- (get_local $$rem)
- )
+ (i32.store
+ (i32.const 168)
+ (i32.load offset=4
+ (get_local $$rem)
)
)
+ (i32.load
+ (get_local $$rem)
+ )
)
(func $___udivmoddi4 (param $$a$0 i32) (param $$a$1 i32) (param $$b$0 i32) (param $$b$1 i32) (param $$rem i32) (result i32)
(local $$n_sroa_1_4_extract_trunc i32)
@@ -21849,13 +21572,13 @@
(i32.const 31)
)
(i32.shl
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 1)
)
@@ -21875,24 +21598,24 @@
(i32.and
(i32.or
(i32.shr_s
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 31)
)
(i32.shl
- (if
+ (select
+ (i32.const -1)
+ (i32.const 0)
(i32.lt_s
(get_local $$150$1)
(i32.const 0)
)
- (i32.const -1)
- (i32.const 0)
)
(i32.const 1)
)
@@ -21989,89 +21712,81 @@
)
)
)
- (return
- (block
- (i32.store
- (i32.const 168)
+ (i32.store
+ (i32.const 168)
+ (i32.or
+ (i32.or
(i32.or
- (i32.or
+ (i32.shr_u
(i32.or
- (i32.shr_u
- (i32.or
- (i32.const 0)
- (get_local $$q_sroa_0_0_insert_ext75$0)
- )
- (i32.const 31)
- )
- (i32.shl
- (get_local $$q_sroa_0_0_insert_insert77$1)
- (i32.const 1)
- )
- )
- (i32.and
- (i32.or
- (i32.shl
- (get_local $$q_sroa_0_0_insert_ext75$1)
- (i32.const 1)
- )
- (i32.shr_u
- (get_local $$q_sroa_0_0_insert_ext75$0)
- (i32.const 31)
- )
- )
(i32.const 0)
+ (get_local $$q_sroa_0_0_insert_ext75$0)
)
+ (i32.const 31)
+ )
+ (i32.shl
+ (get_local $$q_sroa_0_0_insert_insert77$1)
+ (i32.const 1)
)
- (get_local $$carry_0_lcssa$1)
)
- )
- (i32.or
(i32.and
(i32.or
(i32.shl
- (get_local $$q_sroa_0_0_insert_ext75$0)
+ (get_local $$q_sroa_0_0_insert_ext75$1)
(i32.const 1)
)
(i32.shr_u
- (i32.const 0)
+ (get_local $$q_sroa_0_0_insert_ext75$0)
(i32.const 31)
)
)
- (i32.const -2)
+ (i32.const 0)
)
- (get_local $$carry_0_lcssa$0)
)
+ (get_local $$carry_0_lcssa$1)
)
)
- )
- (func $dynCall_ii (param $index i32) (param $a1 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $index)
+ (i32.or
+ (i32.and
+ (i32.or
+ (i32.shl
+ (get_local $$q_sroa_0_0_insert_ext75$0)
(i32.const 1)
)
- (i32.const 0)
+ (i32.shr_u
+ (i32.const 0)
+ (i32.const 31)
+ )
)
- (get_local $a1)
+ (i32.const -2)
)
+ (get_local $$carry_0_lcssa$0)
+ )
+ )
+ (func $dynCall_ii (param $index i32) (param $a1 i32) (result i32)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $index)
+ (i32.const 1)
+ )
+ (i32.const 0)
+ )
+ (get_local $a1)
)
)
(func $dynCall_iiii (param $index i32) (param $a1 i32) (param $a2 i32) (param $a3 i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $index)
- (i32.const 7)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $index)
+ (i32.const 7)
)
- (get_local $a1)
- (get_local $a2)
- (get_local $a3)
+ (i32.const 2)
)
+ (get_local $a1)
+ (get_local $a2)
+ (get_local $a3)
)
)
(func $dynCall_vi (param $index i32) (param $a1 i32)
@@ -22090,17 +21805,13 @@
(call_import $nullFunc_ii
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $b1 (param $p0 i32) (param $p1 i32) (param $p2 i32) (result i32)
(call_import $nullFunc_iiii
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $b2 (param $p0 i32)
(call_import $nullFunc_vi
diff --git a/test/hello_world.fromasm b/test/hello_world.fromasm
index 435e41a60..61f6aa452 100644
--- a/test/hello_world.fromasm
+++ b/test/hello_world.fromasm
@@ -3,11 +3,9 @@
(export "memory" memory)
(export "add" $add)
(func $add (param $x i32) (param $y i32) (result i32)
- (return
- (i32.add
- (get_local $x)
- (get_local $y)
- )
+ (i32.add
+ (get_local $x)
+ (get_local $y)
)
)
)
diff --git a/test/hello_world.fromasm.imprecise b/test/hello_world.fromasm.imprecise
index 435e41a60..61f6aa452 100644
--- a/test/hello_world.fromasm.imprecise
+++ b/test/hello_world.fromasm.imprecise
@@ -3,11 +3,9 @@
(export "memory" memory)
(export "add" $add)
(func $add (param $x i32) (param $y i32) (result i32)
- (return
- (i32.add
- (get_local $x)
- (get_local $y)
- )
+ (i32.add
+ (get_local $x)
+ (get_local $y)
)
)
)
diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm
index 4be639994..2927c2f6e 100644
--- a/test/memorygrowth.fromasm
+++ b/test/memorygrowth.fromasm
@@ -49,12 +49,12 @@
(local $q i32)
(local $V i32)
(local $ja i32)
- (local $c i32)
(local $aa i32)
(local $d i32)
+ (local $c i32)
(local $g i32)
- (local $la i32)
(local $f i32)
+ (local $la i32)
(local $N i32)
(local $t i32)
(local $o i32)
@@ -156,27 +156,6 @@
(i32.const 245)
)
(block
- (set_local $e
- (i32.shr_u
- (set_local $d
- (if
- (i32.lt_u
- (get_local $a)
- (i32.const 11)
- )
- (i32.const 16)
- (i32.and
- (i32.add
- (get_local $a)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.and
(set_local $g
@@ -186,7 +165,27 @@
(i32.const 1208)
)
)
- (get_local $e)
+ (set_local $e
+ (i32.shr_u
+ (set_local $d
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $a)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $a)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -850,36 +849,37 @@
)
)
)
- (set_local $e
- (if
- (set_local $f
- (i32.lt_u
- (set_local $j
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $B)
- )
- (i32.const -8)
- )
- (get_local $d)
+ (set_local $f
+ (i32.lt_u
+ (set_local $j
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $B)
)
+ (i32.const -8)
)
- (get_local $e)
+ (get_local $d)
)
)
+ (get_local $e)
+ )
+ )
+ (set_local $e
+ (select
(get_local $j)
(get_local $e)
+ (get_local $f)
)
)
(set_local $g
(get_local $B)
)
(set_local $s
- (if
- (get_local $f)
+ (select
(get_local $B)
(get_local $s)
+ (get_local $f)
)
)
(br $while-in$7)
@@ -1600,11 +1600,7 @@
(set_local $s
(i32.shl
(get_local $e)
- (if
- (i32.eq
- (get_local $J)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -1613,6 +1609,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $J)
+ (i32.const 31)
+ )
)
)
)
@@ -1679,14 +1679,16 @@
)
)
(set_local $m
- (if
+ (select
+ (get_local $j)
+ (set_local $l
+ (i32.load offset=20
+ (get_local $o)
+ )
+ )
(i32.or
(i32.eq
- (set_local $l
- (i32.load offset=20
- (get_local $o)
- )
- )
+ (get_local $l)
(i32.const 0)
)
(i32.eq
@@ -1710,8 +1712,6 @@
)
)
)
- (get_local $j)
- (get_local $l)
)
)
(if
@@ -1961,33 +1961,34 @@
(set_local $N
(i32.const 0)
)
- (set_local $g
- (if
- (set_local $s
- (i32.lt_u
- (set_local $i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $P)
- )
- (i32.const -8)
- )
- (get_local $e)
+ (set_local $s
+ (i32.lt_u
+ (set_local $i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $P)
)
+ (i32.const -8)
)
- (get_local $O)
+ (get_local $e)
)
)
+ (get_local $O)
+ )
+ )
+ (set_local $g
+ (select
(get_local $i)
(get_local $O)
+ (get_local $s)
)
)
(set_local $i
- (if
- (get_local $s)
+ (select
(get_local $P)
(get_local $Q)
+ (get_local $s)
)
)
(if
@@ -2753,11 +2754,7 @@
(set_local $q
(i32.shl
(get_local $U)
- (if
- (i32.eq
- (get_local $ba)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -2766,6 +2763,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $ba)
+ (i32.const 31)
+ )
)
)
)
@@ -3831,27 +3832,32 @@
(get_local $ia)
)
)
- (set_local $ca
- (if
- (i32.eq
- (i32.and
- (set_local $ka
- (i32.add
- (get_local $ja)
- (i32.const 8)
+ (set_local $ka
+ (i32.add
+ (get_local $ja)
+ (set_local $ca
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ka
+ (i32.add
+ (get_local $ja)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ka)
+ (i32.const 7)
+ )
+ (i32.const 0)
)
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ka)
)
- (i32.const 7)
)
)
)
@@ -3868,12 +3874,7 @@
)
(i32.store
(i32.const 1232)
- (set_local $ka
- (i32.add
- (get_local $ja)
- (get_local $ca)
- )
- )
+ (get_local $ka)
)
(i32.store
(i32.const 1220)
@@ -4008,26 +4009,26 @@
(set_local $ca
(i32.add
(get_local $ha)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $ka
(i32.add
(get_local $ha)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $ka)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4035,26 +4036,26 @@
(set_local $ma
(i32.add
(get_local $c)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $ka
(i32.add
(get_local $c)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $ka)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4985,11 +4986,7 @@
(set_local $aa
(i32.shl
(get_local $Ea)
- (if
- (i32.eq
- (get_local $Ha)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -4998,6 +4995,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $Ha)
+ (i32.const 31)
+ )
)
)
)
@@ -5227,30 +5228,32 @@
(set_local $ka
(i32.add
(set_local $ca
- (if
- (i32.lt_u
- (set_local $ka
- (i32.add
- (get_local $ca)
- (if
- (i32.eq
- (i32.and
- (get_local $ea)
- (i32.const 7)
- )
+ (select
+ (get_local $ja)
+ (set_local $ka
+ (i32.add
+ (get_local $ca)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
(i32.const 0)
+ (get_local $ea)
)
- (i32.const 0)
+ (i32.const 7)
+ )
+ (i32.eq
(i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ea)
- )
+ (get_local $ea)
(i32.const 7)
)
+ (i32.const 0)
)
)
)
+ )
+ (i32.lt_u
+ (get_local $ka)
(set_local $ea
(i32.add
(get_local $ja)
@@ -5258,43 +5261,40 @@
)
)
)
- (get_local $ja)
- (get_local $ka)
)
)
(i32.const 8)
)
)
- (set_local $c
- (if
- (i32.eq
- (i32.and
- (set_local $ma
- (i32.add
- (get_local $ha)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ma)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 1232)
(set_local $ma
(i32.add
(get_local $ha)
- (get_local $c)
+ (set_local $c
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ma
+ (i32.add
+ (get_local $ha)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ma)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -5701,11 +5701,7 @@
(set_local $ma
(i32.shl
(get_local $ka)
- (if
- (i32.eq
- (get_local $Oa)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -5714,6 +5710,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $Oa)
+ (i32.const 31)
+ )
)
)
)
@@ -5957,36 +5957,35 @@
)
)
)
- (set_local $c
- (if
- (i32.eq
- (i32.and
- (set_local $ma
- (i32.add
- (get_local $ha)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ma)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 1232)
(set_local $ma
(i32.add
(get_local $ha)
- (get_local $c)
+ (set_local $c
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ma
+ (i32.add
+ (get_local $ha)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ma)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -6095,9 +6094,7 @@
(i32.const 8)
(get_local $b)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $fb (param $a i32)
(local $m i32)
@@ -7744,11 +7741,7 @@
(set_local $F
(i32.shl
(get_local $D)
- (if
- (i32.eq
- (get_local $G)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -7757,6 +7750,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $G)
+ (i32.const 31)
+ )
)
)
)
@@ -7985,7 +7982,6 @@
(i32.const 1240)
(i32.const -1)
)
- (return)
)
(func $Ra (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $g i32)
@@ -8391,9 +8387,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $z)
- )
+ (get_local $z)
)
(func $Wa (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $d i32)
@@ -8635,9 +8629,7 @@
)
)
)
- (return
- (get_local $h)
- )
+ (get_local $h)
)
(func $Za (param $a i32) (result i32)
(local $d i32)
@@ -8810,11 +8802,9 @@
)
)
)
- (return
- (i32.sub
- (get_local $g)
- (get_local $b)
- )
+ (i32.sub
+ (get_local $g)
+ (get_local $b)
)
)
(func $_a (param $a i32) (result i32)
@@ -8824,146 +8814,144 @@
(local $d i32)
(local $g i32)
(local $f i32)
- (return
- (block $do-once$0
- (if
- (get_local $a)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $a)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $$a
- (get_local $a)
- )
+ (block $do-once$0
+ (if
+ (get_local $a)
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $a)
)
+ (i32.const -1)
)
- (set_local $c
- (i32.eq
- (call $Ya
- (get_local $a)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $$a
+ (get_local $a)
)
)
- (set_local $e
- (call $$a
+ )
+ (set_local $c
+ (i32.eq
+ (call $Ya
(get_local $a)
)
+ (i32.const 0)
)
- (if
- (get_local $c)
- (get_local $e)
- (block
- (call $Ta
- (get_local $a)
- )
- (get_local $e)
+ )
+ (set_local $e
+ (call $$a
+ (get_local $a)
+ )
+ )
+ (if
+ (get_local $c)
+ (get_local $e)
+ (block
+ (call $Ta
+ (get_local $a)
)
+ (get_local $e)
)
)
- (block
- (set_local $b
- (if
+ )
+ (block
+ (set_local $b
+ (if
+ (i32.load
+ (i32.const 1140)
+ )
+ (call $_a
(i32.load
(i32.const 1140)
)
- (call $_a
- (i32.load
- (i32.const 1140)
- )
- )
- (i32.const 0)
)
+ (i32.const 0)
)
- (call_import $pa
- (i32.const 1188)
+ )
+ (call_import $pa
+ (i32.const 1188)
+ )
+ (if
+ (set_local $c
+ (i32.load
+ (i32.const 1184)
+ )
)
- (if
+ (block
+ (set_local $e
+ (get_local $c)
+ )
(set_local $c
- (i32.load
- (i32.const 1184)
- )
+ (get_local $b)
)
- (block
- (set_local $e
- (get_local $c)
- )
- (set_local $c
- (get_local $b)
- )
- (loop $while-out$2 $while-in$3
- (set_local $f
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $e)
- )
- (i32.const -1)
- )
- (call $Ya
+ (loop $while-out$2 $while-in$3
+ (set_local $f
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $e)
)
- (i32.const 0)
+ (i32.const -1)
+ )
+ (call $Ya
+ (get_local $e)
)
+ (i32.const 0)
)
- (set_local $g
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $e)
- )
- (i32.load offset=28
- (get_local $e)
- )
+ )
+ (set_local $g
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $e)
)
- (i32.or
- (call $$a
- (get_local $e)
- )
- (get_local $c)
+ (i32.load offset=28
+ (get_local $e)
+ )
+ )
+ (i32.or
+ (call $$a
+ (get_local $e)
)
(get_local $c)
)
+ (get_local $c)
)
- (if
- (get_local $f)
- (call $Ta
+ )
+ (if
+ (get_local $f)
+ (call $Ta
+ (get_local $e)
+ )
+ )
+ (if
+ (set_local $e
+ (i32.load offset=56
(get_local $e)
)
)
- (if
- (set_local $e
- (i32.load offset=56
- (get_local $e)
- )
- )
- (set_local $c
+ (set_local $c
+ (get_local $g)
+ )
+ (block
+ (set_local $d
(get_local $g)
)
- (block
- (set_local $d
- (get_local $g)
- )
- (br $while-out$2)
- )
+ (br $while-out$2)
)
- (br $while-in$3)
)
- )
- (set_local $d
- (get_local $b)
+ (br $while-in$3)
)
)
- (call_import $xa
- (i32.const 1188)
+ (set_local $d
+ (get_local $b)
)
- (get_local $d)
)
+ (call_import $xa
+ (i32.const 1188)
+ )
+ (get_local $d)
)
)
)
@@ -9125,9 +9113,7 @@
(i32.const 8)
(get_local $c)
)
- (return
- (get_local $m)
- )
+ (get_local $m)
)
(func $$a (param $a i32) (result i32)
(local $e i32)
@@ -9259,9 +9245,7 @@
)
)
)
- (return
- (get_local $d)
- )
+ (get_local $d)
)
(func $jb (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $d i32)
@@ -9404,9 +9388,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $d)
- )
+ (get_local $d)
)
(func $gb
(nop)
@@ -9541,11 +9523,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $a)
- (get_local $c)
- )
+ (i32.sub
+ (get_local $a)
+ (get_local $c)
)
)
(func $db (param $a i32) (result i32)
@@ -9642,14 +9622,12 @@
(get_local $b)
)
)
- (return
- (i32.shr_s
- (i32.shl
- (get_local $d)
- (i32.const 31)
- )
+ (i32.shr_s
+ (i32.shl
+ (get_local $d)
(i32.const 31)
)
+ (i32.const 31)
)
)
(func $Xa (param $a i32) (result i32)
@@ -9675,58 +9653,56 @@
(get_local $c)
)
)
- (return
- (if
- (i32.and
- (set_local $c
- (i32.load
- (get_local $a)
- )
- )
- (i32.const 8)
- )
- (block
- (i32.store
+ (if
+ (i32.and
+ (set_local $c
+ (i32.load
(get_local $a)
- (i32.or
- (get_local $c)
- (i32.const 32)
- )
)
- (i32.const -1)
)
- (block
- (i32.store offset=8
- (get_local $a)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $a)
- (i32.const 0)
+ (i32.const 8)
+ )
+ (block
+ (i32.store
+ (get_local $a)
+ (i32.or
+ (get_local $c)
+ (i32.const 32)
)
- (i32.store offset=28
- (get_local $a)
- (set_local $b
- (i32.load offset=44
- (get_local $a)
- )
+ )
+ (i32.const -1)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $a)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $a)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $a)
+ (set_local $b
+ (i32.load offset=44
+ (get_local $a)
)
)
- (i32.store offset=20
- (get_local $a)
+ )
+ (i32.store offset=20
+ (get_local $a)
+ (get_local $b)
+ )
+ (i32.store offset=16
+ (get_local $a)
+ (i32.add
(get_local $b)
- )
- (i32.store offset=16
- (get_local $a)
- (i32.add
- (get_local $b)
- (i32.load offset=48
- (get_local $a)
- )
+ (i32.load offset=48
+ (get_local $a)
)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
)
@@ -9741,58 +9717,56 @@
(get_local $b)
)
)
- (return
- (if
- (i32.eq
- (set_local $h
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $d)
- )
- (i32.const -1)
+ (if
+ (i32.eq
+ (set_local $h
+ (if
+ (i32.gt_s
+ (i32.load offset=76
+ (get_local $d)
)
- (block
- (set_local $f
- (i32.eq
- (call $Ya
- (get_local $d)
- )
- (i32.const 0)
+ (i32.const -1)
+ )
+ (block
+ (set_local $f
+ (i32.eq
+ (call $Ya
+ (get_local $d)
)
+ (i32.const 0)
)
- (set_local $g
- (call $Wa
- (get_local $a)
- (get_local $e)
+ )
+ (set_local $g
+ (call $Wa
+ (get_local $a)
+ (get_local $e)
+ (get_local $d)
+ )
+ )
+ (if
+ (get_local $f)
+ (get_local $g)
+ (block
+ (call $Ta
(get_local $d)
)
- )
- (if
- (get_local $f)
(get_local $g)
- (block
- (call $Ta
- (get_local $d)
- )
- (get_local $g)
- )
)
)
- (call $Wa
- (get_local $a)
- (get_local $e)
- (get_local $d)
- )
+ )
+ (call $Wa
+ (get_local $a)
+ (get_local $e)
+ (get_local $d)
)
)
- (get_local $e)
- )
- (get_local $c)
- (i32.div_u
- (get_local $h)
- (get_local $b)
)
+ (get_local $e)
+ )
+ (get_local $c)
+ (i32.div_u
+ (get_local $h)
+ (get_local $b)
)
)
)
@@ -9871,9 +9845,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $g)
- )
+ (get_local $g)
)
(func $Va (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $e i32)
@@ -9949,9 +9921,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $e)
- )
+ (get_local $e)
)
(func $Ka (param $a i32)
(i32.store8
@@ -10056,29 +10026,25 @@
(i32.const 8)
(get_local $b)
)
- (return
- (get_local $a)
- )
+ (get_local $a)
)
(func $Pa (param $a i32) (result i32)
- (return
- (if
- (i32.gt_u
- (get_local $a)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $Qa)
- (i32.sub
- (i32.const 0)
- (get_local $a)
- )
+ (if
+ (i32.gt_u
+ (get_local $a)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $Qa)
+ (i32.sub
+ (i32.const 0)
+ (get_local $a)
)
- (i32.const -1)
)
- (get_local $a)
+ (i32.const -1)
)
+ (get_local $a)
)
)
(func $Ja (param $a i32)
@@ -10116,32 +10082,28 @@
)
)
(func $Qa (result i32)
- (return
- (if
- (i32.load
- (i32.const 1160)
- )
- (i32.load offset=64
- (call $ib)
- )
- (i32.const 1204)
+ (if
+ (i32.load
+ (i32.const 1160)
+ )
+ (i32.load offset=64
+ (call $ib)
)
+ (i32.const 1204)
)
)
(func $lb (param $a i32) (param $b i32) (param $c i32) (param $d i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $a)
- (i32.const 3)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $a)
+ (i32.const 3)
)
- (get_local $b)
- (get_local $c)
- (get_local $d)
+ (i32.const 2)
)
+ (get_local $b)
+ (get_local $c)
+ (get_local $d)
)
)
(func $Ea (param $a i32) (result i32)
@@ -10172,32 +10134,26 @@
(i32.const -16)
)
)
- (return
- (get_local $b)
- )
+ (get_local $b)
)
(func $cb (param $a i32) (param $b i32) (result i32)
- (return
- (i32.add
- (call $bb
+ (i32.add
+ (call $bb
+ (get_local $a)
+ (call $Za
(get_local $a)
- (call $Za
- (get_local $a)
- )
- (i32.const 1)
- (get_local $b)
)
- (i32.const -1)
+ (i32.const 1)
+ (get_local $b)
)
+ (i32.const -1)
)
)
(func $ob (param $a i32) (param $b i32) (param $c i32) (result i32)
(call_import $ja
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ia (param $a i32) (param $b i32)
(if
@@ -10219,17 +10175,15 @@
)
)
(func $kb (param $a i32) (param $b i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $a)
- (i32.const 1)
- )
- (i32.const 0)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $a)
+ (i32.const 1)
)
- (get_local $b)
+ (i32.const 0)
)
+ (get_local $b)
)
)
(func $Sa (param $a i32)
@@ -10243,7 +10197,6 @@
(get_local $a)
)
)
- (return)
)
(func $mb (param $a i32) (param $b i32)
(call_indirect $FUNCSIG$vi
@@ -10271,25 +10224,19 @@
(call_import $ja
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Na (result i32)
(call $db
(i32.const 1144)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ya (param $a i32) (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ta (param $a i32)
- (return)
+ (nop)
)
(func $pb (param $a i32)
(call_import $ja
@@ -10309,23 +10256,17 @@
)
)
(func $Ma (result i32)
- (return
- (i32.load
- (i32.const 160)
- )
+ (i32.load
+ (i32.const 160)
)
)
(func $Fa (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $ib (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $__growWasmMemory (param $newSize i32)
(grow_memory
diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise
index 4be639994..2927c2f6e 100644
--- a/test/memorygrowth.fromasm.imprecise
+++ b/test/memorygrowth.fromasm.imprecise
@@ -49,12 +49,12 @@
(local $q i32)
(local $V i32)
(local $ja i32)
- (local $c i32)
(local $aa i32)
(local $d i32)
+ (local $c i32)
(local $g i32)
- (local $la i32)
(local $f i32)
+ (local $la i32)
(local $N i32)
(local $t i32)
(local $o i32)
@@ -156,27 +156,6 @@
(i32.const 245)
)
(block
- (set_local $e
- (i32.shr_u
- (set_local $d
- (if
- (i32.lt_u
- (get_local $a)
- (i32.const 11)
- )
- (i32.const 16)
- (i32.and
- (i32.add
- (get_local $a)
- (i32.const 11)
- )
- (i32.const -8)
- )
- )
- )
- (i32.const 3)
- )
- )
(if
(i32.and
(set_local $g
@@ -186,7 +165,27 @@
(i32.const 1208)
)
)
- (get_local $e)
+ (set_local $e
+ (i32.shr_u
+ (set_local $d
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $a)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
+ (get_local $a)
+ (i32.const 11)
+ )
+ )
+ )
+ (i32.const 3)
+ )
+ )
)
)
(i32.const 3)
@@ -850,36 +849,37 @@
)
)
)
- (set_local $e
- (if
- (set_local $f
- (i32.lt_u
- (set_local $j
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $B)
- )
- (i32.const -8)
- )
- (get_local $d)
+ (set_local $f
+ (i32.lt_u
+ (set_local $j
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $B)
)
+ (i32.const -8)
)
- (get_local $e)
+ (get_local $d)
)
)
+ (get_local $e)
+ )
+ )
+ (set_local $e
+ (select
(get_local $j)
(get_local $e)
+ (get_local $f)
)
)
(set_local $g
(get_local $B)
)
(set_local $s
- (if
- (get_local $f)
+ (select
(get_local $B)
(get_local $s)
+ (get_local $f)
)
)
(br $while-in$7)
@@ -1600,11 +1600,7 @@
(set_local $s
(i32.shl
(get_local $e)
- (if
- (i32.eq
- (get_local $J)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -1613,6 +1609,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $J)
+ (i32.const 31)
+ )
)
)
)
@@ -1679,14 +1679,16 @@
)
)
(set_local $m
- (if
+ (select
+ (get_local $j)
+ (set_local $l
+ (i32.load offset=20
+ (get_local $o)
+ )
+ )
(i32.or
(i32.eq
- (set_local $l
- (i32.load offset=20
- (get_local $o)
- )
- )
+ (get_local $l)
(i32.const 0)
)
(i32.eq
@@ -1710,8 +1712,6 @@
)
)
)
- (get_local $j)
- (get_local $l)
)
)
(if
@@ -1961,33 +1961,34 @@
(set_local $N
(i32.const 0)
)
- (set_local $g
- (if
- (set_local $s
- (i32.lt_u
- (set_local $i
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $P)
- )
- (i32.const -8)
- )
- (get_local $e)
+ (set_local $s
+ (i32.lt_u
+ (set_local $i
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $P)
)
+ (i32.const -8)
)
- (get_local $O)
+ (get_local $e)
)
)
+ (get_local $O)
+ )
+ )
+ (set_local $g
+ (select
(get_local $i)
(get_local $O)
+ (get_local $s)
)
)
(set_local $i
- (if
- (get_local $s)
+ (select
(get_local $P)
(get_local $Q)
+ (get_local $s)
)
)
(if
@@ -2753,11 +2754,7 @@
(set_local $q
(i32.shl
(get_local $U)
- (if
- (i32.eq
- (get_local $ba)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -2766,6 +2763,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $ba)
+ (i32.const 31)
+ )
)
)
)
@@ -3831,27 +3832,32 @@
(get_local $ia)
)
)
- (set_local $ca
- (if
- (i32.eq
- (i32.and
- (set_local $ka
- (i32.add
- (get_local $ja)
- (i32.const 8)
+ (set_local $ka
+ (i32.add
+ (get_local $ja)
+ (set_local $ca
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ka
+ (i32.add
+ (get_local $ja)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ka)
+ (i32.const 7)
+ )
+ (i32.const 0)
)
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ka)
)
- (i32.const 7)
)
)
)
@@ -3868,12 +3874,7 @@
)
(i32.store
(i32.const 1232)
- (set_local $ka
- (i32.add
- (get_local $ja)
- (get_local $ca)
- )
- )
+ (get_local $ka)
)
(i32.store
(i32.const 1220)
@@ -4008,26 +4009,26 @@
(set_local $ca
(i32.add
(get_local $ha)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $ka
(i32.add
(get_local $ha)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $ka)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4035,26 +4036,26 @@
(set_local $ma
(i32.add
(get_local $c)
- (if
- (i32.eq
- (i32.and
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
(set_local $ka
(i32.add
(get_local $c)
(i32.const 8)
)
)
- (i32.const 7)
)
- (i32.const 0)
+ (i32.const 7)
)
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
+ (i32.eq
+ (i32.and
(get_local $ka)
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 0)
)
)
)
@@ -4985,11 +4986,7 @@
(set_local $aa
(i32.shl
(get_local $Ea)
- (if
- (i32.eq
- (get_local $Ha)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -4998,6 +4995,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $Ha)
+ (i32.const 31)
+ )
)
)
)
@@ -5227,30 +5228,32 @@
(set_local $ka
(i32.add
(set_local $ca
- (if
- (i32.lt_u
- (set_local $ka
- (i32.add
- (get_local $ca)
- (if
- (i32.eq
- (i32.and
- (get_local $ea)
- (i32.const 7)
- )
+ (select
+ (get_local $ja)
+ (set_local $ka
+ (i32.add
+ (get_local $ca)
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
(i32.const 0)
+ (get_local $ea)
)
- (i32.const 0)
+ (i32.const 7)
+ )
+ (i32.eq
(i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ea)
- )
+ (get_local $ea)
(i32.const 7)
)
+ (i32.const 0)
)
)
)
+ )
+ (i32.lt_u
+ (get_local $ka)
(set_local $ea
(i32.add
(get_local $ja)
@@ -5258,43 +5261,40 @@
)
)
)
- (get_local $ja)
- (get_local $ka)
)
)
(i32.const 8)
)
)
- (set_local $c
- (if
- (i32.eq
- (i32.and
- (set_local $ma
- (i32.add
- (get_local $ha)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ma)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 1232)
(set_local $ma
(i32.add
(get_local $ha)
- (get_local $c)
+ (set_local $c
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ma
+ (i32.add
+ (get_local $ha)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ma)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -5701,11 +5701,7 @@
(set_local $ma
(i32.shl
(get_local $ka)
- (if
- (i32.eq
- (get_local $Oa)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -5714,6 +5710,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $Oa)
+ (i32.const 31)
+ )
)
)
)
@@ -5957,36 +5957,35 @@
)
)
)
- (set_local $c
- (if
- (i32.eq
- (i32.and
- (set_local $ma
- (i32.add
- (get_local $ha)
- (i32.const 8)
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- )
- (i32.const 0)
- (i32.and
- (i32.sub
- (i32.const 0)
- (get_local $ma)
- )
- (i32.const 7)
- )
- )
- )
(i32.store
(i32.const 1232)
(set_local $ma
(i32.add
(get_local $ha)
- (get_local $c)
+ (set_local $c
+ (select
+ (i32.const 0)
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (set_local $ma
+ (i32.add
+ (get_local $ha)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.eq
+ (i32.and
+ (get_local $ma)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
@@ -6095,9 +6094,7 @@
(i32.const 8)
(get_local $b)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $fb (param $a i32)
(local $m i32)
@@ -7744,11 +7741,7 @@
(set_local $F
(i32.shl
(get_local $D)
- (if
- (i32.eq
- (get_local $G)
- (i32.const 31)
- )
+ (select
(i32.const 0)
(i32.sub
(i32.const 25)
@@ -7757,6 +7750,10 @@
(i32.const 1)
)
)
+ (i32.eq
+ (get_local $G)
+ (i32.const 31)
+ )
)
)
)
@@ -7985,7 +7982,6 @@
(i32.const 1240)
(i32.const -1)
)
- (return)
)
(func $Ra (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $g i32)
@@ -8391,9 +8387,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $z)
- )
+ (get_local $z)
)
(func $Wa (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $d i32)
@@ -8635,9 +8629,7 @@
)
)
)
- (return
- (get_local $h)
- )
+ (get_local $h)
)
(func $Za (param $a i32) (result i32)
(local $d i32)
@@ -8810,11 +8802,9 @@
)
)
)
- (return
- (i32.sub
- (get_local $g)
- (get_local $b)
- )
+ (i32.sub
+ (get_local $g)
+ (get_local $b)
)
)
(func $_a (param $a i32) (result i32)
@@ -8824,146 +8814,144 @@
(local $d i32)
(local $g i32)
(local $f i32)
- (return
- (block $do-once$0
- (if
- (get_local $a)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (get_local $a)
- )
- (i32.const -1)
- )
- (br $do-once$0
- (call $$a
- (get_local $a)
- )
+ (block $do-once$0
+ (if
+ (get_local $a)
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (get_local $a)
)
+ (i32.const -1)
)
- (set_local $c
- (i32.eq
- (call $Ya
- (get_local $a)
- )
- (i32.const 0)
+ (br $do-once$0
+ (call $$a
+ (get_local $a)
)
)
- (set_local $e
- (call $$a
+ )
+ (set_local $c
+ (i32.eq
+ (call $Ya
(get_local $a)
)
+ (i32.const 0)
)
- (if
- (get_local $c)
- (get_local $e)
- (block
- (call $Ta
- (get_local $a)
- )
- (get_local $e)
+ )
+ (set_local $e
+ (call $$a
+ (get_local $a)
+ )
+ )
+ (if
+ (get_local $c)
+ (get_local $e)
+ (block
+ (call $Ta
+ (get_local $a)
)
+ (get_local $e)
)
)
- (block
- (set_local $b
- (if
+ )
+ (block
+ (set_local $b
+ (if
+ (i32.load
+ (i32.const 1140)
+ )
+ (call $_a
(i32.load
(i32.const 1140)
)
- (call $_a
- (i32.load
- (i32.const 1140)
- )
- )
- (i32.const 0)
)
+ (i32.const 0)
)
- (call_import $pa
- (i32.const 1188)
+ )
+ (call_import $pa
+ (i32.const 1188)
+ )
+ (if
+ (set_local $c
+ (i32.load
+ (i32.const 1184)
+ )
)
- (if
+ (block
+ (set_local $e
+ (get_local $c)
+ )
(set_local $c
- (i32.load
- (i32.const 1184)
- )
+ (get_local $b)
)
- (block
- (set_local $e
- (get_local $c)
- )
- (set_local $c
- (get_local $b)
- )
- (loop $while-out$2 $while-in$3
- (set_local $f
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $e)
- )
- (i32.const -1)
- )
- (call $Ya
+ (loop $while-out$2 $while-in$3
+ (set_local $f
+ (if
+ (i32.gt_s
+ (i32.load offset=76
(get_local $e)
)
- (i32.const 0)
+ (i32.const -1)
+ )
+ (call $Ya
+ (get_local $e)
)
+ (i32.const 0)
)
- (set_local $g
- (if
- (i32.gt_u
- (i32.load offset=20
- (get_local $e)
- )
- (i32.load offset=28
- (get_local $e)
- )
+ )
+ (set_local $g
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (get_local $e)
)
- (i32.or
- (call $$a
- (get_local $e)
- )
- (get_local $c)
+ (i32.load offset=28
+ (get_local $e)
+ )
+ )
+ (i32.or
+ (call $$a
+ (get_local $e)
)
(get_local $c)
)
+ (get_local $c)
)
- (if
- (get_local $f)
- (call $Ta
+ )
+ (if
+ (get_local $f)
+ (call $Ta
+ (get_local $e)
+ )
+ )
+ (if
+ (set_local $e
+ (i32.load offset=56
(get_local $e)
)
)
- (if
- (set_local $e
- (i32.load offset=56
- (get_local $e)
- )
- )
- (set_local $c
+ (set_local $c
+ (get_local $g)
+ )
+ (block
+ (set_local $d
(get_local $g)
)
- (block
- (set_local $d
- (get_local $g)
- )
- (br $while-out$2)
- )
+ (br $while-out$2)
)
- (br $while-in$3)
)
- )
- (set_local $d
- (get_local $b)
+ (br $while-in$3)
)
)
- (call_import $xa
- (i32.const 1188)
+ (set_local $d
+ (get_local $b)
)
- (get_local $d)
)
+ (call_import $xa
+ (i32.const 1188)
+ )
+ (get_local $d)
)
)
)
@@ -9125,9 +9113,7 @@
(i32.const 8)
(get_local $c)
)
- (return
- (get_local $m)
- )
+ (get_local $m)
)
(func $$a (param $a i32) (result i32)
(local $e i32)
@@ -9259,9 +9245,7 @@
)
)
)
- (return
- (get_local $d)
- )
+ (get_local $d)
)
(func $jb (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $d i32)
@@ -9404,9 +9388,7 @@
)
(br $while-in$5)
)
- (return
- (get_local $d)
- )
+ (get_local $d)
)
(func $gb
(nop)
@@ -9541,11 +9523,9 @@
)
(br $while-in$5)
)
- (return
- (i32.sub
- (get_local $a)
- (get_local $c)
- )
+ (i32.sub
+ (get_local $a)
+ (get_local $c)
)
)
(func $db (param $a i32) (result i32)
@@ -9642,14 +9622,12 @@
(get_local $b)
)
)
- (return
- (i32.shr_s
- (i32.shl
- (get_local $d)
- (i32.const 31)
- )
+ (i32.shr_s
+ (i32.shl
+ (get_local $d)
(i32.const 31)
)
+ (i32.const 31)
)
)
(func $Xa (param $a i32) (result i32)
@@ -9675,58 +9653,56 @@
(get_local $c)
)
)
- (return
- (if
- (i32.and
- (set_local $c
- (i32.load
- (get_local $a)
- )
- )
- (i32.const 8)
- )
- (block
- (i32.store
+ (if
+ (i32.and
+ (set_local $c
+ (i32.load
(get_local $a)
- (i32.or
- (get_local $c)
- (i32.const 32)
- )
)
- (i32.const -1)
)
- (block
- (i32.store offset=8
- (get_local $a)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $a)
- (i32.const 0)
+ (i32.const 8)
+ )
+ (block
+ (i32.store
+ (get_local $a)
+ (i32.or
+ (get_local $c)
+ (i32.const 32)
)
- (i32.store offset=28
- (get_local $a)
- (set_local $b
- (i32.load offset=44
- (get_local $a)
- )
+ )
+ (i32.const -1)
+ )
+ (block
+ (i32.store offset=8
+ (get_local $a)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $a)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (get_local $a)
+ (set_local $b
+ (i32.load offset=44
+ (get_local $a)
)
)
- (i32.store offset=20
- (get_local $a)
+ )
+ (i32.store offset=20
+ (get_local $a)
+ (get_local $b)
+ )
+ (i32.store offset=16
+ (get_local $a)
+ (i32.add
(get_local $b)
- )
- (i32.store offset=16
- (get_local $a)
- (i32.add
- (get_local $b)
- (i32.load offset=48
- (get_local $a)
- )
+ (i32.load offset=48
+ (get_local $a)
)
)
- (i32.const 0)
)
+ (i32.const 0)
)
)
)
@@ -9741,58 +9717,56 @@
(get_local $b)
)
)
- (return
- (if
- (i32.eq
- (set_local $h
- (if
- (i32.gt_s
- (i32.load offset=76
- (get_local $d)
- )
- (i32.const -1)
+ (if
+ (i32.eq
+ (set_local $h
+ (if
+ (i32.gt_s
+ (i32.load offset=76
+ (get_local $d)
)
- (block
- (set_local $f
- (i32.eq
- (call $Ya
- (get_local $d)
- )
- (i32.const 0)
+ (i32.const -1)
+ )
+ (block
+ (set_local $f
+ (i32.eq
+ (call $Ya
+ (get_local $d)
)
+ (i32.const 0)
)
- (set_local $g
- (call $Wa
- (get_local $a)
- (get_local $e)
+ )
+ (set_local $g
+ (call $Wa
+ (get_local $a)
+ (get_local $e)
+ (get_local $d)
+ )
+ )
+ (if
+ (get_local $f)
+ (get_local $g)
+ (block
+ (call $Ta
(get_local $d)
)
- )
- (if
- (get_local $f)
(get_local $g)
- (block
- (call $Ta
- (get_local $d)
- )
- (get_local $g)
- )
)
)
- (call $Wa
- (get_local $a)
- (get_local $e)
- (get_local $d)
- )
+ )
+ (call $Wa
+ (get_local $a)
+ (get_local $e)
+ (get_local $d)
)
)
- (get_local $e)
- )
- (get_local $c)
- (i32.div_u
- (get_local $h)
- (get_local $b)
)
+ (get_local $e)
+ )
+ (get_local $c)
+ (i32.div_u
+ (get_local $h)
+ (get_local $b)
)
)
)
@@ -9871,9 +9845,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $g)
- )
+ (get_local $g)
)
(func $Va (param $a i32) (param $b i32) (param $c i32) (result i32)
(local $e i32)
@@ -9949,9 +9921,7 @@
(i32.const 8)
(get_local $d)
)
- (return
- (get_local $e)
- )
+ (get_local $e)
)
(func $Ka (param $a i32)
(i32.store8
@@ -10056,29 +10026,25 @@
(i32.const 8)
(get_local $b)
)
- (return
- (get_local $a)
- )
+ (get_local $a)
)
(func $Pa (param $a i32) (result i32)
- (return
- (if
- (i32.gt_u
- (get_local $a)
- (i32.const -4096)
- )
- (block
- (i32.store
- (call $Qa)
- (i32.sub
- (i32.const 0)
- (get_local $a)
- )
+ (if
+ (i32.gt_u
+ (get_local $a)
+ (i32.const -4096)
+ )
+ (block
+ (i32.store
+ (call $Qa)
+ (i32.sub
+ (i32.const 0)
+ (get_local $a)
)
- (i32.const -1)
)
- (get_local $a)
+ (i32.const -1)
)
+ (get_local $a)
)
)
(func $Ja (param $a i32)
@@ -10116,32 +10082,28 @@
)
)
(func $Qa (result i32)
- (return
- (if
- (i32.load
- (i32.const 1160)
- )
- (i32.load offset=64
- (call $ib)
- )
- (i32.const 1204)
+ (if
+ (i32.load
+ (i32.const 1160)
+ )
+ (i32.load offset=64
+ (call $ib)
)
+ (i32.const 1204)
)
)
(func $lb (param $a i32) (param $b i32) (param $c i32) (param $d i32) (result i32)
- (return
- (call_indirect $FUNCSIG$iiii
- (i32.add
- (i32.and
- (get_local $a)
- (i32.const 3)
- )
- (i32.const 2)
+ (call_indirect $FUNCSIG$iiii
+ (i32.add
+ (i32.and
+ (get_local $a)
+ (i32.const 3)
)
- (get_local $b)
- (get_local $c)
- (get_local $d)
+ (i32.const 2)
)
+ (get_local $b)
+ (get_local $c)
+ (get_local $d)
)
)
(func $Ea (param $a i32) (result i32)
@@ -10172,32 +10134,26 @@
(i32.const -16)
)
)
- (return
- (get_local $b)
- )
+ (get_local $b)
)
(func $cb (param $a i32) (param $b i32) (result i32)
- (return
- (i32.add
- (call $bb
+ (i32.add
+ (call $bb
+ (get_local $a)
+ (call $Za
(get_local $a)
- (call $Za
- (get_local $a)
- )
- (i32.const 1)
- (get_local $b)
)
- (i32.const -1)
+ (i32.const 1)
+ (get_local $b)
)
+ (i32.const -1)
)
)
(func $ob (param $a i32) (param $b i32) (param $c i32) (result i32)
(call_import $ja
(i32.const 1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ia (param $a i32) (param $b i32)
(if
@@ -10219,17 +10175,15 @@
)
)
(func $kb (param $a i32) (param $b i32) (result i32)
- (return
- (call_indirect $FUNCSIG$ii
- (i32.add
- (i32.and
- (get_local $a)
- (i32.const 1)
- )
- (i32.const 0)
+ (call_indirect $FUNCSIG$ii
+ (i32.add
+ (i32.and
+ (get_local $a)
+ (i32.const 1)
)
- (get_local $b)
+ (i32.const 0)
)
+ (get_local $b)
)
)
(func $Sa (param $a i32)
@@ -10243,7 +10197,6 @@
(get_local $a)
)
)
- (return)
)
(func $mb (param $a i32) (param $b i32)
(call_indirect $FUNCSIG$vi
@@ -10271,25 +10224,19 @@
(call_import $ja
(i32.const 0)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Na (result i32)
(call $db
(i32.const 1144)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ya (param $a i32) (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $Ta (param $a i32)
- (return)
+ (nop)
)
(func $pb (param $a i32)
(call_import $ja
@@ -10309,23 +10256,17 @@
)
)
(func $Ma (result i32)
- (return
- (i32.load
- (i32.const 160)
- )
+ (i32.load
+ (i32.const 160)
)
)
(func $Fa (result i32)
- (return
- (i32.load
- (i32.const 8)
- )
+ (i32.load
+ (i32.const 8)
)
)
(func $ib (result i32)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $__growWasmMemory (param $newSize i32)
(grow_memory
diff --git a/test/min.fromasm b/test/min.fromasm
index 26501d4a5..6deb6ae67 100644
--- a/test/min.fromasm
+++ b/test/min.fromasm
@@ -4,24 +4,20 @@
(export "floats" $floats)
(func $floats (param $f f32) (result f32)
(local $t f32)
- (return
- (f32.add
- (get_local $t)
- (get_local $f)
- )
+ (f32.add
+ (get_local $t)
+ (get_local $f)
)
)
(func $neg (param $k i32) (param $p i32) (result f32)
- (return
- (f32.neg
- (block
- (i32.store
- (get_local $k)
- (get_local $p)
- )
- (f32.load
- (get_local $k)
- )
+ (f32.neg
+ (block
+ (i32.store
+ (get_local $k)
+ (get_local $p)
+ )
+ (f32.load
+ (get_local $k)
)
)
)
@@ -40,10 +36,8 @@
)
)
(func $ctzzzz (result i32)
- (return
- (i32.ctz
- (i32.const 4660)
- )
+ (i32.ctz
+ (i32.const 4660)
)
)
)
diff --git a/test/min.fromasm.imprecise b/test/min.fromasm.imprecise
index 26501d4a5..6deb6ae67 100644
--- a/test/min.fromasm.imprecise
+++ b/test/min.fromasm.imprecise
@@ -4,24 +4,20 @@
(export "floats" $floats)
(func $floats (param $f f32) (result f32)
(local $t f32)
- (return
- (f32.add
- (get_local $t)
- (get_local $f)
- )
+ (f32.add
+ (get_local $t)
+ (get_local $f)
)
)
(func $neg (param $k i32) (param $p i32) (result f32)
- (return
- (f32.neg
- (block
- (i32.store
- (get_local $k)
- (get_local $p)
- )
- (f32.load
- (get_local $k)
- )
+ (f32.neg
+ (block
+ (i32.store
+ (get_local $k)
+ (get_local $p)
+ )
+ (f32.load
+ (get_local $k)
)
)
)
@@ -40,10 +36,8 @@
)
)
(func $ctzzzz (result i32)
- (return
- (i32.ctz
- (i32.const 4660)
- )
+ (i32.ctz
+ (i32.const 4660)
)
)
)
diff --git a/test/passes/remove-unused-brs.txt b/test/passes/remove-unused-brs.txt
index 226065f3f..a7bd70ecc 100644
--- a/test/passes/remove-unused-brs.txt
+++ b/test/passes/remove-unused-brs.txt
@@ -2,45 +2,36 @@
(memory 256 256)
(func $b0-yes (param $i1 i32)
(block $topmost
- (nop)
)
)
(func $b1 (param $i1 i32)
(block $topmost
- (br $topmost
- (i32.const 0)
- )
+ (i32.const 0)
)
)
(func $b2 (param $i1 i32)
(block $topmost
(block $inner
- (nop)
)
)
)
(func $b3-yes (param $i1 i32)
(block $topmost
(block $inner
- (nop)
)
)
)
(func $b4 (param $i1 i32)
(block $topmost
(block $inner
- (br $topmost
- (i32.const 0)
- )
+ (i32.const 0)
)
)
)
(func $b5 (param $i1 i32)
(block $topmost
(block $inner
- (br $inner
- (i32.const 0)
- )
+ (i32.const 0)
)
)
)
@@ -99,20 +90,16 @@
)
(func $b12-yes (result i32)
(block $topmost
- (if
- (i32.const 1)
+ (select
(block $block1
(i32.const 12)
- (br $topmost
- (i32.const 1)
- )
+ (i32.const 1)
)
(block $block3
(i32.const 27)
- (br $topmost
- (i32.const 2)
- )
+ (i32.const 2)
)
+ (i32.const 1)
)
)
)
@@ -139,14 +126,14 @@
)
(func $b14 (result i32)
(block $topmost
- (if
- (i32.const 1)
+ (select
(block $block1
(i32.const 12)
)
(block $block3
(i32.const 27)
)
+ (i32.const 1)
)
)
)
@@ -169,71 +156,127 @@
(block $a
(block $b
(block $c
- (nop)
)
- (nop)
)
- (nop)
)
(block $a
(block $b
(block $c
- (nop)
)
- (nop)
)
- (nop)
)
(block $a
(block $b
(block $c
- (nop)
)
- (nop)
)
- (nop)
)
)
(func $b17
(block $a
- (if
- (i32.const 0)
+ (select
(block $block1
- (nop)
)
(block $block3
- (nop)
)
+ (i32.const 0)
)
)
(block $a
- (if
- (i32.const 0)
+ (select
(i32.const 1)
(block $block6
- (nop)
)
+ (i32.const 0)
)
)
(block $a
- (if
- (i32.const 0)
+ (select
(block $block8
- (nop)
)
(i32.const 1)
+ (i32.const 0)
)
)
(block $c
(block $b
- (if
- (i32.const 0)
+ (select
(block $block11
- (nop)
)
(block $block13
- (nop)
)
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (func $ret-1
+ (nop)
+ )
+ (func $ret-2
+ (block $block0
+ (block $block1
+ )
+ )
+ )
+ (func $ret-3
+ (block $block0
+ (select
+ (nop)
+ (block $block3
+ )
+ (i32.const 0)
+ )
+ )
+ )
+ (func $ret-value (result i32)
+ (block $block0
+ (block $block1
+ (i32.const 1)
+ )
+ )
+ )
+ (func $no-select-but-the-last
+ (block $a
+ (if
+ (i32.const 0)
+ (i32.const 1)
+ (block $block2
+ (br $a
+ (i32.const 2)
+ )
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block $block4
+ (br $a
+ (i32.const 2)
+ )
+ (i32.const 3)
+ )
+ (i32.const 1)
+ )
+ (if
+ (block $block6
+ (br $a
+ (i32.const 2)
+ )
+ (i32.const 3)
+ )
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (select
+ (block $a
+ (i32.const 1)
+ )
+ (block $a
+ (i32.const 2)
+ )
+ (block $a
+ (i32.const 0)
)
)
)
diff --git a/test/passes/remove-unused-brs.wast b/test/passes/remove-unused-brs.wast
index 2b3fb14d3..dc67ad4da 100644
--- a/test/passes/remove-unused-brs.wast
+++ b/test/passes/remove-unused-brs.wast
@@ -230,5 +230,72 @@
)
)
)
+ (func $ret-1
+ (return)
+ )
+ (func $ret-2
+ (block
+ (block
+ (return)
+ )
+ )
+ )
+ (func $ret-3
+ (block
+ (if
+ (i32.const 0)
+ (return)
+ (block
+ (return)
+ )
+ )
+ )
+ )
+ (func $ret-value (result i32)
+ (block
+ (block
+ (return (i32.const 1))
+ )
+ )
+ )
+ (func $no-select-but-the-last
+ (block $a
+ (if
+ (i32.const 0)
+ (i32.const 1)
+ (block
+ (br $a (i32.const 2))
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (br $a (i32.const 2))
+ (i32.const 3)
+ )
+ (i32.const 1)
+ )
+ (if
+ (block
+ (br $a (i32.const 2))
+ (i32.const 3)
+ )
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (if ;; brs to the inner $a's get removed, the it is selectifiable
+ (block $a
+ (br $a (i32.const 0))
+ )
+ (block $a
+ (br $a (i32.const 1))
+ )
+ (block $a
+ (br $a (i32.const 2))
+ )
+ )
+ )
+ )
)
diff --git a/test/two_sides.fromasm b/test/two_sides.fromasm
index f1d3180b6..3c25ec20b 100644
--- a/test/two_sides.fromasm
+++ b/test/two_sides.fromasm
@@ -67,8 +67,6 @@
)
)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
)
diff --git a/test/two_sides.fromasm.imprecise b/test/two_sides.fromasm.imprecise
index 37c8073bb..f57c6c343 100644
--- a/test/two_sides.fromasm.imprecise
+++ b/test/two_sides.fromasm.imprecise
@@ -65,8 +65,6 @@
)
)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
)
diff --git a/test/unit.fromasm b/test/unit.fromasm
index f3d978c88..eda3ea485 100644
--- a/test/unit.fromasm
+++ b/test/unit.fromasm
@@ -64,9 +64,7 @@
(f64.const 5.6)
)
)
- (return
- (f64.const 1.2)
- )
+ (f64.const 1.2)
)
(func $doubleCompares (param $x f64) (param $y f64) (result f64)
(local $Int f64)
@@ -107,16 +105,12 @@
(get_local $x)
)
)
- (return
- (get_local $y)
- )
+ (get_local $y)
)
(func $intOps (result i32)
(local $x i32)
- (return
- (i32.eqz
- (get_local $x)
- )
+ (i32.eqz
+ (get_local $x)
)
)
(func $hexLiterals
@@ -262,30 +256,24 @@
)
(br $label$continue$L1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $blocker
(nop)
)
(func $frem (result f64)
- (return
- (call_import $f64-rem
- (f64.const 5.5)
- (f64.const 1.2)
- )
+ (call_import $f64-rem
+ (f64.const 5.5)
+ (f64.const 1.2)
)
)
(func $big_uint_div_u (result i32)
- (return
- (i32.and
- (i32.div_u
- (i32.const -1)
- (i32.const 2)
- )
+ (i32.and
+ (i32.div_u
(i32.const -1)
+ (i32.const 2)
)
+ (i32.const -1)
)
)
(func $fr (param $x f32)
@@ -301,9 +289,7 @@
(f32.const 0)
)
(func $negZero (result f64)
- (return
- (f64.const -0)
- )
+ (f64.const -0)
)
(func $abs
(local $asm2wasm_i32_temp i32)
@@ -390,9 +376,7 @@
)
)
)
- (return
- (get_local $i)
- )
+ (get_local $i)
)
(func $cneg_nosemicolon
(call_indirect $FUNCSIG$vi
diff --git a/test/unit.fromasm.imprecise b/test/unit.fromasm.imprecise
index 5df8aef72..2d7147edb 100644
--- a/test/unit.fromasm.imprecise
+++ b/test/unit.fromasm.imprecise
@@ -62,9 +62,7 @@
(f64.const 5.6)
)
)
- (return
- (f64.const 1.2)
- )
+ (f64.const 1.2)
)
(func $doubleCompares (param $x f64) (param $y f64) (result f64)
(local $Int f64)
@@ -105,16 +103,12 @@
(get_local $x)
)
)
- (return
- (get_local $y)
- )
+ (get_local $y)
)
(func $intOps (result i32)
(local $x i32)
- (return
- (i32.eqz
- (get_local $x)
- )
+ (i32.eqz
+ (get_local $x)
)
)
(func $hexLiterals
@@ -256,30 +250,24 @@
)
(br $label$continue$L1)
)
- (return
- (i32.const 0)
- )
+ (i32.const 0)
)
(func $blocker
(nop)
)
(func $frem (result f64)
- (return
- (call_import $f64-rem
- (f64.const 5.5)
- (f64.const 1.2)
- )
+ (call_import $f64-rem
+ (f64.const 5.5)
+ (f64.const 1.2)
)
)
(func $big_uint_div_u (result i32)
- (return
- (i32.and
- (i32.div_u
- (i32.const -1)
- (i32.const 2)
- )
+ (i32.and
+ (i32.div_u
(i32.const -1)
+ (i32.const 2)
)
+ (i32.const -1)
)
)
(func $fr (param $x f32)
@@ -295,9 +283,7 @@
(f32.const 0)
)
(func $negZero (result f64)
- (return
- (f64.const -0)
- )
+ (f64.const -0)
)
(func $abs
(local $asm2wasm_i32_temp i32)
@@ -384,9 +370,7 @@
)
)
)
- (return
- (get_local $i)
- )
+ (get_local $i)
)
(func $cneg_nosemicolon
(call_indirect $FUNCSIG$vi