summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2017-06-28 22:05:05 -0700
committerGitHub <noreply@github.com>2017-06-28 22:05:05 -0700
commite488da5adbef2613c08fe205db5b79b1765a4af3 (patch)
treee3cab840dcbf7d8d4ccf1f47a742fbfc41e1d5ef /test
parente2c08d42ab0ffc05d980ae2d34fee0e77b201134 (diff)
downloadbinaryen-e488da5adbef2613c08fe205db5b79b1765a4af3.tar.gz
binaryen-e488da5adbef2613c08fe205db5b79b1765a4af3.tar.bz2
binaryen-e488da5adbef2613c08fe205db5b79b1765a4af3.zip
Code folding (#1076)
Adds a pass that folds code, i.e. merges it when possible. See details in comment in the pass implementation cpp. This is enabled by default in -Os and -Oz. Seems risky to enable anywhere else, as it does add branches - likely predictable ones so maybe no slowdown, but still some risk. Code size numbers: wasm-backend: 196331 + binaryen -Os (before): 182598 + binaryen -Os (with folding): 181943 asm2wasm -Os (before): 172463 asm2wasm -Os (with folding): 168774 So this reduces wasm-backend output by an additional 0.5% than it could before. Mainly this is because the wasm backend already has code folding, whereas on asm2wasm output, where we didn't have folding before, this saves over 2%. The 0.5% improvement on the wasm backend's output might be because this can fold more types of code than LLVM can (it can fold nested control flow, in particular).
Diffstat (limited to 'test')
-rw-r--r--test/emcc_hello_world.fromasm8016
-rw-r--r--test/emcc_hello_world.fromasm.clamp8016
-rw-r--r--test/emcc_hello_world.fromasm.imprecise8016
-rw-r--r--test/memorygrowth.fromasm8459
-rw-r--r--test/memorygrowth.fromasm.clamp8459
-rw-r--r--test/memorygrowth.fromasm.imprecise8459
-rw-r--r--test/passes/remove-unused-names_code-folding.txt1681
-rw-r--r--test/passes/remove-unused-names_code-folding.wast1176
-rw-r--r--test/wasm-only.fromasm25
-rw-r--r--test/wasm-only.fromasm.clamp25
-rw-r--r--test/wasm-only.fromasm.imprecise25
11 files changed, 27472 insertions, 24885 deletions
diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm
index 9d87a0e2c..a7ad859f6 100644
--- a/test/emcc_hello_world.fromasm
+++ b/test/emcc_hello_world.fromasm
@@ -296,26 +296,20 @@
(set_local $1
(i32.const 87)
)
- (set_local $0
- (i32.const 775)
- )
(br $__rjti$1)
)
)
- (if
+ (br_if $__rjti$1
(get_local $1)
- (block
- (set_local $0
- (i32.const 775)
- )
- (br $__rjti$1)
- )
- (set_local $0
- (i32.const 775)
- )
+ )
+ (set_local $0
+ (i32.const 775)
)
(br $__rjto$1)
)
+ (set_local $0
+ (i32.const 775)
+ )
(loop $while-in1
(loop $while-in3
(set_local $2
@@ -956,35 +950,34 @@
(get_local $5)
)
)
- (if (result i32)
- (i32.eq
- (get_local $4)
- (i32.const 2)
- )
- (block (result i32)
- (i32.store
- (get_local $6)
- (i32.add
- (i32.load
- (get_local $6)
+ (block (result i32)
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.const 2)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.add
+ (i32.load
+ (get_local $6)
+ )
+ (get_local $3)
)
- (get_local $3)
+ )
+ (set_local $7
+ (get_local $5)
+ )
+ (set_local $4
+ (i32.const 2)
)
)
(set_local $7
(get_local $5)
)
- (set_local $4
- (i32.const 2)
- )
- (get_local $3)
- )
- (block (result i32)
- (set_local $7
- (get_local $5)
- )
- (get_local $3)
)
+ (get_local $3)
)
)
)
@@ -1861,7 +1854,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -1871,12 +1864,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -1919,20 +1906,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u
@@ -2921,34 +2905,31 @@
(get_local $6)
)
)
- (set_local $1
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $11
- (i32.or
- (get_local $1)
- (i32.const 8192)
- )
- )
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (if
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
+ )
+ (block
+ (set_local $11
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
)
- (get_local $8)
)
- (block (result i32)
- (set_local $11
- (get_local $1)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
)
- (get_local $8)
)
)
+ (set_local $11
+ (get_local $1)
+ )
+ )
+ (set_local $1
+ (get_local $8)
)
)
(if
@@ -3788,13 +3769,6 @@
)
)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
(block
(set_local $5
@@ -3803,15 +3777,15 @@
(set_local $7
(get_local $11)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $9
+ (i32.const 4091)
+ )
+ (br $__rjti$8)
)
(set_local $5
(i32.load
@@ -3870,7 +3844,6 @@
(set_local $9
(i32.const 4092)
)
- (br $__rjti$4)
)
(block
(set_local $8
@@ -3888,9 +3861,9 @@
(get_local $9)
)
)
- (br $__rjti$4)
)
)
+ (br $__rjti$4)
)
(set_local $5
(i32.load
@@ -6615,7 +6588,6 @@
(set_local $9
(i32.const 4091)
)
- (br $__rjti$8)
)
(block
(set_local $8
@@ -6630,9 +6602,9 @@
(i32.const 4091)
)
)
- (br $__rjti$8)
)
)
+ (br $__rjti$8)
)
)
)
@@ -6898,7 +6870,7 @@
)
)
)
- (if (result i32)
+ (if
(i32.or
(get_local $6)
(tee_local $12
@@ -6920,7 +6892,7 @@
)
)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $5)
)
@@ -6948,18 +6920,17 @@
)
)
)
- (get_local $22)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $22)
)
(set_local $12
(i32.const 0)
)
- (get_local $22)
)
)
+ (get_local $22)
)
)
(call $_pad
@@ -7865,258 +7836,274 @@
(local $16 i32)
(local $17 i32)
(local $18 i32)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (block $folding-inner0
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8127,9 +8114,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8144,310 +8131,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8458,9 +8445,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8475,163 +8462,135 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
+ (get_local $5)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -8639,719 +8598,733 @@
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $9
- (i32.const 0)
- )
- (br $do-once4)
- )
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $9
+ (i32.const 0)
+ )
+ (br $do-once4)
)
- (br $while-in7)
)
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ )
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
)
)
)
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
+ (set_local $0
+ (get_local $4)
)
)
- (set_local $0
- (get_local $4)
- )
+ )
+ (set_local $0
+ (get_local $4)
)
)
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(set_local $0
- (get_local $4)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
- (i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $6
- (i32.const 0)
- )
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $6
+ (i32.const 0)
+ )
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
+ (if
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
)
- (br $__rjti$3)
- )
- (block
- (set_local $3
- (get_local $4)
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
)
- (set_local $1
- (get_local $0)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9359,134 +9332,148 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
- )
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
+ (if
+ (get_local $6)
+ (block
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $0
+ (get_local $1)
+ )
)
- (set_local $0
- (get_local $9)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $4
- (i32.const 0)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- )
- (if
- (i32.and
- (i32.eqz
- (get_local $4)
- )
- (i32.eqz
- (get_local $0)
+ (block
+ (set_local $4
+ (i32.const 0)
+ )
+ (set_local $0
+ (i32.const 0)
+ )
)
)
- (block
- (if
+ (if
+ (i32.and
(i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (get_local $4)
+ )
+ (i32.eqz
+ (get_local $0)
+ )
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $1)
)
)
)
)
- )
- (block
- (set_local $0
- (get_local $2)
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9497,9 +9484,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9514,177 +9501,149 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
+ (if
+ (get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
)
- (set_local $3
- (get_local $4)
+ (set_local $4
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
- )
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
)
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
+ (set_local $3
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $0)
+ )
)
)
- )
- (if
- (get_local $4)
(if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (get_local $2)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
+ (get_local $4)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -9692,1758 +9651,1694 @@
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $11
- (i32.const 0)
- )
- (br $do-once17)
- )
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $11
+ (i32.const 0)
+ )
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $11
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
- (br $while-in28)
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
- )
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
+ (set_local $0
+ (get_local $2)
+ )
)
(set_local $0
(get_local $2)
)
)
- (set_local $0
- (get_local $2)
- )
)
- )
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (get_local $2)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $1
- (i32.load
- (i32.const 184)
- )
- )
- (get_local $0)
- )
- (block
- (set_local $2
- (i32.load
- (i32.const 196)
+ (if
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (i32.const 184)
+ )
)
+ (get_local $0)
)
- (if
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (block
+ (set_local $2
+ (i32.load
+ (i32.const 196)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 196)
- (tee_local $1
- (i32.add
- (get_local $2)
+ (if
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 184)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 196)
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 184)
(get_local $3)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $1)
+ (get_local $3)
+ )
(get_local $3)
)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $2)
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
+ (i32.load
+ (i32.const 188)
+ )
)
+ (get_local $0)
)
- (get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 648)
)
)
- (i32.store
- (i32.const 200)
- (tee_local $1
+ (if
+ (i32.and
(i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
+ (tee_local $1
+ (call $_sysconf
+ (i32.const 30)
)
)
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
- )
- )
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 648)
- )
- )
- (if
- (i32.and
- (i32.add
- (tee_local $1
- (call $_sysconf
- (i32.const 30)
- )
+ (i32.const -1)
)
- (i32.const -1)
- )
- (get_local $1)
- )
- (call $_abort)
- (block
- (i32.store
- (i32.const 656)
(get_local $1)
)
- (i32.store
- (i32.const 652)
- (get_local $1)
- )
- (i32.store
- (i32.const 660)
- (i32.const -1)
- )
- (i32.store
- (i32.const 664)
- (i32.const -1)
- )
- (i32.store
- (i32.const 668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 620)
- (i32.const 0)
- )
- (i32.store
- (i32.const 648)
- (i32.xor
- (i32.and
- (call $_time
- (i32.const 0)
+ (call $_abort)
+ (block
+ (i32.store
+ (i32.const 656)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 652)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 660)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 664)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 620)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 648)
+ (i32.xor
+ (i32.and
+ (call $_time
+ (i32.const 0)
+ )
+ (i32.const -16)
)
- (i32.const -16)
+ (i32.const 1431655768)
)
- (i32.const 1431655768)
)
)
)
)
- )
- (if
- (i32.le_u
- (tee_local $5
- (i32.and
- (tee_local $6
- (i32.add
- (tee_local $1
- (i32.load
- (i32.const 656)
+ (if
+ (i32.le_u
+ (tee_local $5
+ (i32.and
+ (tee_local $6
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (i32.const 656)
+ )
)
- )
- (tee_local $8
- (i32.add
- (get_local $0)
- (i32.const 47)
+ (tee_local $8
+ (i32.add
+ (get_local $0)
+ (i32.const 47)
+ )
)
)
)
- )
- (tee_local $9
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (tee_local $9
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
)
+ (get_local $0)
)
- (get_local $0)
- )
- (return
- (i32.const 0)
- )
- )
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
+ (return
+ (i32.const 0)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $1
- (i32.add
- (tee_local $3
- (i32.load
- (i32.const 608)
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $1
+ (i32.add
+ (tee_local $3
+ (i32.load
+ (i32.const 608)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
+ (get_local $3)
+ )
+ (i32.gt_u
+ (get_local $1)
+ (get_local $2)
)
- (get_local $3)
)
- (i32.gt_u
- (get_local $1)
- (get_local $2)
+ (return
+ (i32.const 0)
)
)
- (return
- (i32.const 0)
- )
)
- )
- (set_local $11
- (i32.add
- (get_local $0)
- (i32.const 48)
+ (set_local $11
+ (i32.add
+ (get_local $0)
+ (i32.const 48)
+ )
)
- )
- (block $__rjto$13
- (block $__rjti$13
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (i32.const 620)
+ (block $__rjto$13
+ (block $__rjti$13
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (block
- (block $label$break$L279
- (block $__rjti$5
- (block $__rjti$4
- (br_if $__rjti$4
- (i32.eqz
- (tee_local $4
- (i32.load
- (i32.const 200)
+ (block
+ (block $label$break$L279
+ (block $__rjti$5
+ (block $__rjti$4
+ (br_if $__rjti$4
+ (i32.eqz
+ (tee_local $4
+ (i32.load
+ (i32.const 200)
+ )
)
)
)
- )
- (set_local $1
- (i32.const 624)
- )
- (loop $while-in34
- (block $while-out33
- (if
- (i32.le_u
- (tee_local $3
- (i32.load
- (get_local $1)
- )
- )
- (get_local $4)
- )
+ (set_local $1
+ (i32.const 624)
+ )
+ (loop $while-in34
+ (block $while-out33
(if
- (i32.gt_u
- (i32.add
- (get_local $3)
+ (i32.le_u
+ (tee_local $3
(i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (get_local $1)
+ )
+ )
+ (get_local $4)
+ )
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $3)
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
+ )
)
)
)
+ (get_local $4)
+ )
+ (block
+ (set_local $4
+ (get_local $1)
+ )
+ (br $while-out33)
)
- (get_local $4)
)
- (block
- (set_local $4
+ )
+ (br_if $while-in34
+ (tee_local $1
+ (i32.load offset=8
(get_local $1)
)
- (br $while-out33)
)
)
+ (br $__rjti$4)
)
- (br_if $while-in34
- (tee_local $1
- (i32.load offset=8
- (get_local $1)
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.sub
+ (get_local $6)
+ (i32.load
+ (i32.const 188)
+ )
+ )
+ (get_local $9)
)
)
+ (i32.const 2147483647)
)
- (br $__rjti$4)
- )
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.sub
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $1
+ (call $_sbrk
+ (get_local $3)
+ )
+ )
+ (i32.add
(i32.load
- (i32.const 188)
+ (get_local $4)
+ )
+ (i32.load
+ (get_local $2)
)
)
- (get_local $9)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $1
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.ne
+ (get_local $1)
+ (i32.const -1)
)
)
- (i32.add
- (i32.load
- (get_local $4)
- )
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (get_local $1)
)
+ (br $__rjti$5)
)
)
- (br_if $__rjti$13
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- )
- (block
- (set_local $2
- (get_local $1)
- )
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
- )
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (if
- (i32.ne
- (tee_local $1
- (call $_sbrk
- (i32.const 0)
+ (if
+ (i32.ne
+ (tee_local $1
+ (call $_sbrk
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $2
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 652)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $2
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 652)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $3
+ (get_local $1)
)
)
- (tee_local $3
- (get_local $1)
- )
- )
- (i32.add
- (i32.sub
- (get_local $5)
- (get_local $3)
- )
- (i32.and
- (i32.add
- (get_local $2)
+ (i32.add
+ (i32.sub
+ (get_local $5)
(get_local $3)
)
- (i32.sub
- (i32.const 0)
- (get_local $4)
+ (i32.and
+ (i32.add
+ (get_local $2)
+ (get_local $3)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $9
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 608)
+ (set_local $9
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 608)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $3)
- (get_local $0)
- )
- (i32.lt_u
(get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $0)
)
- (br_if $label$break$L279
- (i32.or
- (i32.le_u
- (get_local $9)
- (get_local $4)
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
+ )
+ )
+ (block
+ (if
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
)
- (i32.gt_u
- (get_local $9)
- (get_local $2)
+ )
+ (br_if $label$break$L279
+ (i32.or
+ (i32.le_u
+ (get_local $9)
+ (get_local $4)
+ )
+ (i32.gt_u
+ (get_local $9)
+ (get_local $2)
+ )
)
)
)
- )
- (br_if $__rjti$13
- (i32.eq
- (tee_local $2
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.eq
+ (tee_local $2
+ (call $_sbrk
+ (get_local $3)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
+ (br $__rjti$5)
)
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
)
)
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (set_local $1
+ (get_local $3)
)
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
(get_local $1)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
+ )
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.eq
+ (call $_sbrk
(get_local $3)
)
+ (i32.const -1)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (i32.const -1)
- )
- (block
- (drop
- (call $_sbrk
- (get_local $4)
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
)
)
- (br $label$break$L279)
)
(set_local $3
- (i32.add
- (get_local $3)
- (get_local $1)
- )
+ (get_local $1)
)
)
(set_local $3
(get_local $1)
)
)
- (set_local $3
- (get_local $1)
- )
- )
- (if
- (i32.ne
- (get_local $2)
- (i32.const -1)
- )
- (block
- (set_local $1
+ (if
+ (i32.ne
(get_local $2)
+ (i32.const -1)
+ )
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (br $__rjti$13)
)
- (br $__rjti$13)
)
)
- )
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 2147483647)
- )
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $_sbrk
- (get_local $5)
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $_sbrk
+ (get_local $5)
+ )
)
- )
- (tee_local $3
- (call $_sbrk
- (i32.const 0)
+ (tee_local $3
+ (call $_sbrk
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $3)
- (i32.const -1)
- )
- )
- )
- (br_if $__rjti$13
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $3)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $3)
+ (i32.const -1)
)
)
- (i32.add
- (get_local $0)
- (i32.const 40)
+ )
+ (br_if $__rjti$13
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $0)
+ (i32.const 40)
+ )
)
)
)
)
+ (br $__rjto$13)
)
- (br $__rjto$13)
- )
- (i32.store
- (i32.const 608)
- (tee_local $2
- (i32.add
- (i32.load
- (i32.const 608)
+ (i32.store
+ (i32.const 608)
+ (tee_local $2
+ (i32.add
+ (i32.load
+ (i32.const 608)
+ )
+ (get_local $3)
)
- (get_local $3)
- )
- )
- )
- (if
- (i32.gt_u
- (get_local $2)
- (i32.load
- (i32.const 612)
)
)
- (i32.store
- (i32.const 612)
- (get_local $2)
- )
- )
- (block $do-once40
(if
- (tee_local $6
+ (i32.gt_u
+ (get_local $2)
(i32.load
- (i32.const 200)
+ (i32.const 612)
)
)
- (block
- (set_local $2
- (i32.const 624)
+ (i32.store
+ (i32.const 612)
+ (get_local $2)
+ )
+ )
+ (block $do-once40
+ (if
+ (tee_local $6
+ (i32.load
+ (i32.const 200)
+ )
)
- (block $__rjto$10
- (block $__rjti$10
- (loop $while-in45
- (br_if $__rjti$10
- (i32.eq
- (get_local $1)
- (i32.add
- (tee_local $11
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 624)
+ )
+ (block $__rjto$10
+ (block $__rjti$10
+ (loop $while-in45
+ (br_if $__rjti$10
+ (i32.eq
+ (get_local $1)
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $5
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $5
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
)
- )
- (br_if $while-in45
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in45
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
- )
- (br $__rjto$10)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
+ (br $__rjto$10)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $6)
- (get_local $1)
- )
- (i32.ge_u
- (get_local $6)
- (get_local $11)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $4)
- (i32.add
- (get_local $5)
- (get_local $3)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $6)
+ (get_local $1)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $6)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 8)
+ (get_local $11)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $6)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
- )
- (set_local $1
- (i32.add
- (i32.sub
- (get_local $3)
- (get_local $1)
- )
- (i32.load
- (i32.const 188)
+ (set_local $1
+ (i32.add
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.load
+ (i32.const 188)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store
- (i32.const 188)
- (get_local $1)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 188)
(get_local $1)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $1)
+ (i32.or
+ (get_local $1)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
+ (br $do-once40)
)
- (br $do-once40)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (tee_local $4
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (tee_local $4
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (block
+ (i32.store
(i32.const 192)
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $1)
)
)
)
- (block
- (i32.store
- (i32.const 192)
- (get_local $1)
- )
- (set_local $4
+ (set_local $11
+ (i32.add
(get_local $1)
+ (get_local $3)
)
)
- )
- (set_local $11
- (i32.add
- (get_local $1)
- (get_local $3)
+ (set_local $2
+ (i32.const 624)
)
- )
- (set_local $2
- (i32.const 624)
- )
- (block $__rjto$11
- (block $__rjti$11
- (loop $while-in47
- (if
- (i32.eq
- (i32.load
- (get_local $2)
+ (block $__rjto$11
+ (block $__rjti$11
+ (loop $while-in47
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $5
+ (get_local $2)
+ )
+ (br $__rjti$11)
)
- (get_local $11)
)
- (block
- (set_local $5
- (get_local $2)
+ (br_if $while-in47
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
- (br $__rjti$11)
+ )
+ (set_local $4
+ (i32.const 624)
)
)
- (br_if $while-in47
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
- )
+ (br $__rjto$11)
+ )
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
)
+ (i32.const 8)
)
(set_local $4
(i32.const 624)
)
- )
- (br $__rjto$11)
- )
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
- (set_local $4
- (i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11458,1919 +11353,1948 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (if
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ (set_local $0
(get_local $3)
)
+ (block
+ (set_local $12
+ (i32.const 0)
+ )
+ (br $do-once55)
+ )
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
)
+ (call $_abort)
(block
- (set_local $12
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once55)
+ (set_local $12
+ (get_local $1)
+ )
)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
)
- (br $while-in68)
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $4)
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $4)
+ )
)
+ (get_local $6)
)
- (get_local $6)
- )
- (br_if $while-out69
- (i32.gt_u
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $4)
+ (br_if $while-out69
+ (i32.gt_u
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $4)
+ )
)
)
+ (get_local $6)
)
- (get_local $6)
)
)
- )
- (set_local $4
- (i32.load offset=8
- (get_local $4)
+ (set_local $4
+ (i32.load offset=8
+ (get_local $4)
+ )
)
+ (br $while-in70)
)
- (br $while-in70)
)
- )
- (set_local $10
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const -47)
+ (set_local $10
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $12
- (i32.add
- (tee_local $11
- (select
- (get_local $6)
- (tee_local $4
- (i32.add
- (get_local $4)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $12
+ (i32.add
+ (tee_local $11
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.add
+ (get_local $4)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $10)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $10)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $10)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $4)
- (tee_local $10
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $10
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $5
- (i32.add
- (get_local $1)
- (tee_local $4
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $5
+ (i32.add
+ (get_local $1)
+ (tee_local $4
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $4
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $4
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $4)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
(get_local $4)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $5)
+ (get_local $4)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $5)
- (get_local $4)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $11)
+ (i32.const 4)
+ )
+ )
+ (i32.const 27)
)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $11)
- (i32.const 4)
+ (i32.store
+ (get_local $12)
+ (i32.load
+ (i32.const 624)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $12)
- (i32.load
+ (i32.store offset=4
+ (get_local $12)
+ (i32.load
+ (i32.const 628)
+ )
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (i32.load
+ (i32.const 632)
+ )
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (i32.load
+ (i32.const 636)
+ )
+ )
+ (i32.store
(i32.const 624)
+ (get_local $1)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 628)
+ (get_local $3)
)
- )
- (i32.store offset=8
- (get_local $12)
- (i32.load
- (i32.const 632)
- )
- )
- (i32.store offset=12
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 636)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 632)
- (get_local $12)
- )
- (set_local $1
- (i32.add
- (get_local $11)
- (i32.const 24)
- )
- )
- (loop $while-in72
(i32.store
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 632)
+ (get_local $12)
)
- (br_if $while-in72
- (i32.lt_u
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- (get_local $2)
+ (set_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $11)
- (get_local $6)
- )
- (block
+ (loop $while-in72
(i32.store
- (get_local $4)
- (i32.and
- (i32.load
- (get_local $4)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (tee_local $5
- (i32.sub
- (get_local $11)
- (get_local $6)
- )
+ (br_if $while-in72
+ (i32.lt_u
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $2)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $11)
- (get_local $5)
- )
- (set_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 3)
- )
+ (get_local $6)
)
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.and
+ (i32.load
+ (get_local $4)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $2
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (get_local $11)
+ (get_local $6)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $1
+ )
+ (i32.store
+ (get_local $11)
+ (get_local $5)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 256)
+ )
+ (block
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $1
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
+ )
(set_local $17
- (get_local $3)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $7
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $1)
- )
- )
- (set_local $17
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $7
- (get_local $2)
- )
)
+ (i32.store
+ (get_local $17)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $17)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $7)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
- (br $do-once40)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (if (result i32)
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
(if (result i32)
- (i32.gt_u
- (get_local $5)
- (i32.const 16777215)
+ (tee_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $5)
- (i32.add
- (tee_local $1
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $5)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $5)
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $1)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $1)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $1)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $1)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $1)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=20
- (get_local $6)
- (i32.const 0)
- )
- (i32.store
- (get_local $10)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 180)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $10)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $4)
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $3)
- (get_local $1)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once40)
)
- )
- (set_local $4
- (i32.shl
- (get_local $5)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $4
+ (i32.shl
+ (get_local $5)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $4)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $4)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.load
- (get_local $2)
+ (set_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$9
- (block $__rjti$9
- (loop $while-in74
- (br_if $__rjti$9
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (block $__rjto$9
+ (block $__rjti$9
+ (loop $while-in74
+ (br_if $__rjti$9
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $2
- (i32.shl
- (get_local $4)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $4)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $4
- (i32.add
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $4
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $4)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $4
+ (get_local $2)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in74)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $4
- (get_local $2)
+ (i32.store
+ (get_local $4)
+ (get_local $6)
)
- (set_local $1
- (get_local $3)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $1)
)
- (br $while-in74)
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
)
+ (br $__rjto$9)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $4
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $1)
+ (get_local $3)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $4)
(get_local $6)
)
- (i32.store offset=24
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $6)
+ (i32.store
+ (get_local $2)
(get_local $6)
)
(i32.store offset=8
(get_local $6)
- (get_local $6)
+ (get_local $4)
)
- (br $do-once40)
- )
- )
- (br $__rjto$9)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $4
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $1)
)
- (tee_local $3
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $1)
- (get_local $3)
- )
- )
- (block
- (i32.store offset=12
- (get_local $4)
- (get_local $6)
- )
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $2
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $2
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (i32.lt_u
+ (get_local $1)
+ (get_local $2)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 192)
(get_local $1)
- (get_local $2)
)
)
(i32.store
- (i32.const 192)
+ (i32.const 624)
(get_local $1)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 212)
- (i32.load
- (i32.const 648)
+ (i32.store
+ (i32.const 628)
+ (get_local $3)
)
- )
- (i32.store
- (i32.const 208)
- (i32.const -1)
- )
- (set_local $2
- (i32.const 0)
- )
- (loop $while-in43
- (i32.store offset=12
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $2)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (i32.store
+ (i32.const 636)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 212)
+ (i32.load
+ (i32.const 648)
)
- (get_local $4)
)
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
+ (i32.store
+ (i32.const 208)
+ (i32.const -1)
)
- (br_if $while-in43
- (i32.ne
- (tee_local $2
+ (set_local $2
+ (i32.const 0)
+ )
+ (loop $while-in43
+ (i32.store offset=12
+ (tee_local $4
(i32.add
- (get_local $2)
- (i32.const 1)
+ (i32.shl
+ (get_local $2)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
)
- (i32.const 32)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $4)
+ )
+ (br_if $while-in43
+ (i32.ne
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.const 32)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $2
- (i32.add
- (get_local $1)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $1
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $1
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $1)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
(get_local $1)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $2)
- (get_local $1)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
)
- (i32.store
- (i32.const 204)
+ )
+ )
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
(i32.load
- (i32.const 664)
+ (i32.const 188)
)
)
+ (get_local $0)
)
)
)
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
- )
- )
+ (i32.store
+ (call $___errno_location)
+ (i32.const 12)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ (i32.store
+ (i32.const 188)
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (tee_local $1
- (i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
- )
- )
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ )
+ )
+ (i32.store
+ (i32.const 200)
+ (tee_local $1
+ (i32.add
+ (tee_local $2
+ (i32.load
+ (i32.const 200)
)
)
+ (get_local $0)
)
)
)
- (i32.store
- (call $___errno_location)
- (i32.const 12)
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
- (i32.const 0)
)
(func $_free (param $0 i32)
(local $1 i32)
diff --git a/test/emcc_hello_world.fromasm.clamp b/test/emcc_hello_world.fromasm.clamp
index 24b65fc1f..80a1f92b2 100644
--- a/test/emcc_hello_world.fromasm.clamp
+++ b/test/emcc_hello_world.fromasm.clamp
@@ -294,26 +294,20 @@
(set_local $1
(i32.const 87)
)
- (set_local $0
- (i32.const 775)
- )
(br $__rjti$1)
)
)
- (if
+ (br_if $__rjti$1
(get_local $1)
- (block
- (set_local $0
- (i32.const 775)
- )
- (br $__rjti$1)
- )
- (set_local $0
- (i32.const 775)
- )
+ )
+ (set_local $0
+ (i32.const 775)
)
(br $__rjto$1)
)
+ (set_local $0
+ (i32.const 775)
+ )
(loop $while-in1
(loop $while-in3
(set_local $2
@@ -954,35 +948,34 @@
(get_local $5)
)
)
- (if (result i32)
- (i32.eq
- (get_local $4)
- (i32.const 2)
- )
- (block (result i32)
- (i32.store
- (get_local $6)
- (i32.add
- (i32.load
- (get_local $6)
+ (block (result i32)
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.const 2)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.add
+ (i32.load
+ (get_local $6)
+ )
+ (get_local $3)
)
- (get_local $3)
+ )
+ (set_local $7
+ (get_local $5)
+ )
+ (set_local $4
+ (i32.const 2)
)
)
(set_local $7
(get_local $5)
)
- (set_local $4
- (i32.const 2)
- )
- (get_local $3)
- )
- (block (result i32)
- (set_local $7
- (get_local $5)
- )
- (get_local $3)
)
+ (get_local $3)
)
)
)
@@ -1859,7 +1852,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -1869,12 +1862,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -1917,20 +1904,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u
@@ -2945,34 +2929,31 @@
(get_local $6)
)
)
- (set_local $1
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $11
- (i32.or
- (get_local $1)
- (i32.const 8192)
- )
- )
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (if
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
+ )
+ (block
+ (set_local $11
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
)
- (get_local $8)
)
- (block (result i32)
- (set_local $11
- (get_local $1)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
)
- (get_local $8)
)
)
+ (set_local $11
+ (get_local $1)
+ )
+ )
+ (set_local $1
+ (get_local $8)
)
)
(if
@@ -3812,13 +3793,6 @@
)
)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
(block
(set_local $5
@@ -3827,15 +3801,15 @@
(set_local $7
(get_local $11)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $9
+ (i32.const 4091)
+ )
+ (br $__rjti$8)
)
(set_local $5
(i32.load
@@ -3894,7 +3868,6 @@
(set_local $9
(i32.const 4092)
)
- (br $__rjti$4)
)
(block
(set_local $8
@@ -3912,9 +3885,9 @@
(get_local $9)
)
)
- (br $__rjti$4)
)
)
+ (br $__rjti$4)
)
(set_local $5
(i32.load
@@ -6639,7 +6612,6 @@
(set_local $9
(i32.const 4091)
)
- (br $__rjti$8)
)
(block
(set_local $8
@@ -6654,9 +6626,9 @@
(i32.const 4091)
)
)
- (br $__rjti$8)
)
)
+ (br $__rjti$8)
)
)
)
@@ -6922,7 +6894,7 @@
)
)
)
- (if (result i32)
+ (if
(i32.or
(get_local $6)
(tee_local $12
@@ -6944,7 +6916,7 @@
)
)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $5)
)
@@ -6972,18 +6944,17 @@
)
)
)
- (get_local $22)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $22)
)
(set_local $12
(i32.const 0)
)
- (get_local $22)
)
)
+ (get_local $22)
)
)
(call $_pad
@@ -7889,258 +7860,274 @@
(local $16 i32)
(local $17 i32)
(local $18 i32)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (block $folding-inner0
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8151,9 +8138,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8168,310 +8155,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8482,9 +8469,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8499,163 +8486,135 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
+ (get_local $5)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -8663,719 +8622,733 @@
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $9
- (i32.const 0)
- )
- (br $do-once4)
- )
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $9
+ (i32.const 0)
+ )
+ (br $do-once4)
)
- (br $while-in7)
)
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ )
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
)
)
)
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
+ (set_local $0
+ (get_local $4)
)
)
- (set_local $0
- (get_local $4)
- )
+ )
+ (set_local $0
+ (get_local $4)
)
)
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(set_local $0
- (get_local $4)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
- (i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $6
- (i32.const 0)
- )
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $6
+ (i32.const 0)
+ )
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
+ (if
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
)
- (br $__rjti$3)
- )
- (block
- (set_local $3
- (get_local $4)
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
)
- (set_local $1
- (get_local $0)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9383,134 +9356,148 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
- )
- )
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
+ (if
+ (get_local $6)
+ (block
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $0
+ (get_local $1)
+ )
)
- (set_local $0
- (get_local $9)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $4
- (i32.const 0)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- )
- (if
- (i32.and
- (i32.eqz
- (get_local $4)
- )
- (i32.eqz
- (get_local $0)
+ (block
+ (set_local $4
+ (i32.const 0)
+ )
+ (set_local $0
+ (i32.const 0)
+ )
)
)
- (block
- (if
+ (if
+ (i32.and
(i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (get_local $4)
+ )
+ (i32.eqz
+ (get_local $0)
+ )
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $1)
)
)
)
)
- )
- (block
- (set_local $0
- (get_local $2)
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9521,9 +9508,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9538,177 +9525,149 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
+ (if
+ (get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
)
- (set_local $3
- (get_local $4)
+ (set_local $4
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
- )
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
)
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
+ (set_local $3
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $0)
+ )
)
)
- )
- (if
- (get_local $4)
(if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (get_local $2)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
+ (get_local $4)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -9716,1758 +9675,1694 @@
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $11
- (i32.const 0)
- )
- (br $do-once17)
- )
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $11
+ (i32.const 0)
+ )
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $11
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
)
- (br $while-in28)
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
- )
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
+ (set_local $0
+ (get_local $2)
+ )
)
(set_local $0
(get_local $2)
)
)
- (set_local $0
- (get_local $2)
- )
)
- )
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (get_local $2)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $1
- (i32.load
- (i32.const 184)
- )
- )
- (get_local $0)
- )
- (block
- (set_local $2
- (i32.load
- (i32.const 196)
+ (if
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (i32.const 184)
+ )
)
+ (get_local $0)
)
- (if
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (block
+ (set_local $2
+ (i32.load
+ (i32.const 196)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 196)
- (tee_local $1
- (i32.add
- (get_local $2)
+ (if
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 184)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 196)
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 184)
(get_local $3)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $1)
+ (get_local $3)
+ )
(get_local $3)
)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $2)
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
+ (i32.load
+ (i32.const 188)
+ )
)
+ (get_local $0)
)
- (get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 648)
)
)
- (i32.store
- (i32.const 200)
- (tee_local $1
+ (if
+ (i32.and
(i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
+ (tee_local $1
+ (call $_sysconf
+ (i32.const 30)
)
)
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
- )
- )
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 648)
- )
- )
- (if
- (i32.and
- (i32.add
- (tee_local $1
- (call $_sysconf
- (i32.const 30)
- )
+ (i32.const -1)
)
- (i32.const -1)
- )
- (get_local $1)
- )
- (call $_abort)
- (block
- (i32.store
- (i32.const 656)
(get_local $1)
)
- (i32.store
- (i32.const 652)
- (get_local $1)
- )
- (i32.store
- (i32.const 660)
- (i32.const -1)
- )
- (i32.store
- (i32.const 664)
- (i32.const -1)
- )
- (i32.store
- (i32.const 668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 620)
- (i32.const 0)
- )
- (i32.store
- (i32.const 648)
- (i32.xor
- (i32.and
- (call $_time
- (i32.const 0)
+ (call $_abort)
+ (block
+ (i32.store
+ (i32.const 656)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 652)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 660)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 664)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 620)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 648)
+ (i32.xor
+ (i32.and
+ (call $_time
+ (i32.const 0)
+ )
+ (i32.const -16)
)
- (i32.const -16)
+ (i32.const 1431655768)
)
- (i32.const 1431655768)
)
)
)
)
- )
- (if
- (i32.le_u
- (tee_local $5
- (i32.and
- (tee_local $6
- (i32.add
- (tee_local $1
- (i32.load
- (i32.const 656)
+ (if
+ (i32.le_u
+ (tee_local $5
+ (i32.and
+ (tee_local $6
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (i32.const 656)
+ )
)
- )
- (tee_local $8
- (i32.add
- (get_local $0)
- (i32.const 47)
+ (tee_local $8
+ (i32.add
+ (get_local $0)
+ (i32.const 47)
+ )
)
)
)
- )
- (tee_local $9
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (tee_local $9
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
)
+ (get_local $0)
)
- (get_local $0)
- )
- (return
- (i32.const 0)
- )
- )
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
+ (return
+ (i32.const 0)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $1
- (i32.add
- (tee_local $3
- (i32.load
- (i32.const 608)
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $1
+ (i32.add
+ (tee_local $3
+ (i32.load
+ (i32.const 608)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
+ (get_local $3)
+ )
+ (i32.gt_u
+ (get_local $1)
+ (get_local $2)
)
- (get_local $3)
)
- (i32.gt_u
- (get_local $1)
- (get_local $2)
+ (return
+ (i32.const 0)
)
)
- (return
- (i32.const 0)
- )
)
- )
- (set_local $11
- (i32.add
- (get_local $0)
- (i32.const 48)
+ (set_local $11
+ (i32.add
+ (get_local $0)
+ (i32.const 48)
+ )
)
- )
- (block $__rjto$13
- (block $__rjti$13
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (i32.const 620)
+ (block $__rjto$13
+ (block $__rjti$13
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (block
- (block $label$break$L279
- (block $__rjti$5
- (block $__rjti$4
- (br_if $__rjti$4
- (i32.eqz
- (tee_local $4
- (i32.load
- (i32.const 200)
+ (block
+ (block $label$break$L279
+ (block $__rjti$5
+ (block $__rjti$4
+ (br_if $__rjti$4
+ (i32.eqz
+ (tee_local $4
+ (i32.load
+ (i32.const 200)
+ )
)
)
)
- )
- (set_local $1
- (i32.const 624)
- )
- (loop $while-in34
- (block $while-out33
- (if
- (i32.le_u
- (tee_local $3
- (i32.load
- (get_local $1)
- )
- )
- (get_local $4)
- )
+ (set_local $1
+ (i32.const 624)
+ )
+ (loop $while-in34
+ (block $while-out33
(if
- (i32.gt_u
- (i32.add
- (get_local $3)
+ (i32.le_u
+ (tee_local $3
(i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (get_local $1)
+ )
+ )
+ (get_local $4)
+ )
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $3)
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
+ )
)
)
)
+ (get_local $4)
+ )
+ (block
+ (set_local $4
+ (get_local $1)
+ )
+ (br $while-out33)
)
- (get_local $4)
)
- (block
- (set_local $4
+ )
+ (br_if $while-in34
+ (tee_local $1
+ (i32.load offset=8
(get_local $1)
)
- (br $while-out33)
)
)
+ (br $__rjti$4)
)
- (br_if $while-in34
- (tee_local $1
- (i32.load offset=8
- (get_local $1)
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.sub
+ (get_local $6)
+ (i32.load
+ (i32.const 188)
+ )
+ )
+ (get_local $9)
)
)
+ (i32.const 2147483647)
)
- (br $__rjti$4)
- )
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.sub
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $1
+ (call $_sbrk
+ (get_local $3)
+ )
+ )
+ (i32.add
(i32.load
- (i32.const 188)
+ (get_local $4)
+ )
+ (i32.load
+ (get_local $2)
)
)
- (get_local $9)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $1
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.ne
+ (get_local $1)
+ (i32.const -1)
)
)
- (i32.add
- (i32.load
- (get_local $4)
- )
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (get_local $1)
)
+ (br $__rjti$5)
)
)
- (br_if $__rjti$13
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- )
- (block
- (set_local $2
- (get_local $1)
- )
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
- )
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (if
- (i32.ne
- (tee_local $1
- (call $_sbrk
- (i32.const 0)
+ (if
+ (i32.ne
+ (tee_local $1
+ (call $_sbrk
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $2
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 652)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $2
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 652)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $3
+ (get_local $1)
)
)
- (tee_local $3
- (get_local $1)
- )
- )
- (i32.add
- (i32.sub
- (get_local $5)
- (get_local $3)
- )
- (i32.and
- (i32.add
- (get_local $2)
+ (i32.add
+ (i32.sub
+ (get_local $5)
(get_local $3)
)
- (i32.sub
- (i32.const 0)
- (get_local $4)
+ (i32.and
+ (i32.add
+ (get_local $2)
+ (get_local $3)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $9
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 608)
+ (set_local $9
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 608)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $3)
- (get_local $0)
- )
- (i32.lt_u
(get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $0)
)
- (br_if $label$break$L279
- (i32.or
- (i32.le_u
- (get_local $9)
- (get_local $4)
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
+ )
+ )
+ (block
+ (if
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
)
- (i32.gt_u
- (get_local $9)
- (get_local $2)
+ )
+ (br_if $label$break$L279
+ (i32.or
+ (i32.le_u
+ (get_local $9)
+ (get_local $4)
+ )
+ (i32.gt_u
+ (get_local $9)
+ (get_local $2)
+ )
)
)
)
- )
- (br_if $__rjti$13
- (i32.eq
- (tee_local $2
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.eq
+ (tee_local $2
+ (call $_sbrk
+ (get_local $3)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
+ (br $__rjti$5)
)
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
)
)
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (set_local $1
+ (get_local $3)
)
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
(get_local $1)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
+ )
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.eq
+ (call $_sbrk
(get_local $3)
)
+ (i32.const -1)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (i32.const -1)
- )
- (block
- (drop
- (call $_sbrk
- (get_local $4)
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
)
)
- (br $label$break$L279)
)
(set_local $3
- (i32.add
- (get_local $3)
- (get_local $1)
- )
+ (get_local $1)
)
)
(set_local $3
(get_local $1)
)
)
- (set_local $3
- (get_local $1)
- )
- )
- (if
- (i32.ne
- (get_local $2)
- (i32.const -1)
- )
- (block
- (set_local $1
+ (if
+ (i32.ne
(get_local $2)
+ (i32.const -1)
+ )
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (br $__rjti$13)
)
- (br $__rjti$13)
)
)
- )
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 2147483647)
- )
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $_sbrk
- (get_local $5)
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $_sbrk
+ (get_local $5)
+ )
)
- )
- (tee_local $3
- (call $_sbrk
- (i32.const 0)
+ (tee_local $3
+ (call $_sbrk
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $3)
- (i32.const -1)
- )
- )
- )
- (br_if $__rjti$13
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $3)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $3)
+ (i32.const -1)
)
)
- (i32.add
- (get_local $0)
- (i32.const 40)
+ )
+ (br_if $__rjti$13
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $0)
+ (i32.const 40)
+ )
)
)
)
)
+ (br $__rjto$13)
)
- (br $__rjto$13)
- )
- (i32.store
- (i32.const 608)
- (tee_local $2
- (i32.add
- (i32.load
- (i32.const 608)
+ (i32.store
+ (i32.const 608)
+ (tee_local $2
+ (i32.add
+ (i32.load
+ (i32.const 608)
+ )
+ (get_local $3)
)
- (get_local $3)
- )
- )
- )
- (if
- (i32.gt_u
- (get_local $2)
- (i32.load
- (i32.const 612)
)
)
- (i32.store
- (i32.const 612)
- (get_local $2)
- )
- )
- (block $do-once40
(if
- (tee_local $6
+ (i32.gt_u
+ (get_local $2)
(i32.load
- (i32.const 200)
+ (i32.const 612)
)
)
- (block
- (set_local $2
- (i32.const 624)
+ (i32.store
+ (i32.const 612)
+ (get_local $2)
+ )
+ )
+ (block $do-once40
+ (if
+ (tee_local $6
+ (i32.load
+ (i32.const 200)
+ )
)
- (block $__rjto$10
- (block $__rjti$10
- (loop $while-in45
- (br_if $__rjti$10
- (i32.eq
- (get_local $1)
- (i32.add
- (tee_local $11
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 624)
+ )
+ (block $__rjto$10
+ (block $__rjti$10
+ (loop $while-in45
+ (br_if $__rjti$10
+ (i32.eq
+ (get_local $1)
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $5
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $5
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
)
- )
- (br_if $while-in45
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in45
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
- )
- (br $__rjto$10)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
+ (br $__rjto$10)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $6)
- (get_local $1)
- )
- (i32.ge_u
- (get_local $6)
- (get_local $11)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $4)
- (i32.add
- (get_local $5)
- (get_local $3)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $6)
+ (get_local $1)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $6)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 8)
+ (get_local $11)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $6)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
- )
- (set_local $1
- (i32.add
- (i32.sub
- (get_local $3)
- (get_local $1)
- )
- (i32.load
- (i32.const 188)
+ (set_local $1
+ (i32.add
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.load
+ (i32.const 188)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store
- (i32.const 188)
- (get_local $1)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 188)
(get_local $1)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $1)
+ (i32.or
+ (get_local $1)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
+ (br $do-once40)
)
- (br $do-once40)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (tee_local $4
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (tee_local $4
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (block
+ (i32.store
(i32.const 192)
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $1)
)
)
)
- (block
- (i32.store
- (i32.const 192)
- (get_local $1)
- )
- (set_local $4
+ (set_local $11
+ (i32.add
(get_local $1)
+ (get_local $3)
)
)
- )
- (set_local $11
- (i32.add
- (get_local $1)
- (get_local $3)
+ (set_local $2
+ (i32.const 624)
)
- )
- (set_local $2
- (i32.const 624)
- )
- (block $__rjto$11
- (block $__rjti$11
- (loop $while-in47
- (if
- (i32.eq
- (i32.load
- (get_local $2)
+ (block $__rjto$11
+ (block $__rjti$11
+ (loop $while-in47
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $5
+ (get_local $2)
+ )
+ (br $__rjti$11)
)
- (get_local $11)
)
- (block
- (set_local $5
- (get_local $2)
+ (br_if $while-in47
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
- (br $__rjti$11)
+ )
+ (set_local $4
+ (i32.const 624)
)
)
- (br_if $while-in47
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
- )
+ (br $__rjto$11)
+ )
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
)
+ (i32.const 8)
)
(set_local $4
(i32.const 624)
)
- )
- (br $__rjto$11)
- )
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
- (set_local $4
- (i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11482,1919 +11377,1948 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (if
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ (set_local $0
(get_local $3)
)
+ (block
+ (set_local $12
+ (i32.const 0)
+ )
+ (br $do-once55)
+ )
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
)
+ (call $_abort)
(block
- (set_local $12
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once55)
+ (set_local $12
+ (get_local $1)
+ )
)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
)
- (br $while-in68)
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $4)
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $4)
+ )
)
+ (get_local $6)
)
- (get_local $6)
- )
- (br_if $while-out69
- (i32.gt_u
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $4)
+ (br_if $while-out69
+ (i32.gt_u
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $4)
+ )
)
)
+ (get_local $6)
)
- (get_local $6)
)
)
- )
- (set_local $4
- (i32.load offset=8
- (get_local $4)
+ (set_local $4
+ (i32.load offset=8
+ (get_local $4)
+ )
)
+ (br $while-in70)
)
- (br $while-in70)
)
- )
- (set_local $10
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const -47)
+ (set_local $10
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $12
- (i32.add
- (tee_local $11
- (select
- (get_local $6)
- (tee_local $4
- (i32.add
- (get_local $4)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $12
+ (i32.add
+ (tee_local $11
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.add
+ (get_local $4)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $10)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $10)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $10)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $4)
- (tee_local $10
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $10
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $5
- (i32.add
- (get_local $1)
- (tee_local $4
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $5
+ (i32.add
+ (get_local $1)
+ (tee_local $4
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $4
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $4
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $4)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
(get_local $4)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $5)
+ (get_local $4)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $5)
- (get_local $4)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $11)
+ (i32.const 4)
+ )
+ )
+ (i32.const 27)
)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $11)
- (i32.const 4)
+ (i32.store
+ (get_local $12)
+ (i32.load
+ (i32.const 624)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $12)
- (i32.load
+ (i32.store offset=4
+ (get_local $12)
+ (i32.load
+ (i32.const 628)
+ )
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (i32.load
+ (i32.const 632)
+ )
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (i32.load
+ (i32.const 636)
+ )
+ )
+ (i32.store
(i32.const 624)
+ (get_local $1)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 628)
+ (get_local $3)
)
- )
- (i32.store offset=8
- (get_local $12)
- (i32.load
- (i32.const 632)
- )
- )
- (i32.store offset=12
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 636)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 632)
- (get_local $12)
- )
- (set_local $1
- (i32.add
- (get_local $11)
- (i32.const 24)
- )
- )
- (loop $while-in72
(i32.store
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 632)
+ (get_local $12)
)
- (br_if $while-in72
- (i32.lt_u
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- (get_local $2)
+ (set_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $11)
- (get_local $6)
- )
- (block
+ (loop $while-in72
(i32.store
- (get_local $4)
- (i32.and
- (i32.load
- (get_local $4)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (tee_local $5
- (i32.sub
- (get_local $11)
- (get_local $6)
- )
+ (br_if $while-in72
+ (i32.lt_u
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $2)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $11)
- (get_local $5)
- )
- (set_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 3)
- )
+ (get_local $6)
)
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.and
+ (i32.load
+ (get_local $4)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $2
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (get_local $11)
+ (get_local $6)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $1
+ )
+ (i32.store
+ (get_local $11)
+ (get_local $5)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 256)
+ )
+ (block
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $1
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
+ )
(set_local $17
- (get_local $3)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $7
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $1)
- )
- )
- (set_local $17
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $7
- (get_local $2)
- )
)
+ (i32.store
+ (get_local $17)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $17)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $7)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
- (br $do-once40)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (if (result i32)
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
(if (result i32)
- (i32.gt_u
- (get_local $5)
- (i32.const 16777215)
+ (tee_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $5)
- (i32.add
- (tee_local $1
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $5)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $5)
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $1)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $1)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $1)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $1)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $1)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=20
- (get_local $6)
- (i32.const 0)
- )
- (i32.store
- (get_local $10)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 180)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $10)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $4)
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $3)
- (get_local $1)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once40)
)
- )
- (set_local $4
- (i32.shl
- (get_local $5)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $4
+ (i32.shl
+ (get_local $5)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $4)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $4)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.load
- (get_local $2)
+ (set_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$9
- (block $__rjti$9
- (loop $while-in74
- (br_if $__rjti$9
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (block $__rjto$9
+ (block $__rjti$9
+ (loop $while-in74
+ (br_if $__rjti$9
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $2
- (i32.shl
- (get_local $4)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $4)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $4
- (i32.add
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $4
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $4)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $4
+ (get_local $2)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in74)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $4
- (get_local $2)
+ (i32.store
+ (get_local $4)
+ (get_local $6)
)
- (set_local $1
- (get_local $3)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $1)
)
- (br $while-in74)
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
)
+ (br $__rjto$9)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $4
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $1)
+ (get_local $3)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $4)
(get_local $6)
)
- (i32.store offset=24
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $6)
+ (i32.store
+ (get_local $2)
(get_local $6)
)
(i32.store offset=8
(get_local $6)
- (get_local $6)
+ (get_local $4)
)
- (br $do-once40)
- )
- )
- (br $__rjto$9)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $4
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $1)
)
- (tee_local $3
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $1)
- (get_local $3)
- )
- )
- (block
- (i32.store offset=12
- (get_local $4)
- (get_local $6)
- )
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $2
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $2
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (i32.lt_u
+ (get_local $1)
+ (get_local $2)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 192)
(get_local $1)
- (get_local $2)
)
)
(i32.store
- (i32.const 192)
+ (i32.const 624)
(get_local $1)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 212)
- (i32.load
- (i32.const 648)
+ (i32.store
+ (i32.const 628)
+ (get_local $3)
)
- )
- (i32.store
- (i32.const 208)
- (i32.const -1)
- )
- (set_local $2
- (i32.const 0)
- )
- (loop $while-in43
- (i32.store offset=12
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $2)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (i32.store
+ (i32.const 636)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 212)
+ (i32.load
+ (i32.const 648)
)
- (get_local $4)
)
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
+ (i32.store
+ (i32.const 208)
+ (i32.const -1)
)
- (br_if $while-in43
- (i32.ne
- (tee_local $2
+ (set_local $2
+ (i32.const 0)
+ )
+ (loop $while-in43
+ (i32.store offset=12
+ (tee_local $4
(i32.add
- (get_local $2)
- (i32.const 1)
+ (i32.shl
+ (get_local $2)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
)
- (i32.const 32)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $4)
+ )
+ (br_if $while-in43
+ (i32.ne
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.const 32)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $2
- (i32.add
- (get_local $1)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $1
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $1
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $1)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
(get_local $1)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $2)
- (get_local $1)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
)
- (i32.store
- (i32.const 204)
+ )
+ )
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
(i32.load
- (i32.const 664)
+ (i32.const 188)
)
)
+ (get_local $0)
)
)
)
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
- )
- )
+ (i32.store
+ (call $___errno_location)
+ (i32.const 12)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ (i32.store
+ (i32.const 188)
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (tee_local $1
- (i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
- )
- )
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ )
+ )
+ (i32.store
+ (i32.const 200)
+ (tee_local $1
+ (i32.add
+ (tee_local $2
+ (i32.load
+ (i32.const 200)
)
)
+ (get_local $0)
)
)
)
- (i32.store
- (call $___errno_location)
- (i32.const 12)
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
- (i32.const 0)
)
(func $_free (param $0 i32)
(local $1 i32)
diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise
index ed7ba8aa4..65fda0e77 100644
--- a/test/emcc_hello_world.fromasm.imprecise
+++ b/test/emcc_hello_world.fromasm.imprecise
@@ -293,26 +293,20 @@
(set_local $1
(i32.const 87)
)
- (set_local $0
- (i32.const 775)
- )
(br $__rjti$1)
)
)
- (if
+ (br_if $__rjti$1
(get_local $1)
- (block
- (set_local $0
- (i32.const 775)
- )
- (br $__rjti$1)
- )
- (set_local $0
- (i32.const 775)
- )
+ )
+ (set_local $0
+ (i32.const 775)
)
(br $__rjto$1)
)
+ (set_local $0
+ (i32.const 775)
+ )
(loop $while-in1
(loop $while-in3
(set_local $2
@@ -953,35 +947,34 @@
(get_local $5)
)
)
- (if (result i32)
- (i32.eq
- (get_local $4)
- (i32.const 2)
- )
- (block (result i32)
- (i32.store
- (get_local $6)
- (i32.add
- (i32.load
- (get_local $6)
+ (block (result i32)
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.const 2)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.add
+ (i32.load
+ (get_local $6)
+ )
+ (get_local $3)
)
- (get_local $3)
+ )
+ (set_local $7
+ (get_local $5)
+ )
+ (set_local $4
+ (i32.const 2)
)
)
(set_local $7
(get_local $5)
)
- (set_local $4
- (i32.const 2)
- )
- (get_local $3)
- )
- (block (result i32)
- (set_local $7
- (get_local $5)
- )
- (get_local $3)
)
+ (get_local $3)
)
)
)
@@ -1858,7 +1851,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -1868,12 +1861,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -1916,20 +1903,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u
@@ -2866,34 +2850,31 @@
(get_local $6)
)
)
- (set_local $1
- (if (result i32)
- (i32.lt_s
- (get_local $14)
- (i32.const 0)
- )
- (block (result i32)
- (set_local $11
- (i32.or
- (get_local $1)
- (i32.const 8192)
- )
- )
- (set_local $14
- (i32.sub
- (i32.const 0)
- (get_local $14)
- )
+ (if
+ (i32.lt_s
+ (get_local $14)
+ (i32.const 0)
+ )
+ (block
+ (set_local $11
+ (i32.or
+ (get_local $1)
+ (i32.const 8192)
)
- (get_local $8)
)
- (block (result i32)
- (set_local $11
- (get_local $1)
+ (set_local $14
+ (i32.sub
+ (i32.const 0)
+ (get_local $14)
)
- (get_local $8)
)
)
+ (set_local $11
+ (get_local $1)
+ )
+ )
+ (set_local $1
+ (get_local $8)
)
)
(if
@@ -3733,13 +3714,6 @@
)
)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
(block
(set_local $5
@@ -3748,15 +3722,15 @@
(set_local $7
(get_local $11)
)
- (set_local $8
- (i32.const 0)
- )
- (set_local $9
- (i32.const 4091)
- )
- (br $__rjti$8)
)
)
+ (set_local $8
+ (i32.const 0)
+ )
+ (set_local $9
+ (i32.const 4091)
+ )
+ (br $__rjti$8)
)
(set_local $5
(i32.load
@@ -3815,7 +3789,6 @@
(set_local $9
(i32.const 4092)
)
- (br $__rjti$4)
)
(block
(set_local $8
@@ -3833,9 +3806,9 @@
(get_local $9)
)
)
- (br $__rjti$4)
)
)
+ (br $__rjti$4)
)
(set_local $5
(i32.load
@@ -6554,7 +6527,6 @@
(set_local $9
(i32.const 4091)
)
- (br $__rjti$8)
)
(block
(set_local $8
@@ -6569,9 +6541,9 @@
(i32.const 4091)
)
)
- (br $__rjti$8)
)
)
+ (br $__rjti$8)
)
)
)
@@ -6837,7 +6809,7 @@
)
)
)
- (if (result i32)
+ (if
(i32.or
(get_local $6)
(tee_local $12
@@ -6859,7 +6831,7 @@
)
)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $5)
)
@@ -6887,18 +6859,17 @@
)
)
)
- (get_local $22)
)
- (block (result i32)
+ (block
(set_local $7
(get_local $22)
)
(set_local $12
(i32.const 0)
)
- (get_local $22)
)
)
+ (get_local $22)
)
)
(call $_pad
@@ -7804,258 +7775,274 @@
(local $16 i32)
(local $17 i32)
(local $18 i32)
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
- )
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $11
- (i32.load
- (i32.const 176)
+ (block $folding-inner0
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $13
- (i32.shr_u
- (tee_local $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $13
+ (i32.shr_u
+ (tee_local $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $10
- (i32.load
- (tee_local $1
- (i32.add
- (tee_local $7
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $10
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (tee_local $7
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $13)
)
- (get_local $13)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $10)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 192)
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
+ (i32.const -1)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $7)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $2)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $7)
)
- (i32.store
- (get_local $3)
- (get_local $10)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $10)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (tee_local $0
- (i32.shl
- (get_local $4)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $7)
+ (i32.add
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(get_local $0)
)
- (i32.const 4)
+ (i32.const 1)
)
)
- (i32.or
- (i32.load
- (get_local $0)
- )
- (i32.const 1)
+ (return
+ (get_local $1)
)
)
- (return
- (get_local $1)
- )
)
- )
- (if
- (i32.gt_u
- (get_local $4)
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (if
+ (i32.gt_u
+ (get_local $4)
+ (tee_local $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $10
- (i32.and
- (i32.shr_u
- (tee_local $3
- (i32.add
- (i32.and
- (tee_local $3
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $13)
- )
- (i32.or
- (tee_local $3
- (i32.shl
- (i32.const 2)
- (get_local $13)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $10
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.add
+ (i32.and
+ (tee_local $3
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $13)
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
+ (i32.or
+ (tee_local $3
+ (i32.shl
+ (i32.const 2)
+ (get_local $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $3)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $9
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $10
- (i32.add
- (i32.shl
- (tee_local $5
- (i32.add
- (i32.or
+ (set_local $9
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $10
+ (i32.add
+ (i32.shl
+ (tee_local $5
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $3)
+ (get_local $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $10)
+ )
(tee_local $3
(i32.and
(i32.shr_u
(tee_local $7
(i32.shr_u
+ (get_local $7)
(get_local $3)
- (get_local $10)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $10)
)
(tee_local $3
(i32.and
@@ -8066,9 +8053,9 @@
(get_local $3)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8083,310 +8070,310 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (tee_local $7
- (i32.shr_u
- (get_local $7)
- (get_local $3)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $7)
- (get_local $3)
+ (i32.shr_u
+ (get_local $7)
+ (get_local $3)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 216)
)
- (i32.const 216)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (get_local $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $5)
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (get_local $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $5)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $8
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
- )
+ (set_local $8
+ (get_local $0)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $12)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $0)
- (get_local $10)
- )
- (i32.store
- (get_local $3)
- (get_local $9)
- )
- (set_local $8
+ (if
+ (i32.eq
(i32.load
- (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
+ )
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $9)
+ )
+ (set_local $8
+ (i32.load
+ (i32.const 184)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (get_local $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $10
- (i32.add
- (get_local $12)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
(get_local $4)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $5
- (i32.sub
- (i32.shl
- (get_local $5)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $10
+ (i32.add
+ (get_local $12)
(get_local $4)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $10)
- (get_local $5)
- )
- (get_local $5)
- )
- (if
- (get_local $8)
- (block
- (set_local $12
- (i32.load
- (i32.const 196)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $8)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (i32.shl
+ (get_local $5)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $4)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (get_local $5)
+ )
+ (if
+ (get_local $8)
+ (block
+ (set_local $12
+ (i32.load
+ (i32.const 196)
)
- (tee_local $0
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $0)
+ )
+ )
(set_local $2
- (get_local $3)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $1
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $0)
- )
- )
- (set_local $2
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $1
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $2)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $12)
- )
- (i32.store offset=8
- (get_local $12)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $12)
- (get_local $4)
+ (i32.store
+ (get_local $2)
+ (get_local $12)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $12)
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 184)
- (get_local $5)
- )
- (i32.store
- (i32.const 196)
- (get_local $10)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 184)
+ (get_local $5)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $10)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $0
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $2
- (i32.and
- (i32.shr_u
- (tee_local $0
- (i32.add
- (i32.and
- (get_local $0)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $2
+ (i32.and
+ (i32.shr_u
+ (tee_local $0
+ (i32.add
+ (i32.and
(get_local $0)
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.shr_u
+ (get_local $0)
+ (get_local $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $2)
+ )
(tee_local $0
(i32.and
(i32.shr_u
(tee_local $1
(i32.shr_u
+ (get_local $1)
(get_local $0)
- (get_local $2)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $2)
)
(tee_local $0
(i32.and
@@ -8397,9 +8384,9 @@
(get_local $0)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -8414,163 +8401,135 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (get_local $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (tee_local $0
- (i32.load offset=16
- (get_local $1)
- )
- )
- )
+ (set_local $1
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $0)
+ )
+ (loop $while-in
+ (block $while-out
(if
(i32.eqz
(tee_local $0
- (i32.load offset=20
+ (i32.load offset=16
(get_local $1)
)
)
)
- (block
- (set_local $10
- (get_local $7)
+ (if
+ (i32.eqz
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $1)
+ )
+ )
)
- (set_local $5
- (get_local $2)
+ (block
+ (set_local $10
+ (get_local $7)
+ )
+ (set_local $5
+ (get_local $2)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $10
- (i32.lt_u
- (tee_local $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $10
+ (i32.lt_u
+ (tee_local $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $4)
)
- (get_local $4)
)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $7
- (select
- (get_local $1)
- (get_local $7)
- (get_local $10)
+ (set_local $7
+ (select
+ (get_local $1)
+ (get_local $7)
+ (get_local $10)
+ )
)
- )
- (set_local $1
- (get_local $0)
- )
- (set_local $2
- (select
+ (set_local $1
(get_local $0)
- (get_local $2)
- (get_local $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $5)
- (tee_local $12
- (i32.load
- (i32.const 192)
+ (set_local $2
+ (select
+ (get_local $0)
+ (get_local $2)
+ (get_local $10)
+ )
)
+ (br $while-in)
)
)
- (call $_abort)
- )
- (if
- (i32.ge_u
- (get_local $5)
- (tee_local $11
- (i32.add
- (get_local $5)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $8
- (i32.load offset=24
- (get_local $5)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $5)
+ (tee_local $11
+ (i32.add
(get_local $5)
+ (get_local $4)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $8
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
)
)
+ (get_local $5)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -8578,719 +8537,733 @@
(tee_local $0
(i32.add
(get_local $5)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $9
- (i32.const 0)
- )
- (br $do-once4)
- )
- )
- )
- (loop $while-in7
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $2)
- )
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $9
+ (i32.const 0)
+ )
+ (br $do-once4)
)
- (br $while-in7)
)
)
- (if
- (tee_local $2
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $1
- (get_local $2)
+ (if
+ (tee_local $2
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $7)
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $7)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $9
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $7
- (i32.load offset=8
- (get_local $5)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $9
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $7)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $7
+ (i32.load offset=8
+ (get_local $5)
)
)
+ (get_local $12)
)
- (get_local $5)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $7)
+ (i32.const 12)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $2)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $7)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $5)
)
- (set_local $9
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $7)
+ )
+ (set_local $9
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $8)
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
+ (block $do-once8
+ (if
+ (get_local $8)
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $9)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
)
+ (get_local $5)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $9)
+ )
+ (i32.store offset=20
+ (get_local $8)
+ (get_local $9)
)
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $9)
- )
- (i32.store offset=20
- (get_local $8)
- (get_local $9)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $9)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $9)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $9)
- (get_local $8)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $5)
- )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $8)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $5)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $9)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $9)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $5)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $5)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $9)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $9)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $9)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $10)
- (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (get_local $4)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $5)
- (get_local $0)
+ (i32.add
+ (get_local $5)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $10)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
+ (get_local $4)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (get_local $10)
+ (i32.or
+ (get_local $10)
+ (i32.const 1)
+ )
)
- (get_local $10)
- )
- (if
- (tee_local $0
- (i32.load
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (get_local $11)
+ (get_local $10)
)
+ (get_local $10)
)
- (block
- (set_local $4
+ (if
+ (tee_local $0
(i32.load
- (i32.const 196)
+ (i32.const 184)
)
)
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $4
+ (i32.load
+ (i32.const 196)
)
- (i32.const 216)
)
- )
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $6
+ (get_local $1)
+ )
+ (set_local $3
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $6
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $3
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $6
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $3
- (get_local $2)
- )
)
- )
- (i32.store
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $4)
- )
- (i32.store offset=8
- (get_local $4)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $4)
- (get_local $2)
+ (i32.store
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $4)
+ (get_local $2)
+ )
)
)
+ (i32.store
+ (i32.const 184)
+ (get_local $10)
+ )
+ (i32.store
+ (i32.const 196)
+ (get_local $11)
+ )
)
- (i32.store
- (i32.const 184)
- (get_local $10)
- )
- (i32.store
- (i32.const 196)
- (get_local $11)
+ )
+ (return
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
)
)
)
- (return
- (i32.add
- (get_local $5)
- (i32.const 8)
- )
+ (set_local $0
+ (get_local $4)
)
)
- (set_local $0
- (get_local $4)
- )
+ )
+ (set_local $0
+ (get_local $4)
)
)
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
+ )
(set_local $0
- (get_local $4)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $0
- (i32.const -1)
- )
- (block
- (set_local $2
- (i32.and
- (tee_local $0
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $2
+ (i32.and
+ (tee_local $0
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
+ (i32.const -8)
)
- (i32.const -8)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 180)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (block
- (set_local $14
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $0)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $14
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (set_local $3
- (i32.sub
- (i32.const 0)
- (get_local $2)
+ (set_local $3
+ (i32.sub
+ (i32.const 0)
+ (get_local $2)
+ )
)
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (tee_local $0
- (i32.load offset=480
- (i32.shl
- (get_local $14)
- (i32.const 2)
+ (block $__rjto$3
+ (block $__rjti$3
+ (if
+ (tee_local $0
+ (i32.load offset=480
+ (i32.shl
+ (get_local $14)
+ (i32.const 2)
+ )
)
)
- )
- (block
- (set_local $6
- (i32.const 0)
- )
- (set_local $8
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $6
+ (i32.const 0)
+ )
+ (set_local $8
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $14)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $14)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $14)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (tee_local $9
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (tee_local $9
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (if
- (i32.eq
- (get_local $9)
- (get_local $2)
- )
- (block
- (set_local $1
- (get_local $4)
- )
- (set_local $3
- (get_local $0)
+ (if
+ (i32.eq
+ (get_local $9)
+ (get_local $2)
)
- (br $__rjti$3)
- )
- (block
- (set_local $3
- (get_local $4)
+ (block
+ (set_local $1
+ (get_local $4)
+ )
+ (set_local $3
+ (get_local $0)
+ )
+ (br $__rjti$3)
)
- (set_local $1
- (get_local $0)
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $0)
+ )
)
)
)
- )
- (set_local $0
- (select
- (get_local $6)
- (tee_local $4
- (i32.load offset=20
- (get_local $0)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $0)
+ )
)
- (i32.eq
- (get_local $4)
- (tee_local $9
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $4)
+ )
+ (i32.eq
+ (get_local $4)
+ (tee_local $9
+ (i32.load
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $8)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -9298,134 +9271,148 @@
)
)
)
- )
- (set_local $4
- (i32.shl
- (get_local $8)
- (i32.xor
- (tee_local $6
- (i32.eqz
- (get_local $9)
+ (set_local $4
+ (i32.shl
+ (get_local $8)
+ (i32.xor
+ (tee_local $6
+ (i32.eqz
+ (get_local $9)
+ )
)
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (if
- (get_local $6)
- (block
- (set_local $4
- (get_local $0)
- )
- (set_local $0
- (get_local $1)
)
)
- (block
- (set_local $6
- (get_local $0)
- )
- (set_local $8
- (get_local $4)
+ (if
+ (get_local $6)
+ (block
+ (set_local $4
+ (get_local $0)
+ )
+ (set_local $0
+ (get_local $1)
+ )
)
- (set_local $0
- (get_local $9)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $8
+ (get_local $4)
+ )
+ (set_local $0
+ (get_local $9)
+ )
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $4
- (i32.const 0)
- )
- (set_local $0
- (i32.const 0)
- )
- )
- )
- (if
- (i32.and
- (i32.eqz
- (get_local $4)
- )
- (i32.eqz
- (get_local $0)
+ (block
+ (set_local $4
+ (i32.const 0)
+ )
+ (set_local $0
+ (i32.const 0)
+ )
)
)
- (block
- (if
+ (if
+ (i32.and
(i32.eqz
- (tee_local $1
- (i32.and
- (get_local $18)
- (i32.or
- (tee_local $1
- (i32.shl
- (i32.const 2)
- (get_local $14)
+ (get_local $4)
+ )
+ (i32.eqz
+ (get_local $0)
+ )
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.and
+ (get_local $18)
+ (i32.or
+ (tee_local $1
+ (i32.shl
+ (i32.const 2)
+ (get_local $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $1)
)
)
)
)
- )
- (block
- (set_local $0
- (get_local $2)
+ (block
+ (set_local $0
+ (get_local $2)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $9
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.add
- (i32.and
- (get_local $1)
- (i32.sub
- (i32.const 0)
+ (set_local $9
+ (i32.and
+ (i32.shr_u
+ (tee_local $1
+ (i32.add
+ (i32.and
(get_local $1)
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $1)
+ (get_local $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $9)
+ )
(tee_local $1
(i32.and
(i32.shr_u
(tee_local $4
(i32.shr_u
+ (get_local $4)
(get_local $1)
- (get_local $9)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $9)
)
(tee_local $1
(i32.and
@@ -9436,9 +9423,9 @@
(get_local $1)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
@@ -9453,177 +9440,149 @@
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $4
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $4)
+ (get_local $1)
+ )
)
- (i32.shr_u
- (get_local $4)
- (get_local $1)
- )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (if
- (get_local $4)
- (block
- (set_local $1
- (get_local $3)
+ (if
+ (get_local $4)
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $4)
+ )
+ (br $__rjti$3)
)
- (set_local $3
- (get_local $4)
+ (set_local $4
+ (get_local $0)
)
- (br $__rjti$3)
- )
- (set_local $4
- (get_local $0)
)
+ (br $__rjto$3)
)
- (br $__rjto$3)
- )
- (loop $while-in16
- (set_local $9
- (i32.lt_u
- (tee_local $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $3)
+ (loop $while-in16
+ (set_local $9
+ (i32.lt_u
+ (tee_local $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $2)
)
- (get_local $2)
)
+ (get_local $1)
)
- (get_local $1)
- )
- )
- (set_local $1
- (select
- (get_local $4)
- (get_local $1)
- (get_local $9)
)
- )
- (set_local $0
- (select
- (get_local $3)
- (get_local $0)
- (get_local $9)
+ (set_local $1
+ (select
+ (get_local $4)
+ (get_local $1)
+ (get_local $9)
+ )
)
- )
- (if
- (tee_local $4
- (i32.load offset=16
+ (set_local $0
+ (select
(get_local $3)
+ (get_local $0)
+ (get_local $9)
)
)
- (block
- (set_local $3
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load offset=16
+ (get_local $3)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- )
- (br_if $while-in16
- (tee_local $3
- (i32.load offset=20
- (get_local $3)
+ (br_if $while-in16
+ (tee_local $3
+ (i32.load offset=20
+ (get_local $3)
+ )
)
)
- )
- (set_local $3
- (get_local $1)
- )
- (set_local $4
- (get_local $0)
+ (set_local $3
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $0)
+ )
)
)
- )
- (if
- (get_local $4)
(if
- (i32.lt_u
- (get_local $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (get_local $2)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $4)
- (tee_local $12
- (i32.load
- (i32.const 192)
- )
+ (get_local $4)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
)
+ (get_local $2)
)
- (call $_abort)
)
- (if
- (i32.ge_u
- (get_local $4)
- (tee_local $6
- (i32.add
- (get_local $4)
- (get_local $2)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $12
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (set_local $9
- (i32.load offset=24
- (get_local $4)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $4)
+ (tee_local $6
+ (i32.add
(get_local $4)
+ (get_local $2)
)
)
+ )
+ (call $_abort)
+ )
+ (set_local $9
+ (i32.load offset=24
(get_local $4)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $4)
- (i32.const 20)
- )
- )
- )
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $4)
)
)
+ (get_local $4)
+ )
+ (block
(if
(i32.eqz
(tee_local $1
@@ -9631,1758 +9590,1694 @@
(tee_local $0
(i32.add
(get_local $4)
- (i32.const 16)
+ (i32.const 20)
)
)
)
)
)
- (block
- (set_local $11
- (i32.const 0)
- )
- (br $do-once17)
- )
- )
- )
- (loop $while-in20
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 20)
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $4)
+ (i32.const 16)
+ )
+ )
)
)
)
- )
- (block
- (set_local $1
- (get_local $7)
- )
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $11
+ (i32.const 0)
+ )
+ (br $do-once17)
)
- (br $while-in20)
)
)
- (if
- (tee_local $7
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $1
- (get_local $7)
+ (if
+ (tee_local $7
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $10)
+ (block
+ (set_local $1
+ (get_local $7)
+ )
+ (set_local $0
+ (get_local $10)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $0)
- (i32.const 0)
- )
- (set_local $11
- (get_local $1)
+ (get_local $12)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $10
- (i32.load offset=8
- (get_local $4)
+ (call $_abort)
+ (block
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (set_local $11
+ (get_local $1)
)
)
- (get_local $12)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $10)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $10
+ (i32.load offset=8
+ (get_local $4)
)
)
+ (get_local $12)
)
- (get_local $4)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $10)
+ (i32.const 12)
+ )
)
)
+ (get_local $4)
)
- (get_local $4)
+ (call $_abort)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $0)
- )
- (i32.store
- (get_local $1)
- (get_local $10)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $4)
)
- (set_local $11
- (get_local $0)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $0)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $10)
+ )
+ (set_local $11
+ (get_local $0)
+ )
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $9)
- (block
- (if
- (i32.eq
- (get_local $4)
- (i32.load
- (tee_local $0
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $4)
+ (block $do-once21
+ (if
+ (get_local $9)
+ (block
+ (if
+ (i32.eq
+ (get_local $4)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $4)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $0)
(get_local $11)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $9)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $9)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $9)
+ (i32.const 16)
+ )
)
)
+ (get_local $4)
+ )
+ (i32.store
+ (get_local $0)
+ (get_local $11)
+ )
+ (i32.store offset=20
+ (get_local $9)
+ (get_local $11)
)
- (get_local $4)
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=20
- (get_local $9)
- (get_local $11)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $11)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $11)
- (tee_local $0
- (i32.load
- (i32.const 192)
+ (if
+ (i32.lt_u
+ (get_local $11)
+ (tee_local $0
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (call $_abort)
)
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $9)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $4)
- )
+ (i32.store offset=24
+ (get_local $11)
+ (get_local $9)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $0)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $4)
+ )
)
- (call $_abort)
- (block
- (i32.store offset=16
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $0)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=16
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $11)
+ )
)
)
)
- )
- (if
- (tee_local $0
- (i32.load offset=20
- (get_local $4)
- )
- )
(if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
+ (tee_local $0
+ (i32.load offset=20
+ (get_local $4)
)
)
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $11)
+ (if
+ (i32.lt_u
(get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=24
- (get_local $0)
- (get_local $11)
+ (call $_abort)
+ (block
+ (i32.store offset=20
+ (get_local $11)
+ (get_local $0)
+ )
+ (i32.store offset=24
+ (get_local $0)
+ (get_local $11)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $3)
- (get_local $2)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (get_local $2)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $4)
- (get_local $0)
+ (i32.add
+ (get_local $4)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (get_local $4)
- (i32.or
- (get_local $2)
- (i32.const 3)
)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $4)
+ (i32.or
+ (get_local $2)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $6)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
(get_local $3)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $3)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $0
+ (block
+ (set_local $3
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $0
+ (i32.and
+ (tee_local $1
(i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $13
+ (get_local $1)
+ )
+ (set_local $5
+ (get_local $0)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
+ )
(set_local $13
- (get_local $1)
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
(set_local $5
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
- )
- )
- (set_local $13
- (i32.add
(get_local $3)
- (i32.const 8)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (i32.store
+ (get_local $13)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $5)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $5)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $3)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $13)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $5)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $5)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $3)
- )
- (br $do-once25)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $7
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $3)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $7
(if (result i32)
- (i32.gt_u
- (get_local $3)
- (i32.const 16777215)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $3)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $3)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $3)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once25)
)
- )
- (set_local $7
- (i32.shl
- (get_local $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $7
+ (i32.shl
+ (get_local $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $7)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $7)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $2)
+ (set_local $0
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $7
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $7
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $7)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $7
+ (get_local $2)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in28)
+ )
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (call $_abort)
(block
- (set_local $7
- (get_local $2)
+ (i32.store
+ (get_local $7)
+ (get_local $6)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $0)
)
- (br $while-in28)
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once25)
)
)
+ (br $__rjto$1)
)
(if
- (i32.lt_u
- (get_local $7)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $6)
+ )
(i32.store
- (get_local $7)
+ (get_local $3)
(get_local $6)
)
- (i32.store offset=24
+ (i32.store offset=8
(get_local $6)
- (get_local $0)
+ (get_local $2)
)
(i32.store offset=12
(get_local $6)
- (get_local $6)
+ (get_local $0)
)
- (i32.store offset=8
- (get_local $6)
+ (i32.store offset=24
(get_local $6)
+ (i32.const 0)
)
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
- )
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $6)
- )
- (i32.store
- (get_local $3)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
)
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
+ (set_local $0
+ (get_local $2)
+ )
)
(set_local $0
(get_local $2)
)
)
- (set_local $0
- (get_local $2)
- )
)
- )
- (set_local $0
- (get_local $2)
+ (set_local $0
+ (get_local $2)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $1
- (i32.load
- (i32.const 184)
- )
- )
- (get_local $0)
- )
- (block
- (set_local $2
- (i32.load
- (i32.const 196)
+ (if
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (i32.const 184)
+ )
)
+ (get_local $0)
)
- (if
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (block
+ (set_local $2
+ (i32.load
+ (i32.const 196)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 196)
- (tee_local $1
- (i32.add
- (get_local $2)
+ (if
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 184)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 196)
+ (tee_local $1
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 184)
(get_local $3)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $1)
+ (get_local $3)
+ )
(get_local $3)
)
- (get_local $3)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 184)
- (i32.const 0)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $0
(i32.add
- (get_local $2)
- (get_local $1)
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $0)
+ (i32.or
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
+ (i32.load
+ (i32.const 188)
+ )
)
+ (get_local $0)
)
- (get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 648)
)
)
- (i32.store
- (i32.const 200)
- (tee_local $1
+ (if
+ (i32.and
(i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
+ (tee_local $1
+ (call $_sysconf
+ (i32.const 30)
)
)
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
- )
- )
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 648)
- )
- )
- (if
- (i32.and
- (i32.add
- (tee_local $1
- (call $_sysconf
- (i32.const 30)
- )
+ (i32.const -1)
)
- (i32.const -1)
- )
- (get_local $1)
- )
- (call $_abort)
- (block
- (i32.store
- (i32.const 656)
(get_local $1)
)
- (i32.store
- (i32.const 652)
- (get_local $1)
- )
- (i32.store
- (i32.const 660)
- (i32.const -1)
- )
- (i32.store
- (i32.const 664)
- (i32.const -1)
- )
- (i32.store
- (i32.const 668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 620)
- (i32.const 0)
- )
- (i32.store
- (i32.const 648)
- (i32.xor
- (i32.and
- (call $_time
- (i32.const 0)
+ (call $_abort)
+ (block
+ (i32.store
+ (i32.const 656)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 652)
+ (get_local $1)
+ )
+ (i32.store
+ (i32.const 660)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 664)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 620)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 648)
+ (i32.xor
+ (i32.and
+ (call $_time
+ (i32.const 0)
+ )
+ (i32.const -16)
)
- (i32.const -16)
+ (i32.const 1431655768)
)
- (i32.const 1431655768)
)
)
)
)
- )
- (if
- (i32.le_u
- (tee_local $5
- (i32.and
- (tee_local $6
- (i32.add
- (tee_local $1
- (i32.load
- (i32.const 656)
+ (if
+ (i32.le_u
+ (tee_local $5
+ (i32.and
+ (tee_local $6
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (i32.const 656)
+ )
)
- )
- (tee_local $8
- (i32.add
- (get_local $0)
- (i32.const 47)
+ (tee_local $8
+ (i32.add
+ (get_local $0)
+ (i32.const 47)
+ )
)
)
)
- )
- (tee_local $9
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (tee_local $9
+ (i32.sub
+ (i32.const 0)
+ (get_local $1)
+ )
)
)
)
+ (get_local $0)
)
- (get_local $0)
- )
- (return
- (i32.const 0)
- )
- )
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
+ (return
+ (i32.const 0)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $1
- (i32.add
- (tee_local $3
- (i32.load
- (i32.const 608)
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $1
+ (i32.add
+ (tee_local $3
+ (i32.load
+ (i32.const 608)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
+ (get_local $3)
+ )
+ (i32.gt_u
+ (get_local $1)
+ (get_local $2)
)
- (get_local $3)
)
- (i32.gt_u
- (get_local $1)
- (get_local $2)
+ (return
+ (i32.const 0)
)
)
- (return
- (i32.const 0)
- )
)
- )
- (set_local $11
- (i32.add
- (get_local $0)
- (i32.const 48)
+ (set_local $11
+ (i32.add
+ (get_local $0)
+ (i32.const 48)
+ )
)
- )
- (block $__rjto$13
- (block $__rjti$13
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (i32.const 620)
+ (block $__rjto$13
+ (block $__rjti$13
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (block
- (block $label$break$L279
- (block $__rjti$5
- (block $__rjti$4
- (br_if $__rjti$4
- (i32.eqz
- (tee_local $4
- (i32.load
- (i32.const 200)
+ (block
+ (block $label$break$L279
+ (block $__rjti$5
+ (block $__rjti$4
+ (br_if $__rjti$4
+ (i32.eqz
+ (tee_local $4
+ (i32.load
+ (i32.const 200)
+ )
)
)
)
- )
- (set_local $1
- (i32.const 624)
- )
- (loop $while-in34
- (block $while-out33
- (if
- (i32.le_u
- (tee_local $3
- (i32.load
- (get_local $1)
- )
- )
- (get_local $4)
- )
+ (set_local $1
+ (i32.const 624)
+ )
+ (loop $while-in34
+ (block $while-out33
(if
- (i32.gt_u
- (i32.add
- (get_local $3)
+ (i32.le_u
+ (tee_local $3
(i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (get_local $1)
+ )
+ )
+ (get_local $4)
+ )
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $3)
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
+ )
)
)
)
+ (get_local $4)
+ )
+ (block
+ (set_local $4
+ (get_local $1)
+ )
+ (br $while-out33)
)
- (get_local $4)
)
- (block
- (set_local $4
+ )
+ (br_if $while-in34
+ (tee_local $1
+ (i32.load offset=8
(get_local $1)
)
- (br $while-out33)
)
)
+ (br $__rjti$4)
)
- (br_if $while-in34
- (tee_local $1
- (i32.load offset=8
- (get_local $1)
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.sub
+ (get_local $6)
+ (i32.load
+ (i32.const 188)
+ )
+ )
+ (get_local $9)
)
)
+ (i32.const 2147483647)
)
- (br $__rjti$4)
- )
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.sub
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $1
+ (call $_sbrk
+ (get_local $3)
+ )
+ )
+ (i32.add
(i32.load
- (i32.const 188)
+ (get_local $4)
+ )
+ (i32.load
+ (get_local $2)
)
)
- (get_local $9)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $1
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.ne
+ (get_local $1)
+ (i32.const -1)
)
)
- (i32.add
- (i32.load
- (get_local $4)
- )
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (get_local $1)
)
+ (br $__rjti$5)
)
)
- (br_if $__rjti$13
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- )
- (block
- (set_local $2
- (get_local $1)
- )
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
- )
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (if
- (i32.ne
- (tee_local $1
- (call $_sbrk
- (i32.const 0)
+ (if
+ (i32.ne
+ (tee_local $1
+ (call $_sbrk
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $2
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 652)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $2
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 652)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $3
+ (get_local $1)
)
)
- (tee_local $3
- (get_local $1)
- )
- )
- (i32.add
- (i32.sub
- (get_local $5)
- (get_local $3)
- )
- (i32.and
- (i32.add
- (get_local $2)
+ (i32.add
+ (i32.sub
+ (get_local $5)
(get_local $3)
)
- (i32.sub
- (i32.const 0)
- (get_local $4)
+ (i32.and
+ (i32.add
+ (get_local $2)
+ (get_local $3)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $9
- (i32.add
- (tee_local $4
- (i32.load
- (i32.const 608)
+ (set_local $9
+ (i32.add
+ (tee_local $4
+ (i32.load
+ (i32.const 608)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $3)
- (get_local $0)
- )
- (i32.lt_u
(get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $2
- (i32.load
- (i32.const 616)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $0)
)
- (br_if $label$break$L279
- (i32.or
- (i32.le_u
- (get_local $9)
- (get_local $4)
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
+ )
+ )
+ (block
+ (if
+ (tee_local $2
+ (i32.load
+ (i32.const 616)
)
- (i32.gt_u
- (get_local $9)
- (get_local $2)
+ )
+ (br_if $label$break$L279
+ (i32.or
+ (i32.le_u
+ (get_local $9)
+ (get_local $4)
+ )
+ (i32.gt_u
+ (get_local $9)
+ (get_local $2)
+ )
)
)
)
- )
- (br_if $__rjti$13
- (i32.eq
- (tee_local $2
- (call $_sbrk
- (get_local $3)
+ (br_if $__rjti$13
+ (i32.eq
+ (tee_local $2
+ (call $_sbrk
+ (get_local $3)
+ )
)
+ (get_local $1)
)
- (get_local $1)
)
+ (br $__rjti$5)
)
- (set_local $1
- (get_local $3)
- )
- (br $__rjti$5)
)
)
)
+ (br $label$break$L279)
)
- (br $label$break$L279)
- )
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $1)
+ (set_local $1
+ (get_local $3)
)
- )
- (if
- (i32.and
- (i32.gt_u
- (get_local $11)
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
(get_local $1)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $11)
(get_local $1)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $2)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $2)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $3
- (i32.and
- (i32.add
- (i32.sub
- (get_local $8)
- (get_local $1)
- )
- (tee_local $3
- (i32.load
- (i32.const 656)
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $8)
+ (get_local $1)
)
+ (tee_local $3
+ (i32.load
+ (i32.const 656)
+ )
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $3)
)
)
- (i32.sub
- (i32.const 0)
+ )
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.eq
+ (call $_sbrk
(get_local $3)
)
+ (i32.const -1)
)
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $_sbrk
- (get_local $3)
+ (block
+ (drop
+ (call $_sbrk
+ (get_local $4)
+ )
+ )
+ (br $label$break$L279)
)
- (i32.const -1)
- )
- (block
- (drop
- (call $_sbrk
- (get_local $4)
+ (set_local $3
+ (i32.add
+ (get_local $3)
+ (get_local $1)
)
)
- (br $label$break$L279)
)
(set_local $3
- (i32.add
- (get_local $3)
- (get_local $1)
- )
+ (get_local $1)
)
)
(set_local $3
(get_local $1)
)
)
- (set_local $3
- (get_local $1)
- )
- )
- (if
- (i32.ne
- (get_local $2)
- (i32.const -1)
- )
- (block
- (set_local $1
+ (if
+ (i32.ne
(get_local $2)
+ (i32.const -1)
+ )
+ (block
+ (set_local $1
+ (get_local $2)
+ )
+ (br $__rjti$13)
)
- (br $__rjti$13)
)
)
- )
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 2147483647)
- )
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $_sbrk
- (get_local $5)
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $_sbrk
+ (get_local $5)
+ )
)
- )
- (tee_local $3
- (call $_sbrk
- (i32.const 0)
+ (tee_local $3
+ (call $_sbrk
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $3)
- (i32.const -1)
- )
- )
- )
- (br_if $__rjti$13
- (i32.gt_u
- (tee_local $3
- (i32.sub
- (get_local $3)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $3)
+ (i32.const -1)
)
)
- (i32.add
- (get_local $0)
- (i32.const 40)
+ )
+ (br_if $__rjti$13
+ (i32.gt_u
+ (tee_local $3
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $0)
+ (i32.const 40)
+ )
)
)
)
)
+ (br $__rjto$13)
)
- (br $__rjto$13)
- )
- (i32.store
- (i32.const 608)
- (tee_local $2
- (i32.add
- (i32.load
- (i32.const 608)
+ (i32.store
+ (i32.const 608)
+ (tee_local $2
+ (i32.add
+ (i32.load
+ (i32.const 608)
+ )
+ (get_local $3)
)
- (get_local $3)
- )
- )
- )
- (if
- (i32.gt_u
- (get_local $2)
- (i32.load
- (i32.const 612)
)
)
- (i32.store
- (i32.const 612)
- (get_local $2)
- )
- )
- (block $do-once40
(if
- (tee_local $6
+ (i32.gt_u
+ (get_local $2)
(i32.load
- (i32.const 200)
+ (i32.const 612)
)
)
- (block
- (set_local $2
- (i32.const 624)
+ (i32.store
+ (i32.const 612)
+ (get_local $2)
+ )
+ )
+ (block $do-once40
+ (if
+ (tee_local $6
+ (i32.load
+ (i32.const 200)
+ )
)
- (block $__rjto$10
- (block $__rjti$10
- (loop $while-in45
- (br_if $__rjti$10
- (i32.eq
- (get_local $1)
- (i32.add
- (tee_local $11
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 624)
+ )
+ (block $__rjto$10
+ (block $__rjti$10
+ (loop $while-in45
+ (br_if $__rjti$10
+ (i32.eq
+ (get_local $1)
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $5
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $5
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
)
- )
- (br_if $while-in45
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in45
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
- )
- (br $__rjto$10)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
+ (br $__rjto$10)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $6)
- (get_local $1)
- )
- (i32.ge_u
- (get_local $6)
- (get_local $11)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $4)
- (i32.add
- (get_local $5)
- (get_local $3)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $6)
+ (get_local $1)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $6)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $6)
- (i32.const 8)
+ (get_local $11)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.add
+ (get_local $5)
+ (get_local $3)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $6)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $6)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
- )
- (set_local $1
- (i32.add
- (i32.sub
- (get_local $3)
- (get_local $1)
- )
- (i32.load
- (i32.const 188)
+ (set_local $1
+ (i32.add
+ (i32.sub
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.load
+ (i32.const 188)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (get_local $2)
- )
- (i32.store
- (i32.const 188)
- (get_local $1)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 200)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 188)
(get_local $1)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $1)
+ (i32.or
+ (get_local $1)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
+ )
+ (br $do-once40)
)
- (br $do-once40)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (tee_local $4
- (i32.load
+ (if
+ (i32.lt_u
+ (get_local $1)
+ (tee_local $4
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (block
+ (i32.store
(i32.const 192)
+ (get_local $1)
+ )
+ (set_local $4
+ (get_local $1)
)
)
)
- (block
- (i32.store
- (i32.const 192)
- (get_local $1)
- )
- (set_local $4
+ (set_local $11
+ (i32.add
(get_local $1)
+ (get_local $3)
)
)
- )
- (set_local $11
- (i32.add
- (get_local $1)
- (get_local $3)
+ (set_local $2
+ (i32.const 624)
)
- )
- (set_local $2
- (i32.const 624)
- )
- (block $__rjto$11
- (block $__rjti$11
- (loop $while-in47
- (if
- (i32.eq
- (i32.load
- (get_local $2)
+ (block $__rjto$11
+ (block $__rjti$11
+ (loop $while-in47
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $5
+ (get_local $2)
+ )
+ (br $__rjti$11)
)
- (get_local $11)
)
- (block
- (set_local $5
- (get_local $2)
+ (br_if $while-in47
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
- (br $__rjti$11)
+ )
+ (set_local $4
+ (i32.const 624)
)
)
- (br_if $while-in47
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
- )
+ (br $__rjto$11)
+ )
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $2)
)
+ (i32.const 8)
)
(set_local $4
(i32.const 624)
)
- )
- (br $__rjto$11)
- )
- (if
- (i32.and
- (i32.load offset=12
- (get_local $2)
- )
- (i32.const 8)
- )
- (set_local $4
- (i32.const 624)
- )
- (block
- (i32.store
- (get_local $5)
- (get_local $1)
- )
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.add
- (i32.load
- (get_local $2)
- )
- (get_local $3)
+ (block
+ (i32.store
+ (get_local $5)
+ (get_local $1)
)
- )
- (set_local $8
- (i32.add
- (tee_local $9
+ (i32.store
+ (tee_local $2
(i32.add
- (get_local $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
- )
- )
+ (get_local $2)
+ (i32.const 4)
)
)
- (get_local $0)
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $3)
+ )
)
- )
- (set_local $7
- (i32.sub
- (i32.sub
- (tee_local $5
+ (set_local $8
+ (i32.add
+ (tee_local $9
(i32.add
- (get_local $11)
+ (get_local $1)
(select
(i32.and
(i32.sub
(i32.const 0)
(tee_local $1
(i32.add
- (get_local $11)
+ (get_local $1)
(i32.const 8)
)
)
@@ -11397,1919 +11292,1948 @@
)
)
)
- (get_local $9)
+ (get_local $0)
)
- (get_local $0)
- )
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $0)
- (i32.const 3)
)
- )
- (block $do-once48
- (if
- (i32.eq
- (get_local $5)
- (get_local $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (tee_local $0
+ (set_local $7
+ (i32.sub
+ (i32.sub
+ (tee_local $5
(i32.add
- (i32.load
- (i32.const 188)
+ (get_local $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
+ )
)
- (get_local $7)
)
)
+ (get_local $9)
)
- (i32.store
- (i32.const 200)
- (get_local $8)
+ (get_local $0)
+ )
+ )
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $do-once48
+ (if
+ (i32.eq
+ (get_local $5)
+ (get_local $6)
)
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (block
+ (i32.store
+ (i32.const 188)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (get_local $7)
+ )
+ )
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $5)
- (i32.load
- (i32.const 196)
+ (i32.store
+ (i32.const 200)
+ (get_local $8)
+ )
+ (i32.store offset=4
+ (get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (tee_local $0
- (i32.add
- (i32.load
- (i32.const 184)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 184)
+ (tee_local $0
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (get_local $7)
)
- (get_local $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (get_local $8)
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 196)
+ (get_local $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
+ (i32.or
+ (get_local $0)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $0)
+ )
(get_local $0)
)
- (get_local $0)
+ (br $do-once48)
)
- (br $do-once48)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (tee_local $0
- (if (result i32)
- (i32.eq
- (i32.and
- (tee_local $0
- (i32.load offset=4
- (get_local $5)
- )
- )
- (i32.const 3)
- )
- (i32.const 1)
- )
- (block (result i32)
- (set_local $11
+ (i32.store
+ (tee_local $0
+ (i32.add
+ (tee_local $0
+ (if (result i32)
+ (i32.eq
(i32.and
- (get_local $0)
- (i32.const -8)
- )
- )
- (set_local $1
- (i32.shr_u
- (get_local $0)
+ (tee_local $0
+ (i32.load offset=4
+ (get_local $5)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$L331
- (if
- (i32.lt_u
+ (block (result i32)
+ (set_local $11
+ (i32.and
(get_local $0)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $2
- (i32.load offset=12
- (get_local $5)
- )
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 256)
)
- (block $do-once51
- (if
- (i32.ne
- (tee_local $3
- (i32.load offset=8
- (get_local $5)
- )
- )
- (tee_local $0
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (block
+ (set_local $2
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (block $do-once51
+ (if
+ (i32.ne
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $5)
)
- (i32.const 216)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $3)
- (get_local $4)
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
)
- (call $_abort)
)
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $3)
+ (get_local $4)
)
- (get_local $5)
+ (call $_abort)
)
- )
- (call $_abort)
- )
- )
- )
- (if
- (i32.eq
- (get_local $2)
- (get_local $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (get_local $3)
+ )
+ (get_local $5)
)
- (i32.const -1)
)
+ (call $_abort)
)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
(if
(i32.eq
(get_local $2)
- (get_local $0)
+ (get_local $3)
)
- (set_local $15
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once53
+ (if
+ (i32.eq
+ (get_local $2)
+ (get_local $0)
+ )
+ (set_local $15
+ (i32.add
(get_local $2)
- (get_local $4)
+ (i32.const 8)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (set_local $15
- (get_local $0)
+ (block
+ (set_local $15
+ (get_local $0)
+ )
+ (br $do-once53)
)
- (br $do-once53)
)
+ (call $_abort)
)
- (call $_abort)
)
)
- )
- (i32.store offset=12
- (get_local $3)
- (get_local $2)
- )
- (i32.store
- (get_local $15)
- (get_local $3)
- )
- )
- (block
- (set_local $6
- (i32.load offset=24
- (get_local $5)
+ (i32.store offset=12
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $15)
+ (get_local $3)
)
)
- (block $do-once55
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $5)
- )
- )
+ (block
+ (set_local $6
+ (i32.load offset=24
(get_local $5)
)
- (block
- (if
- (i32.eqz
- (tee_local $1
- (i32.load
- (tee_local $0
- (i32.add
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 16)
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $5)
+ )
+ )
+ (get_local $5)
+ )
+ (block
+ (if
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
)
- )
- (if
- (tee_local $1
- (i32.load
+ (if
+ (tee_local $1
+ (i32.load
+ (get_local $3)
+ )
+ )
+ (set_local $0
(get_local $3)
)
+ (block
+ (set_local $12
+ (i32.const 0)
+ )
+ (br $do-once55)
+ )
)
- (set_local $0
- (get_local $3)
+ )
+ (loop $while-in58
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $1
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $4)
)
+ (call $_abort)
(block
- (set_local $12
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once55)
+ (set_local $12
+ (get_local $1)
+ )
)
)
)
- (loop $while-in58
+ (block
(if
- (tee_local $3
+ (i32.lt_u
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $5)
+ )
+ )
+ (get_local $4)
+ )
+ (call $_abort)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $2
+ (tee_local $3
(i32.add
- (get_local $1)
- (i32.const 20)
+ (get_local $2)
+ (i32.const 12)
)
)
)
+ (get_local $5)
)
- (block
- (set_local $1
- (get_local $3)
- )
- (set_local $0
- (get_local $2)
- )
- (br $while-in58)
- )
+ (call $_abort)
)
(if
- (tee_local $3
+ (i32.eq
(i32.load
- (tee_local $2
+ (tee_local $1
(i32.add
- (get_local $1)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $5)
)
(block
- (set_local $1
+ (i32.store
(get_local $3)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $1)
(get_local $2)
)
- (br $while-in58)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $4)
- )
- (call $_abort)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $12
- (get_local $1)
+ (set_local $12
+ (get_local $0)
+ )
)
+ (call $_abort)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $2
- (i32.load offset=8
- (get_local $5)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $6)
+ )
+ )
+ (block $do-once59
+ (if
+ (i32.eq
+ (get_local $5)
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
)
)
- (get_local $4)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $0)
+ (get_local $12)
+ )
+ (br_if $do-once59
+ (get_local $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
)
+ (i32.const -1)
)
)
- (get_local $5)
)
- (call $_abort)
+ (br $label$break$L331)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 192)
)
)
- (get_local $5)
+ (call $_abort)
)
- (block
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $5)
+ )
(i32.store
- (get_local $3)
(get_local $0)
+ (get_local $12)
)
- (i32.store
- (get_local $1)
- (get_local $2)
+ (i32.store offset=20
+ (get_local $6)
+ (get_local $12)
)
- (set_local $12
- (get_local $0)
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (get_local $12)
)
)
- (call $_abort)
)
)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $12)
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (call $_abort)
+ )
+ (i32.store offset=24
+ (get_local $12)
(get_local $6)
)
- )
- (block $do-once59
(if
- (i32.eq
- (get_local $5)
+ (tee_local $3
(i32.load
(tee_local $0
(i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $5)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (br_if $do-once59
- (get_local $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
- )
- (i32.const -1)
+ (get_local $5)
+ (i32.const 16)
)
)
)
- (br $label$break$L331)
)
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (get_local $1)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $6)
- (i32.const 16)
- )
- )
- )
- (get_local $5)
- )
- (i32.store
- (get_local $0)
- (get_local $12)
- )
- (i32.store offset=20
- (get_local $6)
+ (call $_abort)
+ (block
+ (i32.store offset=16
(get_local $12)
+ (get_local $3)
)
- )
- (br_if $label$break$L331
- (i32.eqz
+ (i32.store offset=24
+ (get_local $3)
(get_local $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $12)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (get_local $12)
- (get_local $6)
- )
- (if
- (tee_local $3
- (i32.load
+ (br_if $label$break$L331
+ (i32.eqz
(tee_local $0
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (i32.load offset=4
+ (get_local $0)
)
)
)
)
(if
(i32.lt_u
- (get_local $3)
- (get_local $1)
+ (get_local $0)
+ (i32.load
+ (i32.const 192)
+ )
)
(call $_abort)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $12)
- (get_local $3)
+ (get_local $0)
)
(i32.store offset=24
- (get_local $3)
- (get_local $12)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (tee_local $0
- (i32.load offset=4
(get_local $0)
+ (get_local $12)
)
)
)
)
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (get_local $12)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $0)
- (get_local $12)
- )
- )
- )
)
)
- )
- (set_local $7
+ (set_local $7
+ (i32.add
+ (get_local $11)
+ (get_local $7)
+ )
+ )
(i32.add
+ (get_local $5)
(get_local $11)
- (get_local $7)
)
)
- (i32.add
- (get_local $5)
- (get_local $11)
- )
+ (get_local $5)
)
- (get_local $5)
)
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.and
+ (i32.load
+ (get_local $0)
+ )
+ (i32.const -2)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $7)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $7)
+ (i32.or
+ (get_local $7)
+ (i32.const 1)
+ )
)
- (get_local $7)
- )
- (set_local $0
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $7)
+ )
(get_local $7)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $7)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $7)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
- (i32.const 216)
)
- )
- (block $do-once63
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 176)
+ (block $do-once63
+ (if
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $0
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $0
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (block
+ (set_local $16
+ (get_local $1)
+ )
+ (set_local $10
+ (get_local $0)
+ )
+ (br $do-once63)
)
)
- (block
- (set_local $16
+ (call $_abort)
+ )
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
(get_local $1)
- )
- (set_local $10
(get_local $0)
)
- (br $do-once63)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (set_local $16
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $16
- (i32.add
+ (set_local $10
(get_local $3)
- (i32.const 8)
)
)
- (set_local $10
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $16)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $10)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $10)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $3)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $16)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $10)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $10)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $3)
- )
- (br $do-once48)
)
- )
- (set_local $3
- (i32.add
- (i32.shl
- (tee_local $2
- (block $do-once65 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $7)
- (i32.const 8)
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (tee_local $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $7)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (get_local $7)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $7)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $7)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $7)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $0)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $0)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (tee_local $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $0)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $0)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=4
- (tee_local $0
- (i32.add
- (get_local $8)
- (i32.const 16)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $2)
+ )
+ (i32.store offset=4
+ (tee_local $0
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 180)
+ (i32.store
+ (get_local $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $1
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $2)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $2)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $1)
- (get_local $0)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $1)
+ (get_local $0)
+ )
)
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $3)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $3)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once48)
)
- )
- (set_local $2
- (i32.shl
- (get_local $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $2
+ (i32.shl
+ (get_local $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $2)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $2)
- (i32.const 31)
- )
)
)
- )
- (set_local $0
- (i32.load
- (get_local $3)
+ (set_local $0
+ (i32.load
+ (get_local $3)
+ )
)
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $0)
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $7)
)
- (get_local $7)
)
- )
- (set_local $3
- (i32.shl
- (get_local $2)
- (i32.const 1)
+ (set_local $3
+ (i32.shl
+ (get_local $2)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $2
- (i32.add
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $2
(i32.add
- (get_local $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $2)
- (i32.const 31)
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $0
+ (get_local $1)
+ )
+ (br $while-in68)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $2
- (get_local $3)
+ (i32.store
+ (get_local $2)
+ (get_local $8)
)
- (set_local $0
- (get_local $1)
+ (i32.store offset=24
+ (get_local $8)
+ (get_local $0)
)
- (br $while-in68)
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $8)
+ )
+ (br $do-once48)
)
)
+ (br $__rjto$7)
)
(if
- (i32.lt_u
- (get_local $2)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $2
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $0)
+ (get_local $1)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $2)
(get_local $8)
)
- (i32.store offset=24
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $8)
+ (i32.store
+ (get_local $3)
(get_local $8)
)
(i32.store offset=8
(get_local $8)
- (get_local $8)
+ (get_local $2)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $2
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $0)
)
- (tee_local $1
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $0)
- (get_local $1)
- )
- )
- (block
- (i32.store offset=12
- (get_local $2)
- (get_local $8)
- )
- (i32.store
- (get_local $3)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $0)
- )
- (i32.store offset=24
- (get_local $8)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (return
- (i32.add
- (get_local $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (get_local $9)
+ (i32.const 8)
+ )
)
)
)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $4)
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $4)
+ )
)
+ (get_local $6)
)
- (get_local $6)
- )
- (br_if $while-out69
- (i32.gt_u
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $4)
+ (br_if $while-out69
+ (i32.gt_u
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $4)
+ )
)
)
+ (get_local $6)
)
- (get_local $6)
)
)
- )
- (set_local $4
- (i32.load offset=8
- (get_local $4)
+ (set_local $4
+ (i32.load offset=8
+ (get_local $4)
+ )
)
+ (br $while-in70)
)
- (br $while-in70)
)
- )
- (set_local $10
- (i32.add
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const -47)
+ (set_local $10
+ (i32.add
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $12
- (i32.add
- (tee_local $11
- (select
- (get_local $6)
- (tee_local $4
- (i32.add
- (get_local $4)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $12
+ (i32.add
+ (tee_local $11
+ (select
+ (get_local $6)
+ (tee_local $4
+ (i32.add
+ (get_local $4)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $10)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $10)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $10)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $4)
- (tee_local $10
- (i32.add
- (get_local $6)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $4)
+ (tee_local $10
+ (i32.add
+ (get_local $6)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $5
- (i32.add
- (get_local $1)
- (tee_local $4
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $5
+ (i32.add
+ (get_local $1)
+ (tee_local $4
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $4)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $4
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $4
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $4)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $5)
+ (i32.or
(get_local $4)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $4)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $5)
+ (get_local $4)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $5)
- (get_local $4)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store
+ (tee_local $4
+ (i32.add
+ (get_local $11)
+ (i32.const 4)
+ )
+ )
+ (i32.const 27)
)
- )
- (i32.store
- (tee_local $4
- (i32.add
- (get_local $11)
- (i32.const 4)
+ (i32.store
+ (get_local $12)
+ (i32.load
+ (i32.const 624)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $12)
- (i32.load
+ (i32.store offset=4
+ (get_local $12)
+ (i32.load
+ (i32.const 628)
+ )
+ )
+ (i32.store offset=8
+ (get_local $12)
+ (i32.load
+ (i32.const 632)
+ )
+ )
+ (i32.store offset=12
+ (get_local $12)
+ (i32.load
+ (i32.const 636)
+ )
+ )
+ (i32.store
(i32.const 624)
+ (get_local $1)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 628)
+ (get_local $3)
)
- )
- (i32.store offset=8
- (get_local $12)
- (i32.load
- (i32.const 632)
- )
- )
- (i32.store offset=12
- (get_local $12)
- (i32.load
+ (i32.store
(i32.const 636)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 632)
- (get_local $12)
- )
- (set_local $1
- (i32.add
- (get_local $11)
- (i32.const 24)
- )
- )
- (loop $while-in72
(i32.store
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 632)
+ (get_local $12)
)
- (br_if $while-in72
- (i32.lt_u
- (i32.add
- (get_local $1)
- (i32.const 4)
- )
- (get_local $2)
+ (set_local $1
+ (i32.add
+ (get_local $11)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $11)
- (get_local $6)
- )
- (block
+ (loop $while-in72
(i32.store
- (get_local $4)
- (i32.and
- (i32.load
- (get_local $4)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $6)
- (i32.or
- (tee_local $5
- (i32.sub
- (get_local $11)
- (get_local $6)
- )
+ (br_if $while-in72
+ (i32.lt_u
+ (i32.add
+ (get_local $1)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $2)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $11)
- (get_local $5)
- )
- (set_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 3)
- )
+ (get_local $6)
)
- (if
- (i32.lt_u
- (get_local $5)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.and
+ (i32.load
+ (get_local $4)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $2
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $6)
+ (i32.or
+ (tee_local $5
+ (i32.sub
+ (get_local $11)
+ (get_local $6)
)
- (i32.const 216)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 176)
- )
- )
- (tee_local $1
+ )
+ (i32.store
+ (get_local $11)
+ (get_local $5)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.const 256)
+ )
+ (block
+ (set_local $2
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (tee_local $1
+ (i32.and
+ (tee_local $3
(i32.load
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 8)
+ (i32.const 176)
+ )
+ )
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.load
- (i32.const 192)
+ (call $_abort)
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (get_local $1)
+ )
)
)
- (call $_abort)
(block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
+ )
(set_local $17
- (get_local $3)
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
+ )
)
(set_local $7
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (get_local $3)
- (get_local $1)
- )
- )
- (set_local $17
- (i32.add
(get_local $2)
- (i32.const 8)
)
)
- (set_local $7
- (get_local $2)
- )
)
+ (i32.store
+ (get_local $17)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $7)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $7)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $17)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $7)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $7)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
- )
- (br $do-once40)
)
- )
- (set_local $2
- (i32.add
- (i32.shl
- (tee_local $4
- (if (result i32)
- (tee_local $1
- (i32.shr_u
- (get_local $5)
- (i32.const 8)
- )
- )
+ (set_local $2
+ (i32.add
+ (i32.shl
+ (tee_local $4
(if (result i32)
- (i32.gt_u
- (get_local $5)
- (i32.const 16777215)
+ (tee_local $1
+ (i32.shr_u
+ (get_local $5)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $5)
- (i32.add
- (tee_local $1
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $5)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $5)
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $1)
- (tee_local $2
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $1)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $1)
+ (tee_local $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $1)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $2)
)
- (get_local $2)
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $3)
- (get_local $1)
+ (i32.shr_u
+ (i32.shl
+ (get_local $3)
+ (get_local $1)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $1)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 480)
)
- (i32.const 480)
)
- )
- (i32.store offset=28
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=20
- (get_local $6)
- (i32.const 0)
- )
- (i32.store
- (get_local $10)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 180)
+ (i32.store offset=28
+ (get_local $6)
+ (get_local $4)
+ )
+ (i32.store offset=20
+ (get_local $6)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $10)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 180)
+ )
)
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $4)
+ (tee_local $1
+ (i32.shl
+ (i32.const 1)
+ (get_local $4)
+ )
)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (get_local $3)
- (get_local $1)
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (get_local $3)
+ (get_local $1)
+ )
)
+ (i32.store
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=24
- (get_local $6)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $6)
- )
- (br $do-once40)
)
- )
- (set_local $4
- (i32.shl
- (get_local $5)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (set_local $4
+ (i32.shl
+ (get_local $5)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $4)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $4)
- (i32.const 31)
- )
)
)
- )
- (set_local $1
- (i32.load
- (get_local $2)
+ (set_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (block $__rjto$9
- (block $__rjti$9
- (loop $while-in74
- (br_if $__rjti$9
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $1)
+ (block $__rjto$9
+ (block $__rjti$9
+ (loop $while-in74
+ (br_if $__rjti$9
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $1)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (set_local $2
- (i32.shl
- (get_local $4)
- (i32.const 1)
+ (set_local $2
+ (i32.shl
+ (get_local $4)
+ (i32.const 1)
+ )
)
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $4
- (i32.add
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $4
(i32.add
- (get_local $1)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $4)
- (i32.const 31)
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
+ (block
+ (set_local $4
+ (get_local $2)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in74)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $4)
+ (i32.load
+ (i32.const 192)
+ )
)
+ (call $_abort)
(block
- (set_local $4
- (get_local $2)
+ (i32.store
+ (get_local $4)
+ (get_local $6)
)
- (set_local $1
- (get_local $3)
+ (i32.store offset=24
+ (get_local $6)
+ (get_local $1)
)
- (br $while-in74)
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $6)
+ )
+ (i32.store offset=8
+ (get_local $6)
+ (get_local $6)
+ )
+ (br $do-once40)
)
)
+ (br $__rjto$9)
)
(if
- (i32.lt_u
- (get_local $4)
- (i32.load
- (i32.const 192)
+ (i32.and
+ (i32.ge_u
+ (tee_local $4
+ (i32.load
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $3
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $1)
+ (get_local $3)
)
)
- (call $_abort)
(block
- (i32.store
+ (i32.store offset=12
(get_local $4)
(get_local $6)
)
- (i32.store offset=24
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $6)
+ (i32.store
+ (get_local $2)
(get_local $6)
)
(i32.store offset=8
(get_local $6)
- (get_local $6)
+ (get_local $4)
)
- (br $do-once40)
- )
- )
- (br $__rjto$9)
- )
- (if
- (i32.and
- (i32.ge_u
- (tee_local $4
- (i32.load
- (tee_local $2
- (i32.add
- (get_local $1)
- (i32.const 8)
- )
- )
- )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $1)
)
- (tee_local $3
- (i32.load
- (i32.const 192)
- )
+ (i32.store offset=24
+ (get_local $6)
+ (i32.const 0)
)
)
- (i32.ge_u
- (get_local $1)
- (get_local $3)
- )
- )
- (block
- (i32.store offset=12
- (get_local $4)
- (get_local $6)
- )
- (i32.store
- (get_local $2)
- (get_local $6)
- )
- (i32.store offset=8
- (get_local $6)
- (get_local $4)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $1)
- )
- (i32.store offset=24
- (get_local $6)
- (i32.const 0)
- )
+ (call $_abort)
)
- (call $_abort)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $2
- (i32.load
- (i32.const 192)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $2
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (i32.lt_u
+ (get_local $1)
+ (get_local $2)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 192)
(get_local $1)
- (get_local $2)
)
)
(i32.store
- (i32.const 192)
+ (i32.const 624)
(get_local $1)
)
- )
- (i32.store
- (i32.const 624)
- (get_local $1)
- )
- (i32.store
- (i32.const 628)
- (get_local $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 212)
- (i32.load
- (i32.const 648)
+ (i32.store
+ (i32.const 628)
+ (get_local $3)
)
- )
- (i32.store
- (i32.const 208)
- (i32.const -1)
- )
- (set_local $2
- (i32.const 0)
- )
- (loop $while-in43
- (i32.store offset=12
- (tee_local $4
- (i32.add
- (i32.shl
- (get_local $2)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (i32.store
+ (i32.const 636)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 212)
+ (i32.load
+ (i32.const 648)
)
- (get_local $4)
)
- (i32.store offset=8
- (get_local $4)
- (get_local $4)
+ (i32.store
+ (i32.const 208)
+ (i32.const -1)
)
- (br_if $while-in43
- (i32.ne
- (tee_local $2
+ (set_local $2
+ (i32.const 0)
+ )
+ (loop $while-in43
+ (i32.store offset=12
+ (tee_local $4
(i32.add
- (get_local $2)
- (i32.const 1)
+ (i32.shl
+ (get_local $2)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
)
- (i32.const 32)
+ (get_local $4)
+ )
+ (i32.store offset=8
+ (get_local $4)
+ (get_local $4)
+ )
+ (br_if $while-in43
+ (i32.ne
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (i32.const 32)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (tee_local $2
- (i32.add
- (get_local $1)
- (tee_local $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (tee_local $2
+ (i32.add
+ (get_local $1)
+ (tee_local $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (tee_local $1
- (i32.sub
- (i32.add
- (get_local $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (tee_local $1
+ (i32.sub
+ (i32.add
+ (get_local $3)
+ (i32.const -40)
+ )
+ (get_local $1)
)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
(get_local $1)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $1)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $1)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $2)
- (get_local $1)
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
- (i32.const 40)
)
- (i32.store
- (i32.const 204)
+ )
+ )
+ (br_if $folding-inner0
+ (i32.gt_u
+ (tee_local $1
(i32.load
- (i32.const 664)
+ (i32.const 188)
)
)
+ (get_local $0)
)
)
)
- (if
- (i32.gt_u
- (tee_local $1
- (i32.load
- (i32.const 188)
- )
- )
+ (i32.store
+ (call $___errno_location)
+ (i32.const 12)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ (i32.store
+ (i32.const 188)
+ (tee_local $3
+ (i32.sub
+ (get_local $1)
(get_local $0)
)
- (block
- (i32.store
- (i32.const 188)
- (tee_local $3
- (i32.sub
- (get_local $1)
- (get_local $0)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (tee_local $1
- (i32.add
- (tee_local $2
- (i32.load
- (i32.const 200)
- )
- )
- (get_local $0)
- )
- )
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
+ )
+ )
+ (i32.store
+ (i32.const 200)
+ (tee_local $1
+ (i32.add
+ (tee_local $2
+ (i32.load
+ (i32.const 200)
)
)
+ (get_local $0)
)
)
)
- (i32.store
- (call $___errno_location)
- (i32.const 12)
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
+ )
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
- (i32.const 0)
)
(func $_free (param $0 i32)
(local $1 i32)
diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm
index a6d77f5cf..71c095deb 100644
--- a/test/memorygrowth.fromasm
+++ b/test/memorygrowth.fromasm
@@ -105,830 +105,790 @@
(local $52 i32)
(local $53 i32)
(local $54 i32)
- (set_local $25
- (get_global $r)
- )
- (set_global $r
- (i32.add
+ (block $folding-inner0
+ (set_local $25
(get_global $r)
- (i32.const 16)
)
- )
- (set_local $13
- (get_local $25)
- )
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
+ (set_global $r
+ (i32.add
+ (get_global $r)
+ (i32.const 16)
)
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ )
+ (set_local $13
+ (get_local $25)
+ )
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $6)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $6)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $6)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $6
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $6)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
+ (get_local $7)
(get_local $6)
- (get_local $8)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $5
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $5)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $5)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $5
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $5)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
+ (set_local $5
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
(if
- (tee_local $4
- (i32.load offset=20
+ (tee_local $14
+ (i32.load offset=16
(get_local $5)
)
)
(set_local $6
- (get_local $4)
+ (get_local $14)
)
- (block
+ (if
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
(set_local $6
- (get_local $0)
+ (get_local $4)
)
- (set_local $2
- (get_local $1)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $6)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
+ (set_local $5
(get_local $6)
- (get_local $1)
- (get_local $4)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $6)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $5
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (if
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
- )
- (block
- (set_local $23
- (i32.const 0)
- )
- (br $do-once4)
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -941,702 +901,744 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (if
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
+ (block
+ (set_local $23
+ (i32.const 0)
+ )
+ (br $do-once4)
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $5)
- (get_local $6)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $5)
+ (get_local $6)
)
+ (get_local $6)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
+ (i32.store
+ (i32.const 1216)
+ (get_local $6)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $5)
+ )
)
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
)
)
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
+ (set_local $5
+ (get_local $3)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (set_local $5
+ (get_local $3)
+ )
+ )
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
)
(set_local $5
- (get_local $3)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
- (i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (set_local $8
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $16)
)
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
)
- (br $label$break$a)
- )
- (block
- (set_local $16
- (get_local $12)
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
)
- (set_local $8
- (get_local $7)
+ (block
+ (set_local $16
+ (get_local $12)
+ )
+ (set_local $8
+ (get_local $7)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1644,419 +1646,376 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
+ (if
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $14
- (get_local $3)
+ (block
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $5
+ (get_local $3)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $5
- (i32.const 0)
- )
- (set_local $33
- (i32.const 0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $5
+ (i32.const 0)
+ )
+ (set_local $33
+ (i32.const 0)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.and
- (i32.eqz
- (get_local $5)
- )
- (i32.eqz
- (get_local $33)
- )
- )
- (block (result i32)
- (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.and
(i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (get_local $5)
+ )
+ (i32.eqz
+ (get_local $33)
+ )
+ )
+ (block (result i32)
+ (if
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $12)
)
)
)
)
- )
- (block
- (set_local $5
- (get_local $0)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $5
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $5
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $5)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
+ (get_local $8)
(get_local $5)
- (get_local $3)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
+ (block
+ (set_local $29
+ (get_local $36)
+ )
+ (set_local $28
+ (get_local $3)
+ )
+ (set_local $32
+ (get_local $33)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
)
- (set_local $10
- (get_local $33)
+ (block
+ (set_local $18
+ (get_local $36)
+ )
+ (set_local $10
+ (get_local $33)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $29)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
- )
- (set_local $28
- (get_local $1)
- )
- (set_local $32
+ (set_local $5
+ (select
(get_local $8)
+ (get_local $29)
+ (get_local $1)
)
- (br $while-in16)
)
- )
- (if
- (tee_local $28
- (i32.load offset=20
+ (set_local $8
+ (select
(get_local $28)
+ (get_local $32)
+ (get_local $1)
)
)
- (block
- (set_local $29
- (get_local $5)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
)
- (set_local $32
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- (block
- (set_local $18
- (get_local $5)
+ (if
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
)
- (set_local $10
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block
+ (set_local $18
+ (get_local $5)
+ )
+ (set_local $10
+ (get_local $8)
+ )
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
- )
+ (get_local $10)
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
)
+ (get_local $0)
)
- (call $qa)
)
- (if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $5
- (i32.load offset=24
- (get_local $10)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
- )
- (block
- (set_local $22
- (i32.const 0)
- )
- (br $do-once17)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
)
+ (get_local $10)
)
- (loop $while-in20
+ (block
(if
(tee_local $4
(i32.load
(tee_local $3
(i32.add
- (get_local $14)
+ (get_local $10)
(i32.const 20)
)
)
@@ -2069,698 +2028,615 @@
(set_local $1
(get_local $3)
)
- (br $while-in20)
+ )
+ (if
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (set_local $1
+ (get_local $12)
+ )
+ (block
+ (set_local $22
+ (i32.const 0)
+ )
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $5
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $5
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $6
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
(set_local $6
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
(get_local $5)
- (i32.const 8)
)
)
- (set_local $6
- (get_local $5)
- )
)
+ (i32.store
+ (get_local $19)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $5)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $5
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $5)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $5)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $5)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2770,375 +2646,449 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (block $while-out27
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 148)
+ )
+ (br $while-out27)
+ )
+ )
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $12
+ (i32.add
(i32.add
- (get_local $17)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ (block
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 145)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
+ )
+ )
+ (set_local $5
+ (get_local $0)
)
)
(set_local $5
(get_local $0)
)
)
- (set_local $5
- (get_local $0)
- )
)
- )
- (set_local $5
- (get_local $0)
+ (set_local $5
+ (get_local $0)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (i32.const 1216)
- )
- )
- (get_local $5)
- )
- (block
- (set_local $15
- (i32.load
- (i32.const 1228)
+ (if
+ (i32.ge_u
+ (tee_local $10
+ (i32.load
+ (i32.const 1216)
+ )
)
+ (get_local $5)
)
- (if
- (i32.gt_u
- (tee_local $17
- (i32.sub
- (get_local $10)
- (get_local $5)
- )
+ (block
+ (set_local $15
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 1228)
- (tee_local $21
- (i32.add
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $17
+ (i32.sub
+ (get_local $10)
(get_local $5)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 1216)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $21)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 1228)
+ (tee_local $21
+ (i32.add
+ (get_local $15)
+ (get_local $5)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 1216)
(get_local $17)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $21)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $21)
+ (get_local $17)
+ )
(get_local $17)
)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $10)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $17
- (i32.add
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $17
(i32.add
- (get_local $15)
- (get_local $10)
+ (i32.add
+ (get_local $15)
+ (get_local $10)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $17)
+ (i32.or
+ (i32.load
+ (get_local $17)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $15)
- (i32.const 8)
- )
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $15
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $17
- (i32.sub
- (get_local $15)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $17
+ (i32.sub
+ (get_local $15)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $10
- (i32.add
- (tee_local $15
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $10
+ (i32.add
+ (tee_local $15
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $17)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $15)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 1680)
- )
- )
- (block
- (i32.store
- (i32.const 1688)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1684)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1692)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1696)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1700)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1652)
- (i32.const 0)
- )
- (i32.store
- (get_local $13)
- (tee_local $15
- (i32.xor
- (i32.and
- (get_local $13)
- (i32.const -16)
- )
- (i32.const 1431655768)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 1680)
)
)
- (i32.store
- (i32.const 1680)
- (get_local $15)
- )
- )
- )
- (set_local $15
- (i32.add
- (get_local $5)
- (i32.const 48)
- )
- )
- (if
- (i32.le_u
- (tee_local $13
- (i32.and
- (tee_local $10
- (i32.add
- (tee_local $13
- (i32.load
- (i32.const 1688)
- )
- )
- (tee_local $17
- (i32.add
- (get_local $5)
- (i32.const 47)
- )
+ (block
+ (i32.store
+ (i32.const 1688)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1684)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1692)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1696)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1700)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1652)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $13)
+ (tee_local $15
+ (i32.xor
+ (i32.and
+ (get_local $13)
+ (i32.const -16)
)
- )
- )
- (tee_local $21
- (i32.sub
- (i32.const 0)
- (get_local $13)
+ (i32.const 1431655768)
)
)
)
- )
- (get_local $5)
- )
- (block
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.const 0)
+ (i32.store
+ (i32.const 1680)
+ (get_local $15)
+ )
)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 1648)
+ (set_local $15
+ (i32.add
+ (get_local $5)
+ (i32.const 48)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $6
- (i32.add
- (tee_local $16
- (i32.load
- (i32.const 1640)
+ (i32.le_u
+ (tee_local $13
+ (i32.and
+ (tee_local $10
+ (i32.add
+ (tee_local $13
+ (i32.load
+ (i32.const 1688)
+ )
+ )
+ (tee_local $17
+ (i32.add
+ (get_local $5)
+ (i32.const 47)
+ )
)
)
- (get_local $13)
+ )
+ (tee_local $21
+ (i32.sub
+ (i32.const 0)
+ (get_local $13)
+ )
)
)
- (get_local $16)
- )
- (i32.gt_u
- (get_local $6)
- (get_local $18)
)
+ (get_local $5)
)
(block
(set_global $r
@@ -3149,270 +3099,306 @@
)
)
)
- )
- (if
- (i32.eq
- (tee_local $7
- (block $label$break$b (result i32)
- (if (result i32)
- (i32.and
- (i32.load
- (i32.const 1652)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1648)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $6
+ (i32.add
+ (tee_local $16
+ (i32.load
+ (i32.const 1640)
+ )
+ )
+ (get_local $13)
)
- (i32.const 4)
)
- (i32.const 188)
- (block (result i32)
- (block $label$break$c
- (if
- (tee_local $18
- (i32.load
- (i32.const 1232)
- )
- )
- (block
- (set_local $6
- (i32.const 1656)
+ (get_local $16)
+ )
+ (i32.gt_u
+ (get_local $6)
+ (get_local $18)
+ )
+ )
+ (block
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (tee_local $7
+ (block $label$break$b (result i32)
+ (if (result i32)
+ (i32.and
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
+ )
+ (i32.const 188)
+ (block (result i32)
+ (block $label$break$c
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $while-in32
- (block $while-out31
- (if
- (i32.le_u
- (tee_local $16
- (i32.load
- (get_local $6)
- )
- )
- (get_local $18)
- )
+ (block
+ (set_local $6
+ (i32.const 1656)
+ )
+ (loop $while-in32
+ (block $while-out31
(if
- (i32.gt_u
- (i32.add
- (get_local $16)
+ (i32.le_u
+ (tee_local $16
(i32.load
- (tee_local $19
- (i32.add
- (get_local $6)
- (i32.const 4)
- )
- )
+ (get_local $6)
)
)
(get_local $18)
)
- (block
- (set_local $0
- (get_local $6)
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $16)
+ (i32.load
+ (tee_local $19
+ (i32.add
+ (get_local $6)
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (get_local $18)
)
- (set_local $4
- (get_local $19)
+ (block
+ (set_local $0
+ (get_local $6)
+ )
+ (set_local $4
+ (get_local $19)
+ )
+ (br $while-out31)
)
- (br $while-out31)
)
)
- )
- (br_if $while-in32
- (tee_local $6
- (i32.load offset=8
- (get_local $6)
+ (br_if $while-in32
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $6)
+ )
)
)
+ (set_local $7
+ (i32.const 171)
+ )
+ (br $label$break$c)
)
- (set_local $7
- (i32.const 171)
- )
- (br $label$break$c)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.and
- (i32.sub
- (get_local $10)
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.lt_u
+ (tee_local $6
+ (i32.and
+ (i32.sub
+ (get_local $10)
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $21)
)
- (get_local $21)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $6)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $0)
+ )
+ (i32.load
+ (get_local $4)
+ )
)
)
- (i32.add
- (i32.load
- (get_local $0)
+ (if
+ (i32.ne
+ (get_local $19)
+ (i32.const -1)
)
- (i32.load
- (get_local $4)
+ (block
+ (set_local $20
+ (get_local $19)
+ )
+ (set_local $26
+ (get_local $6)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
- )
- (if
- (i32.ne
- (get_local $19)
- (i32.const -1)
- )
(block
- (set_local $20
+ (set_local $11
(get_local $19)
)
- (set_local $26
+ (set_local $2
(get_local $6)
)
- (br $label$break$b
- (i32.const 191)
+ (set_local $7
+ (i32.const 181)
)
)
)
- (block
- (set_local $11
- (get_local $19)
- )
- (set_local $2
- (get_local $6)
- )
- (set_local $7
- (i32.const 181)
- )
- )
)
)
- )
- (set_local $7
- (i32.const 171)
+ (set_local $7
+ (i32.const 171)
+ )
)
)
- )
- (block $do-once33
- (if
- (i32.eq
- (get_local $7)
- (i32.const 171)
- )
+ (block $do-once33
(if
- (i32.ne
- (tee_local $18
- (call $ta
- (i32.const 0)
+ (i32.eq
+ (get_local $7)
+ (i32.const 171)
+ )
+ (if
+ (i32.ne
+ (tee_local $18
+ (call $ta
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $19
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1684)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $19
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1684)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $0
+ (get_local $18)
)
)
- (tee_local $0
- (get_local $18)
- )
- )
- (i32.add
- (i32.sub
- (get_local $13)
- (get_local $0)
- )
- (i32.and
- (i32.add
- (get_local $19)
+ (i32.add
+ (i32.sub
+ (get_local $13)
(get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.and
+ (i32.add
+ (get_local $19)
+ (get_local $0)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
)
- )
- (set_local $0
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1640)
+ (set_local $0
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1640)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
(get_local $3)
- (get_local $5)
- )
- (i32.lt_u
- (get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $19
- (i32.load
- (i32.const 1648)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $5)
)
- (br_if $do-once33
- (i32.or
- (i32.le_u
- (get_local $0)
- (get_local $6)
- )
- (i32.gt_u
- (get_local $0)
- (get_local $19)
- )
- )
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
)
)
- (if
- (i32.eq
+ (block
+ (if
(tee_local $19
- (call $ta
- (get_local $3)
+ (i32.load
+ (i32.const 1648)
)
)
- (get_local $18)
- )
- (block
- (set_local $20
- (get_local $18)
- )
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
+ (br_if $do-once33
+ (i32.or
+ (i32.le_u
+ (get_local $0)
+ (get_local $6)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (get_local $19)
+ )
+ )
)
)
- (block
- (set_local $11
- (get_local $19)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
+ )
+ (get_local $18)
)
- (set_local $2
- (get_local $3)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $7
- (i32.const 181)
+ (block
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
)
)
)
@@ -3421,1058 +3407,1084 @@
)
)
)
- )
- (block $label$break$d
- (if
- (i32.eq
- (get_local $7)
- (i32.const 181)
- )
- (block
- (set_local $19
- (i32.sub
- (i32.const 0)
- (get_local $2)
- )
+ (block $label$break$d
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 181)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
+ (block
+ (set_local $19
+ (i32.sub
+ (i32.const 0)
(get_local $2)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $18)
- )
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
)
- (i32.const -1)
+ (i32.const 2147483647)
)
- (block
- (drop
+ (if
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
+ )
+ (set_local $1
+ (i32.add
+ (get_local $0)
+ (get_local $2)
)
)
- (br $label$break$d)
)
(set_local $1
- (i32.add
- (get_local $0)
- (get_local $2)
- )
+ (get_local $2)
)
)
(set_local $1
(get_local $2)
)
)
- (set_local $1
- (get_local $2)
- )
- )
- (if
- (i32.ne
- (get_local $11)
- (i32.const -1)
- )
- (block
- (set_local $20
+ (if
+ (i32.ne
(get_local $11)
+ (i32.const -1)
)
- (set_local $26
- (get_local $1)
- )
- (br $label$break$b
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $11)
+ )
+ (set_local $26
+ (get_local $1)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (i32.store
- (i32.const 1652)
- (i32.or
- (i32.load
- (i32.const 1652)
+ (i32.store
+ (i32.const 1652)
+ (i32.or
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
+ (i32.const 188)
)
- (i32.const 188)
)
)
)
- )
- (i32.const 188)
- )
- (if
- (i32.lt_u
- (get_local $13)
- (i32.const 2147483647)
+ (i32.const 188)
)
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $ta
- (get_local $13)
+ (i32.lt_u
+ (get_local $13)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $ta
+ (get_local $13)
+ )
)
- )
- (tee_local $13
- (call $ta
- (i32.const 0)
+ (tee_local $13
+ (call $ta
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $13)
- (i32.const -1)
- )
- )
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.sub
- (get_local $13)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
)
- )
- (i32.add
- (get_local $5)
- (i32.const 40)
)
)
- (block
- (set_local $20
- (get_local $1)
- )
- (set_local $26
- (get_local $11)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.sub
+ (get_local $13)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $5)
+ (i32.const 40)
+ )
)
- (set_local $7
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $1)
+ )
+ (set_local $26
+ (get_local $11)
+ )
+ (set_local $7
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 191)
- )
- (block
- (i32.store
- (i32.const 1640)
- (tee_local $11
- (i32.add
- (i32.load
- (i32.const 1640)
- )
- (get_local $26)
- )
- )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 191)
)
- (if
- (i32.gt_u
- (get_local $11)
- (i32.load
- (i32.const 1644)
- )
- )
+ (block
(i32.store
- (i32.const 1644)
- (get_local $11)
+ (i32.const 1640)
+ (tee_local $11
+ (i32.add
+ (i32.load
+ (i32.const 1640)
+ )
+ (get_local $26)
+ )
+ )
)
- )
- (block $do-once38
(if
- (tee_local $11
+ (i32.gt_u
+ (get_local $11)
(i32.load
- (i32.const 1232)
+ (i32.const 1644)
)
)
- (block
- (set_local $2
- (i32.const 1656)
+ (i32.store
+ (i32.const 1644)
+ (get_local $11)
+ )
+ )
+ (block $do-once38
+ (if
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $do-in41
- (block $do-out40
- (if
- (i32.eq
- (get_local $20)
- (i32.add
- (tee_local $1
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 1656)
+ )
+ (loop $do-in41
+ (block $do-out40
+ (if
+ (i32.eq
+ (get_local $20)
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $17
- (i32.load
- (tee_local $13
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $17
+ (i32.load
+ (tee_local $13
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
- )
- (block
- (set_local $48
- (get_local $1)
- )
- (set_local $49
- (get_local $13)
- )
- (set_local $50
- (get_local $17)
- )
- (set_local $51
- (get_local $2)
- )
- (set_local $7
- (i32.const 201)
+ (block
+ (set_local $48
+ (get_local $1)
+ )
+ (set_local $49
+ (get_local $13)
+ )
+ (set_local $50
+ (get_local $17)
+ )
+ (set_local $51
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 201)
+ )
+ (br $do-out40)
)
- (br $do-out40)
)
- )
- (br_if $do-in41
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $do-in41
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 201)
- )
(if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $51)
- )
- (i32.const 8)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 201)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $11)
- (get_local $20)
- )
- (i32.ge_u
- (get_local $11)
- (get_local $48)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $51)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $49)
- (i32.add
- (get_local $50)
- (get_local $26)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $11)
+ (get_local $20)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $11)
- (tee_local $17
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (get_local $48)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $49)
+ (i32.add
+ (get_local $50)
+ (get_local $26)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $11)
+ (tee_local $17
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
)
- )
- (set_local $13
- (i32.add
- (i32.sub
- (get_local $26)
- (get_local $17)
- )
- (i32.load
- (i32.const 1220)
+ (set_local $13
+ (i32.add
+ (i32.sub
+ (get_local $26)
+ (get_local $17)
+ )
+ (i32.load
+ (i32.const 1220)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store
- (i32.const 1220)
- (get_local $13)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 1220)
(get_local $13)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $13)
+ (i32.or
+ (get_local $13)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $13)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
+ (br $do-once38)
)
- (br $do-once38)
)
)
)
- )
- (set_local $14
- (if (result i32)
- (i32.lt_u
- (get_local $20)
- (tee_local $13
- (i32.load
- (i32.const 1224)
+ (set_local $14
+ (if (result i32)
+ (i32.lt_u
+ (get_local $20)
+ (tee_local $13
+ (i32.load
+ (i32.const 1224)
+ )
)
)
- )
- (block (result i32)
- (i32.store
- (i32.const 1224)
+ (block (result i32)
+ (i32.store
+ (i32.const 1224)
+ (get_local $20)
+ )
(get_local $20)
)
+ (get_local $13)
+ )
+ )
+ (set_local $13
+ (i32.add
(get_local $20)
+ (get_local $26)
)
- (get_local $13)
)
- )
- (set_local $13
- (i32.add
- (get_local $20)
- (get_local $26)
+ (set_local $2
+ (i32.const 1656)
)
- )
- (set_local $2
- (i32.const 1656)
- )
- (loop $while-in43
- (block $while-out42
- (if
- (i32.eq
- (i32.load
- (get_local $2)
- )
- (get_local $13)
- )
- (block
- (set_local $52
- (get_local $2)
- )
- (set_local $42
- (get_local $2)
+ (loop $while-in43
+ (block $while-out42
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $13)
)
- (set_local $7
- (i32.const 209)
+ (block
+ (set_local $52
+ (get_local $2)
+ )
+ (set_local $42
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 209)
+ )
+ (br $while-out42)
)
- (br $while-out42)
)
- )
- (br_if $while-in43
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in43
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
+ (set_local $30
+ (i32.const 1656)
+ )
)
- (set_local $30
- (i32.const 1656)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 209)
)
(if
- (i32.and
- (i32.load offset=12
- (get_local $42)
- )
- (i32.const 8)
- )
- (set_local $30
- (i32.const 1656)
+ (i32.eq
+ (get_local $7)
+ (i32.const 209)
)
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (set_local $30
+ (i32.const 1656)
+ )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $5)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
- (i32.add
- (get_local $1)
- (i32.const 16)
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (block
- (set_local $3
- (get_local $16)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $22)
+ )
+ (set_local $0
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $do-once51)
+ )
)
)
- (if
- (tee_local $22
- (i32.load
- (get_local $18)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
- (block
- (set_local $3
- (get_local $22)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $18)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
+ )
+ (call $qa)
(block
- (set_local $24
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once51)
+ (set_local $24
+ (get_local $3)
+ )
)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $6)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $18)
(get_local $6)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
+ (set_local $24
+ (get_local $0)
+ )
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4480,11 +4492,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4495,467 +4509,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $15)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
(get_local $15)
)
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $6
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $6
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $6)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4965,705 +4825,705 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $6
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (block $while-out63
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 279)
+ )
+ (br $while-out63)
+ )
+ )
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $38)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $6)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $6
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ (block
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 276)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
- )
- )
- )
- )
- (loop $while-in66
- (block $while-out65
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $30)
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
)
)
- (get_local $11)
)
+ )
+ )
+ (loop $while-in66
+ (block $while-out65
(if
- (i32.gt_u
- (tee_local $15
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $30)
- )
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $30)
)
)
(get_local $11)
)
- (block
- (set_local $0
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $30)
+ )
+ )
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $0
+ (get_local $15)
+ )
+ (br $while-out65)
)
- (br $while-out65)
)
)
- )
- (set_local $30
- (i32.load offset=8
- (get_local $30)
+ (set_local $30
+ (i32.load offset=8
+ (get_local $30)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
- )
- (set_local $15
- (i32.add
- (tee_local $17
- (i32.add
- (get_local $0)
- (i32.const -47)
+ (set_local $15
+ (i32.add
+ (tee_local $17
+ (i32.add
+ (get_local $0)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $2
- (i32.add
- (tee_local $17
- (select
- (get_local $11)
- (tee_local $2
- (i32.add
- (get_local $17)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $2
+ (i32.add
+ (tee_local $17
+ (select
+ (get_local $11)
+ (tee_local $2
+ (i32.add
+ (get_local $17)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $15)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $15)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $2)
- (tee_local $15
- (i32.add
- (get_local $11)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $15
+ (i32.add
+ (get_local $11)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $6
- (i32.sub
+ (i32.store
+ (i32.const 1220)
+ (tee_local $6
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
+ )
+ )
+ )
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
+ )
+ (i32.store
+ (tee_local $6
(i32.add
- (get_local $26)
- (i32.const -40)
+ (get_local $17)
+ (i32.const 4)
)
- (get_local $13)
)
+ (i32.const 27)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (i32.store
+ (get_local $2)
+ (i32.load
+ (i32.const 1656)
+ )
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $1)
- (get_local $6)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.load
+ (i32.const 1660)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=8
+ (get_local $2)
+ (i32.load
+ (i32.const 1664)
+ )
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $17)
- (i32.const 4)
+ (i32.store offset=12
+ (get_local $2)
+ (i32.load
+ (i32.const 1668)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1656)
+ (get_local $20)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store offset=8
- (get_local $2)
- (i32.load
- (i32.const 1664)
- )
- )
- (i32.store offset=12
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1668)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1664)
- (get_local $2)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (i32.const 24)
- )
- )
- (loop $do-in68
(i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 1664)
+ (get_local $2)
)
- (br_if $do-in68
- (i32.lt_u
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- (get_local $0)
+ (set_local $2
+ (i32.add
+ (get_local $17)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $17)
- (get_local $11)
- )
- (block
+ (loop $do-in68
(i32.store
- (get_local $6)
- (i32.and
- (i32.load
- (get_local $6)
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (tee_local $2
- (i32.sub
- (get_local $17)
- (get_local $11)
- )
+ (br_if $do-in68
+ (i32.lt_u
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $0)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $17)
- (get_local $2)
- )
- (set_local $1
- (i32.shr_u
- (get_local $2)
- (i32.const 3)
- )
+ (get_local $11)
)
- (if
- (i32.lt_u
- (get_local $2)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (i32.load
+ (get_local $6)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $11)
+ (i32.or
+ (tee_local $2
+ (i32.sub
+ (get_local $17)
+ (get_local $11)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $2)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 256)
+ )
+ (block
+ (set_local $13
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $3
(i32.load
- (tee_local $4
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $46
+ (get_local $4)
+ )
+ (set_local $39
+ (get_local $3)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $3)
+ (get_local $4)
+ )
+ )
(set_local $46
- (get_local $4)
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
(set_local $39
- (get_local $3)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $3)
- (get_local $4)
- )
- )
- (set_local $46
- (i32.add
(get_local $13)
- (i32.const 8)
)
)
- (set_local $39
- (get_local $13)
- )
)
+ (i32.store
+ (get_local $46)
+ (get_local $11)
+ )
+ (i32.store offset=12
+ (get_local $39)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $39)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $13)
+ )
+ (br $do-once38)
)
- (i32.store
- (get_local $46)
- (get_local $11)
- )
- (i32.store offset=12
- (get_local $39)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $39)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $13)
- )
- (br $do-once38)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $3
- (if (result i32)
- (tee_local $13
- (i32.shr_u
- (get_local $2)
- (i32.const 8)
- )
- )
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $3
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $13
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $13
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $13)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $13)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $13
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $13)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $13)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $4)
- (get_local $13)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $4)
+ (get_local $13)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $11)
- (get_local $3)
- )
- (i32.store offset=20
- (get_local $11)
- (i32.const 0)
- )
- (i32.store
- (get_local $15)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $4
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $3)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $4)
- (get_local $1)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $11)
- )
- (br $do-once38)
+ (i32.store offset=28
+ (get_local $11)
+ (get_local $3)
)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $3)
- (i32.const 31)
- )
- )
+ (i32.store offset=20
+ (get_local $11)
+ (i32.const 0)
)
- )
- (set_local $4
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $15)
+ (i32.const 0)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
- )
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
- )
- (set_local $7
- (i32.const 305)
- )
- (br $while-out69)
- )
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $4
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $1
+ (tee_local $1
(i32.shl
- (get_local $1)
(i32.const 1)
+ (get_local $3)
)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
)
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $4)
- )
- (set_local $7
- (i32.const 302)
+ (get_local $1)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 302)
- )
- (if
- (i32.lt_u
- (get_local $47)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $47)
+ (get_local $0)
(get_local $11)
)
(i32.store offset=24
(get_local $11)
- (get_local $54)
+ (get_local $0)
)
(i32.store offset=12
(get_local $11)
@@ -5673,271 +5533,406 @@
(get_local $11)
(get_local $11)
)
+ (br $do-once38)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 305)
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $3)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $1
- (i32.load
- (tee_local $4
+ )
+ (set_local $4
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
+ )
+ (get_local $2)
+ )
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 305)
+ )
+ (br $while-out69)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $31)
- (i32.const 8)
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $2
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (i32.ge_u
- (get_local $31)
- (get_local $2)
+ (block
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 302)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $1)
- (get_local $11)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 302)
+ )
+ (if
+ (i32.lt_u
+ (get_local $47)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $4)
+ (get_local $47)
(get_local $11)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $11)
- (get_local $1)
+ (get_local $54)
)
(i32.store offset=12
(get_local $11)
- (get_local $31)
+ (get_local $11)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $11)
(get_local $11)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 305)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $31)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $2
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $31)
+ (get_local $2)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $11)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $31)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (i32.lt_u
+ (get_local $20)
+ (get_local $1)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 1224)
(get_local $20)
- (get_local $1)
)
)
(i32.store
- (i32.const 1224)
+ (i32.const 1656)
(get_local $20)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1244)
- (i32.load
- (i32.const 1680)
+ (i32.store
+ (i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store
- (i32.const 1240)
- (i32.const -1)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $do-in
- (i32.store offset=12
- (tee_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.store
+ (i32.const 1668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1244)
+ (i32.load
+ (i32.const 1680)
)
- (get_local $13)
)
- (i32.store offset=8
- (get_local $13)
- (get_local $13)
+ (i32.store
+ (i32.const 1240)
+ (i32.const -1)
)
- (br_if $do-in
- (i32.ne
- (tee_local $1
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $do-in
+ (i32.store offset=12
+ (tee_local $13
(i32.add
- (get_local $1)
- (i32.const 1)
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
+ )
+ (get_local $13)
+ )
+ (i32.store offset=8
+ (get_local $13)
+ (get_local $13)
+ )
+ (br_if $do-in
+ (i32.ne
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (i32.const 32)
)
- (i32.const 32)
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $2
- (i32.sub
- (i32.add
- (get_local $26)
- (i32.const -40)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $2
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
)
- (get_local $13)
)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $2)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $1)
- (get_local $2)
+ (i32.or
+ (get_local $2)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $2)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $31
- (i32.sub
- (get_local $11)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $31
+ (i32.sub
+ (get_local $11)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $7
- (i32.add
- (tee_local $11
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $7
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (get_local $31)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (get_local $31)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
)
)
- )
- (i32.store
- (call $Qa)
- (i32.const 12)
+ (i32.store
+ (call $Qa)
+ (i32.const 12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
)
(set_global $r
(get_local $25)
)
- (i32.const 0)
+ (i32.add
+ (get_local $15)
+ (i32.const 8)
+ )
)
(func $fb (param $0 i32)
(local $1 i32)
diff --git a/test/memorygrowth.fromasm.clamp b/test/memorygrowth.fromasm.clamp
index a6d77f5cf..71c095deb 100644
--- a/test/memorygrowth.fromasm.clamp
+++ b/test/memorygrowth.fromasm.clamp
@@ -105,830 +105,790 @@
(local $52 i32)
(local $53 i32)
(local $54 i32)
- (set_local $25
- (get_global $r)
- )
- (set_global $r
- (i32.add
+ (block $folding-inner0
+ (set_local $25
(get_global $r)
- (i32.const 16)
)
- )
- (set_local $13
- (get_local $25)
- )
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
+ (set_global $r
+ (i32.add
+ (get_global $r)
+ (i32.const 16)
)
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ )
+ (set_local $13
+ (get_local $25)
+ )
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $6)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $6)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $6)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $6
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $6)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
+ (get_local $7)
(get_local $6)
- (get_local $8)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $5
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $5)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $5)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $5
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $5)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
+ (set_local $5
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
(if
- (tee_local $4
- (i32.load offset=20
+ (tee_local $14
+ (i32.load offset=16
(get_local $5)
)
)
(set_local $6
- (get_local $4)
+ (get_local $14)
)
- (block
+ (if
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
(set_local $6
- (get_local $0)
+ (get_local $4)
)
- (set_local $2
- (get_local $1)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $6)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
+ (set_local $5
(get_local $6)
- (get_local $1)
- (get_local $4)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $6)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $5
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (if
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
- )
- (block
- (set_local $23
- (i32.const 0)
- )
- (br $do-once4)
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -941,702 +901,744 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (if
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
+ (block
+ (set_local $23
+ (i32.const 0)
+ )
+ (br $do-once4)
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $5)
- (get_local $6)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $5)
+ (get_local $6)
)
+ (get_local $6)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
+ (i32.store
+ (i32.const 1216)
+ (get_local $6)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $5)
+ )
)
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
)
)
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
+ (set_local $5
+ (get_local $3)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (set_local $5
+ (get_local $3)
+ )
+ )
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
)
(set_local $5
- (get_local $3)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
- (i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (set_local $8
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $16)
)
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
)
- (br $label$break$a)
- )
- (block
- (set_local $16
- (get_local $12)
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
)
- (set_local $8
- (get_local $7)
+ (block
+ (set_local $16
+ (get_local $12)
+ )
+ (set_local $8
+ (get_local $7)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1644,419 +1646,376 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
+ (if
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $14
- (get_local $3)
+ (block
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $5
+ (get_local $3)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $5
- (i32.const 0)
- )
- (set_local $33
- (i32.const 0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $5
+ (i32.const 0)
+ )
+ (set_local $33
+ (i32.const 0)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.and
- (i32.eqz
- (get_local $5)
- )
- (i32.eqz
- (get_local $33)
- )
- )
- (block (result i32)
- (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.and
(i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (get_local $5)
+ )
+ (i32.eqz
+ (get_local $33)
+ )
+ )
+ (block (result i32)
+ (if
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $12)
)
)
)
)
- )
- (block
- (set_local $5
- (get_local $0)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $5
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $5
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $5)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
+ (get_local $8)
(get_local $5)
- (get_local $3)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
+ (block
+ (set_local $29
+ (get_local $36)
+ )
+ (set_local $28
+ (get_local $3)
+ )
+ (set_local $32
+ (get_local $33)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
)
- (set_local $10
- (get_local $33)
+ (block
+ (set_local $18
+ (get_local $36)
+ )
+ (set_local $10
+ (get_local $33)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $29)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
- )
- (set_local $28
- (get_local $1)
- )
- (set_local $32
+ (set_local $5
+ (select
(get_local $8)
+ (get_local $29)
+ (get_local $1)
)
- (br $while-in16)
)
- )
- (if
- (tee_local $28
- (i32.load offset=20
+ (set_local $8
+ (select
(get_local $28)
+ (get_local $32)
+ (get_local $1)
)
)
- (block
- (set_local $29
- (get_local $5)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
)
- (set_local $32
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- (block
- (set_local $18
- (get_local $5)
+ (if
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
)
- (set_local $10
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block
+ (set_local $18
+ (get_local $5)
+ )
+ (set_local $10
+ (get_local $8)
+ )
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
- )
+ (get_local $10)
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
)
+ (get_local $0)
)
- (call $qa)
)
- (if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $5
- (i32.load offset=24
- (get_local $10)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
- )
- (block
- (set_local $22
- (i32.const 0)
- )
- (br $do-once17)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
)
+ (get_local $10)
)
- (loop $while-in20
+ (block
(if
(tee_local $4
(i32.load
(tee_local $3
(i32.add
- (get_local $14)
+ (get_local $10)
(i32.const 20)
)
)
@@ -2069,698 +2028,615 @@
(set_local $1
(get_local $3)
)
- (br $while-in20)
+ )
+ (if
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (set_local $1
+ (get_local $12)
+ )
+ (block
+ (set_local $22
+ (i32.const 0)
+ )
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $5
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $5
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $6
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
(set_local $6
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
(get_local $5)
- (i32.const 8)
)
)
- (set_local $6
- (get_local $5)
- )
)
+ (i32.store
+ (get_local $19)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $5)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $5
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $5)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $5)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $5)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2770,375 +2646,449 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (block $while-out27
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 148)
+ )
+ (br $while-out27)
+ )
+ )
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $12
+ (i32.add
(i32.add
- (get_local $17)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ (block
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 145)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
+ )
+ )
+ (set_local $5
+ (get_local $0)
)
)
(set_local $5
(get_local $0)
)
)
- (set_local $5
- (get_local $0)
- )
)
- )
- (set_local $5
- (get_local $0)
+ (set_local $5
+ (get_local $0)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (i32.const 1216)
- )
- )
- (get_local $5)
- )
- (block
- (set_local $15
- (i32.load
- (i32.const 1228)
+ (if
+ (i32.ge_u
+ (tee_local $10
+ (i32.load
+ (i32.const 1216)
+ )
)
+ (get_local $5)
)
- (if
- (i32.gt_u
- (tee_local $17
- (i32.sub
- (get_local $10)
- (get_local $5)
- )
+ (block
+ (set_local $15
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 1228)
- (tee_local $21
- (i32.add
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $17
+ (i32.sub
+ (get_local $10)
(get_local $5)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 1216)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $21)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 1228)
+ (tee_local $21
+ (i32.add
+ (get_local $15)
+ (get_local $5)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 1216)
(get_local $17)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $21)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $21)
+ (get_local $17)
+ )
(get_local $17)
)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $10)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $17
- (i32.add
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $17
(i32.add
- (get_local $15)
- (get_local $10)
+ (i32.add
+ (get_local $15)
+ (get_local $10)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $17)
+ (i32.or
+ (i32.load
+ (get_local $17)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $15)
- (i32.const 8)
- )
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $15
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $17
- (i32.sub
- (get_local $15)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $17
+ (i32.sub
+ (get_local $15)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $10
- (i32.add
- (tee_local $15
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $10
+ (i32.add
+ (tee_local $15
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $17)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $15)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 1680)
- )
- )
- (block
- (i32.store
- (i32.const 1688)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1684)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1692)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1696)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1700)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1652)
- (i32.const 0)
- )
- (i32.store
- (get_local $13)
- (tee_local $15
- (i32.xor
- (i32.and
- (get_local $13)
- (i32.const -16)
- )
- (i32.const 1431655768)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 1680)
)
)
- (i32.store
- (i32.const 1680)
- (get_local $15)
- )
- )
- )
- (set_local $15
- (i32.add
- (get_local $5)
- (i32.const 48)
- )
- )
- (if
- (i32.le_u
- (tee_local $13
- (i32.and
- (tee_local $10
- (i32.add
- (tee_local $13
- (i32.load
- (i32.const 1688)
- )
- )
- (tee_local $17
- (i32.add
- (get_local $5)
- (i32.const 47)
- )
+ (block
+ (i32.store
+ (i32.const 1688)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1684)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1692)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1696)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1700)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1652)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $13)
+ (tee_local $15
+ (i32.xor
+ (i32.and
+ (get_local $13)
+ (i32.const -16)
)
- )
- )
- (tee_local $21
- (i32.sub
- (i32.const 0)
- (get_local $13)
+ (i32.const 1431655768)
)
)
)
- )
- (get_local $5)
- )
- (block
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.const 0)
+ (i32.store
+ (i32.const 1680)
+ (get_local $15)
+ )
)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 1648)
+ (set_local $15
+ (i32.add
+ (get_local $5)
+ (i32.const 48)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $6
- (i32.add
- (tee_local $16
- (i32.load
- (i32.const 1640)
+ (i32.le_u
+ (tee_local $13
+ (i32.and
+ (tee_local $10
+ (i32.add
+ (tee_local $13
+ (i32.load
+ (i32.const 1688)
+ )
+ )
+ (tee_local $17
+ (i32.add
+ (get_local $5)
+ (i32.const 47)
+ )
)
)
- (get_local $13)
+ )
+ (tee_local $21
+ (i32.sub
+ (i32.const 0)
+ (get_local $13)
+ )
)
)
- (get_local $16)
- )
- (i32.gt_u
- (get_local $6)
- (get_local $18)
)
+ (get_local $5)
)
(block
(set_global $r
@@ -3149,270 +3099,306 @@
)
)
)
- )
- (if
- (i32.eq
- (tee_local $7
- (block $label$break$b (result i32)
- (if (result i32)
- (i32.and
- (i32.load
- (i32.const 1652)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1648)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $6
+ (i32.add
+ (tee_local $16
+ (i32.load
+ (i32.const 1640)
+ )
+ )
+ (get_local $13)
)
- (i32.const 4)
)
- (i32.const 188)
- (block (result i32)
- (block $label$break$c
- (if
- (tee_local $18
- (i32.load
- (i32.const 1232)
- )
- )
- (block
- (set_local $6
- (i32.const 1656)
+ (get_local $16)
+ )
+ (i32.gt_u
+ (get_local $6)
+ (get_local $18)
+ )
+ )
+ (block
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (tee_local $7
+ (block $label$break$b (result i32)
+ (if (result i32)
+ (i32.and
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
+ )
+ (i32.const 188)
+ (block (result i32)
+ (block $label$break$c
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $while-in32
- (block $while-out31
- (if
- (i32.le_u
- (tee_local $16
- (i32.load
- (get_local $6)
- )
- )
- (get_local $18)
- )
+ (block
+ (set_local $6
+ (i32.const 1656)
+ )
+ (loop $while-in32
+ (block $while-out31
(if
- (i32.gt_u
- (i32.add
- (get_local $16)
+ (i32.le_u
+ (tee_local $16
(i32.load
- (tee_local $19
- (i32.add
- (get_local $6)
- (i32.const 4)
- )
- )
+ (get_local $6)
)
)
(get_local $18)
)
- (block
- (set_local $0
- (get_local $6)
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $16)
+ (i32.load
+ (tee_local $19
+ (i32.add
+ (get_local $6)
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (get_local $18)
)
- (set_local $4
- (get_local $19)
+ (block
+ (set_local $0
+ (get_local $6)
+ )
+ (set_local $4
+ (get_local $19)
+ )
+ (br $while-out31)
)
- (br $while-out31)
)
)
- )
- (br_if $while-in32
- (tee_local $6
- (i32.load offset=8
- (get_local $6)
+ (br_if $while-in32
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $6)
+ )
)
)
+ (set_local $7
+ (i32.const 171)
+ )
+ (br $label$break$c)
)
- (set_local $7
- (i32.const 171)
- )
- (br $label$break$c)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.and
- (i32.sub
- (get_local $10)
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.lt_u
+ (tee_local $6
+ (i32.and
+ (i32.sub
+ (get_local $10)
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $21)
)
- (get_local $21)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $6)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $0)
+ )
+ (i32.load
+ (get_local $4)
+ )
)
)
- (i32.add
- (i32.load
- (get_local $0)
+ (if
+ (i32.ne
+ (get_local $19)
+ (i32.const -1)
)
- (i32.load
- (get_local $4)
+ (block
+ (set_local $20
+ (get_local $19)
+ )
+ (set_local $26
+ (get_local $6)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
- )
- (if
- (i32.ne
- (get_local $19)
- (i32.const -1)
- )
(block
- (set_local $20
+ (set_local $11
(get_local $19)
)
- (set_local $26
+ (set_local $2
(get_local $6)
)
- (br $label$break$b
- (i32.const 191)
+ (set_local $7
+ (i32.const 181)
)
)
)
- (block
- (set_local $11
- (get_local $19)
- )
- (set_local $2
- (get_local $6)
- )
- (set_local $7
- (i32.const 181)
- )
- )
)
)
- )
- (set_local $7
- (i32.const 171)
+ (set_local $7
+ (i32.const 171)
+ )
)
)
- )
- (block $do-once33
- (if
- (i32.eq
- (get_local $7)
- (i32.const 171)
- )
+ (block $do-once33
(if
- (i32.ne
- (tee_local $18
- (call $ta
- (i32.const 0)
+ (i32.eq
+ (get_local $7)
+ (i32.const 171)
+ )
+ (if
+ (i32.ne
+ (tee_local $18
+ (call $ta
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $19
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1684)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $19
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1684)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $0
+ (get_local $18)
)
)
- (tee_local $0
- (get_local $18)
- )
- )
- (i32.add
- (i32.sub
- (get_local $13)
- (get_local $0)
- )
- (i32.and
- (i32.add
- (get_local $19)
+ (i32.add
+ (i32.sub
+ (get_local $13)
(get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.and
+ (i32.add
+ (get_local $19)
+ (get_local $0)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
)
- )
- (set_local $0
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1640)
+ (set_local $0
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1640)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
(get_local $3)
- (get_local $5)
- )
- (i32.lt_u
- (get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $19
- (i32.load
- (i32.const 1648)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $5)
)
- (br_if $do-once33
- (i32.or
- (i32.le_u
- (get_local $0)
- (get_local $6)
- )
- (i32.gt_u
- (get_local $0)
- (get_local $19)
- )
- )
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
)
)
- (if
- (i32.eq
+ (block
+ (if
(tee_local $19
- (call $ta
- (get_local $3)
+ (i32.load
+ (i32.const 1648)
)
)
- (get_local $18)
- )
- (block
- (set_local $20
- (get_local $18)
- )
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
+ (br_if $do-once33
+ (i32.or
+ (i32.le_u
+ (get_local $0)
+ (get_local $6)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (get_local $19)
+ )
+ )
)
)
- (block
- (set_local $11
- (get_local $19)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
+ )
+ (get_local $18)
)
- (set_local $2
- (get_local $3)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $7
- (i32.const 181)
+ (block
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
)
)
)
@@ -3421,1058 +3407,1084 @@
)
)
)
- )
- (block $label$break$d
- (if
- (i32.eq
- (get_local $7)
- (i32.const 181)
- )
- (block
- (set_local $19
- (i32.sub
- (i32.const 0)
- (get_local $2)
- )
+ (block $label$break$d
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 181)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
+ (block
+ (set_local $19
+ (i32.sub
+ (i32.const 0)
(get_local $2)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $18)
- )
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
)
- (i32.const -1)
+ (i32.const 2147483647)
)
- (block
- (drop
+ (if
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
+ )
+ (set_local $1
+ (i32.add
+ (get_local $0)
+ (get_local $2)
)
)
- (br $label$break$d)
)
(set_local $1
- (i32.add
- (get_local $0)
- (get_local $2)
- )
+ (get_local $2)
)
)
(set_local $1
(get_local $2)
)
)
- (set_local $1
- (get_local $2)
- )
- )
- (if
- (i32.ne
- (get_local $11)
- (i32.const -1)
- )
- (block
- (set_local $20
+ (if
+ (i32.ne
(get_local $11)
+ (i32.const -1)
)
- (set_local $26
- (get_local $1)
- )
- (br $label$break$b
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $11)
+ )
+ (set_local $26
+ (get_local $1)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (i32.store
- (i32.const 1652)
- (i32.or
- (i32.load
- (i32.const 1652)
+ (i32.store
+ (i32.const 1652)
+ (i32.or
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
+ (i32.const 188)
)
- (i32.const 188)
)
)
)
- )
- (i32.const 188)
- )
- (if
- (i32.lt_u
- (get_local $13)
- (i32.const 2147483647)
+ (i32.const 188)
)
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $ta
- (get_local $13)
+ (i32.lt_u
+ (get_local $13)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $ta
+ (get_local $13)
+ )
)
- )
- (tee_local $13
- (call $ta
- (i32.const 0)
+ (tee_local $13
+ (call $ta
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $13)
- (i32.const -1)
- )
- )
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.sub
- (get_local $13)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
)
- )
- (i32.add
- (get_local $5)
- (i32.const 40)
)
)
- (block
- (set_local $20
- (get_local $1)
- )
- (set_local $26
- (get_local $11)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.sub
+ (get_local $13)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $5)
+ (i32.const 40)
+ )
)
- (set_local $7
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $1)
+ )
+ (set_local $26
+ (get_local $11)
+ )
+ (set_local $7
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 191)
- )
- (block
- (i32.store
- (i32.const 1640)
- (tee_local $11
- (i32.add
- (i32.load
- (i32.const 1640)
- )
- (get_local $26)
- )
- )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 191)
)
- (if
- (i32.gt_u
- (get_local $11)
- (i32.load
- (i32.const 1644)
- )
- )
+ (block
(i32.store
- (i32.const 1644)
- (get_local $11)
+ (i32.const 1640)
+ (tee_local $11
+ (i32.add
+ (i32.load
+ (i32.const 1640)
+ )
+ (get_local $26)
+ )
+ )
)
- )
- (block $do-once38
(if
- (tee_local $11
+ (i32.gt_u
+ (get_local $11)
(i32.load
- (i32.const 1232)
+ (i32.const 1644)
)
)
- (block
- (set_local $2
- (i32.const 1656)
+ (i32.store
+ (i32.const 1644)
+ (get_local $11)
+ )
+ )
+ (block $do-once38
+ (if
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $do-in41
- (block $do-out40
- (if
- (i32.eq
- (get_local $20)
- (i32.add
- (tee_local $1
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 1656)
+ )
+ (loop $do-in41
+ (block $do-out40
+ (if
+ (i32.eq
+ (get_local $20)
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $17
- (i32.load
- (tee_local $13
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $17
+ (i32.load
+ (tee_local $13
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
- )
- (block
- (set_local $48
- (get_local $1)
- )
- (set_local $49
- (get_local $13)
- )
- (set_local $50
- (get_local $17)
- )
- (set_local $51
- (get_local $2)
- )
- (set_local $7
- (i32.const 201)
+ (block
+ (set_local $48
+ (get_local $1)
+ )
+ (set_local $49
+ (get_local $13)
+ )
+ (set_local $50
+ (get_local $17)
+ )
+ (set_local $51
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 201)
+ )
+ (br $do-out40)
)
- (br $do-out40)
)
- )
- (br_if $do-in41
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $do-in41
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 201)
- )
(if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $51)
- )
- (i32.const 8)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 201)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $11)
- (get_local $20)
- )
- (i32.ge_u
- (get_local $11)
- (get_local $48)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $51)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $49)
- (i32.add
- (get_local $50)
- (get_local $26)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $11)
+ (get_local $20)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $11)
- (tee_local $17
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (get_local $48)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $49)
+ (i32.add
+ (get_local $50)
+ (get_local $26)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $11)
+ (tee_local $17
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
)
- )
- (set_local $13
- (i32.add
- (i32.sub
- (get_local $26)
- (get_local $17)
- )
- (i32.load
- (i32.const 1220)
+ (set_local $13
+ (i32.add
+ (i32.sub
+ (get_local $26)
+ (get_local $17)
+ )
+ (i32.load
+ (i32.const 1220)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store
- (i32.const 1220)
- (get_local $13)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 1220)
(get_local $13)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $13)
+ (i32.or
+ (get_local $13)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $13)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
+ (br $do-once38)
)
- (br $do-once38)
)
)
)
- )
- (set_local $14
- (if (result i32)
- (i32.lt_u
- (get_local $20)
- (tee_local $13
- (i32.load
- (i32.const 1224)
+ (set_local $14
+ (if (result i32)
+ (i32.lt_u
+ (get_local $20)
+ (tee_local $13
+ (i32.load
+ (i32.const 1224)
+ )
)
)
- )
- (block (result i32)
- (i32.store
- (i32.const 1224)
+ (block (result i32)
+ (i32.store
+ (i32.const 1224)
+ (get_local $20)
+ )
(get_local $20)
)
+ (get_local $13)
+ )
+ )
+ (set_local $13
+ (i32.add
(get_local $20)
+ (get_local $26)
)
- (get_local $13)
)
- )
- (set_local $13
- (i32.add
- (get_local $20)
- (get_local $26)
+ (set_local $2
+ (i32.const 1656)
)
- )
- (set_local $2
- (i32.const 1656)
- )
- (loop $while-in43
- (block $while-out42
- (if
- (i32.eq
- (i32.load
- (get_local $2)
- )
- (get_local $13)
- )
- (block
- (set_local $52
- (get_local $2)
- )
- (set_local $42
- (get_local $2)
+ (loop $while-in43
+ (block $while-out42
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $13)
)
- (set_local $7
- (i32.const 209)
+ (block
+ (set_local $52
+ (get_local $2)
+ )
+ (set_local $42
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 209)
+ )
+ (br $while-out42)
)
- (br $while-out42)
)
- )
- (br_if $while-in43
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in43
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
+ (set_local $30
+ (i32.const 1656)
+ )
)
- (set_local $30
- (i32.const 1656)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 209)
)
(if
- (i32.and
- (i32.load offset=12
- (get_local $42)
- )
- (i32.const 8)
- )
- (set_local $30
- (i32.const 1656)
+ (i32.eq
+ (get_local $7)
+ (i32.const 209)
)
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (set_local $30
+ (i32.const 1656)
+ )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $5)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
- (i32.add
- (get_local $1)
- (i32.const 16)
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (block
- (set_local $3
- (get_local $16)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $22)
+ )
+ (set_local $0
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $do-once51)
+ )
)
)
- (if
- (tee_local $22
- (i32.load
- (get_local $18)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
- (block
- (set_local $3
- (get_local $22)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $18)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
+ )
+ (call $qa)
(block
- (set_local $24
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once51)
+ (set_local $24
+ (get_local $3)
+ )
)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $6)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $18)
(get_local $6)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
+ (set_local $24
+ (get_local $0)
+ )
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4480,11 +4492,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4495,467 +4509,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $15)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
(get_local $15)
)
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $6
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $6
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $6)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4965,705 +4825,705 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $6
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (block $while-out63
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 279)
+ )
+ (br $while-out63)
+ )
+ )
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $38)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $6)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $6
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ (block
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 276)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
- )
- )
- )
- )
- (loop $while-in66
- (block $while-out65
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $30)
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
)
)
- (get_local $11)
)
+ )
+ )
+ (loop $while-in66
+ (block $while-out65
(if
- (i32.gt_u
- (tee_local $15
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $30)
- )
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $30)
)
)
(get_local $11)
)
- (block
- (set_local $0
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $30)
+ )
+ )
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $0
+ (get_local $15)
+ )
+ (br $while-out65)
)
- (br $while-out65)
)
)
- )
- (set_local $30
- (i32.load offset=8
- (get_local $30)
+ (set_local $30
+ (i32.load offset=8
+ (get_local $30)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
- )
- (set_local $15
- (i32.add
- (tee_local $17
- (i32.add
- (get_local $0)
- (i32.const -47)
+ (set_local $15
+ (i32.add
+ (tee_local $17
+ (i32.add
+ (get_local $0)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $2
- (i32.add
- (tee_local $17
- (select
- (get_local $11)
- (tee_local $2
- (i32.add
- (get_local $17)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $2
+ (i32.add
+ (tee_local $17
+ (select
+ (get_local $11)
+ (tee_local $2
+ (i32.add
+ (get_local $17)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $15)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $15)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $2)
- (tee_local $15
- (i32.add
- (get_local $11)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $15
+ (i32.add
+ (get_local $11)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $6
- (i32.sub
+ (i32.store
+ (i32.const 1220)
+ (tee_local $6
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
+ )
+ )
+ )
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
+ )
+ (i32.store
+ (tee_local $6
(i32.add
- (get_local $26)
- (i32.const -40)
+ (get_local $17)
+ (i32.const 4)
)
- (get_local $13)
)
+ (i32.const 27)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (i32.store
+ (get_local $2)
+ (i32.load
+ (i32.const 1656)
+ )
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $1)
- (get_local $6)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.load
+ (i32.const 1660)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=8
+ (get_local $2)
+ (i32.load
+ (i32.const 1664)
+ )
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $17)
- (i32.const 4)
+ (i32.store offset=12
+ (get_local $2)
+ (i32.load
+ (i32.const 1668)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1656)
+ (get_local $20)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store offset=8
- (get_local $2)
- (i32.load
- (i32.const 1664)
- )
- )
- (i32.store offset=12
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1668)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1664)
- (get_local $2)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (i32.const 24)
- )
- )
- (loop $do-in68
(i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 1664)
+ (get_local $2)
)
- (br_if $do-in68
- (i32.lt_u
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- (get_local $0)
+ (set_local $2
+ (i32.add
+ (get_local $17)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $17)
- (get_local $11)
- )
- (block
+ (loop $do-in68
(i32.store
- (get_local $6)
- (i32.and
- (i32.load
- (get_local $6)
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (tee_local $2
- (i32.sub
- (get_local $17)
- (get_local $11)
- )
+ (br_if $do-in68
+ (i32.lt_u
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $0)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $17)
- (get_local $2)
- )
- (set_local $1
- (i32.shr_u
- (get_local $2)
- (i32.const 3)
- )
+ (get_local $11)
)
- (if
- (i32.lt_u
- (get_local $2)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (i32.load
+ (get_local $6)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $11)
+ (i32.or
+ (tee_local $2
+ (i32.sub
+ (get_local $17)
+ (get_local $11)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $2)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 256)
+ )
+ (block
+ (set_local $13
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $3
(i32.load
- (tee_local $4
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $46
+ (get_local $4)
+ )
+ (set_local $39
+ (get_local $3)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $3)
+ (get_local $4)
+ )
+ )
(set_local $46
- (get_local $4)
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
(set_local $39
- (get_local $3)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $3)
- (get_local $4)
- )
- )
- (set_local $46
- (i32.add
(get_local $13)
- (i32.const 8)
)
)
- (set_local $39
- (get_local $13)
- )
)
+ (i32.store
+ (get_local $46)
+ (get_local $11)
+ )
+ (i32.store offset=12
+ (get_local $39)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $39)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $13)
+ )
+ (br $do-once38)
)
- (i32.store
- (get_local $46)
- (get_local $11)
- )
- (i32.store offset=12
- (get_local $39)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $39)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $13)
- )
- (br $do-once38)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $3
- (if (result i32)
- (tee_local $13
- (i32.shr_u
- (get_local $2)
- (i32.const 8)
- )
- )
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $3
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $13
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $13
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $13)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $13)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $13
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $13)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $13)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $4)
- (get_local $13)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $4)
+ (get_local $13)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $11)
- (get_local $3)
- )
- (i32.store offset=20
- (get_local $11)
- (i32.const 0)
- )
- (i32.store
- (get_local $15)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $4
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $3)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $4)
- (get_local $1)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $11)
- )
- (br $do-once38)
+ (i32.store offset=28
+ (get_local $11)
+ (get_local $3)
)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $3)
- (i32.const 31)
- )
- )
+ (i32.store offset=20
+ (get_local $11)
+ (i32.const 0)
)
- )
- (set_local $4
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $15)
+ (i32.const 0)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
- )
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
- )
- (set_local $7
- (i32.const 305)
- )
- (br $while-out69)
- )
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $4
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $1
+ (tee_local $1
(i32.shl
- (get_local $1)
(i32.const 1)
+ (get_local $3)
)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
)
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $4)
- )
- (set_local $7
- (i32.const 302)
+ (get_local $1)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 302)
- )
- (if
- (i32.lt_u
- (get_local $47)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $47)
+ (get_local $0)
(get_local $11)
)
(i32.store offset=24
(get_local $11)
- (get_local $54)
+ (get_local $0)
)
(i32.store offset=12
(get_local $11)
@@ -5673,271 +5533,406 @@
(get_local $11)
(get_local $11)
)
+ (br $do-once38)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 305)
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $3)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $1
- (i32.load
- (tee_local $4
+ )
+ (set_local $4
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
+ )
+ (get_local $2)
+ )
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 305)
+ )
+ (br $while-out69)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $31)
- (i32.const 8)
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $2
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (i32.ge_u
- (get_local $31)
- (get_local $2)
+ (block
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 302)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $1)
- (get_local $11)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 302)
+ )
+ (if
+ (i32.lt_u
+ (get_local $47)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $4)
+ (get_local $47)
(get_local $11)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $11)
- (get_local $1)
+ (get_local $54)
)
(i32.store offset=12
(get_local $11)
- (get_local $31)
+ (get_local $11)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $11)
(get_local $11)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 305)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $31)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $2
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $31)
+ (get_local $2)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $11)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $31)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (i32.lt_u
+ (get_local $20)
+ (get_local $1)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 1224)
(get_local $20)
- (get_local $1)
)
)
(i32.store
- (i32.const 1224)
+ (i32.const 1656)
(get_local $20)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1244)
- (i32.load
- (i32.const 1680)
+ (i32.store
+ (i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store
- (i32.const 1240)
- (i32.const -1)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $do-in
- (i32.store offset=12
- (tee_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.store
+ (i32.const 1668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1244)
+ (i32.load
+ (i32.const 1680)
)
- (get_local $13)
)
- (i32.store offset=8
- (get_local $13)
- (get_local $13)
+ (i32.store
+ (i32.const 1240)
+ (i32.const -1)
)
- (br_if $do-in
- (i32.ne
- (tee_local $1
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $do-in
+ (i32.store offset=12
+ (tee_local $13
(i32.add
- (get_local $1)
- (i32.const 1)
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
+ )
+ (get_local $13)
+ )
+ (i32.store offset=8
+ (get_local $13)
+ (get_local $13)
+ )
+ (br_if $do-in
+ (i32.ne
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (i32.const 32)
)
- (i32.const 32)
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $2
- (i32.sub
- (i32.add
- (get_local $26)
- (i32.const -40)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $2
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
)
- (get_local $13)
)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $2)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $1)
- (get_local $2)
+ (i32.or
+ (get_local $2)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $2)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $31
- (i32.sub
- (get_local $11)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $31
+ (i32.sub
+ (get_local $11)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $7
- (i32.add
- (tee_local $11
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $7
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (get_local $31)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (get_local $31)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
)
)
- )
- (i32.store
- (call $Qa)
- (i32.const 12)
+ (i32.store
+ (call $Qa)
+ (i32.const 12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
)
(set_global $r
(get_local $25)
)
- (i32.const 0)
+ (i32.add
+ (get_local $15)
+ (i32.const 8)
+ )
)
(func $fb (param $0 i32)
(local $1 i32)
diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise
index bd959d564..38e3724a5 100644
--- a/test/memorygrowth.fromasm.imprecise
+++ b/test/memorygrowth.fromasm.imprecise
@@ -104,830 +104,790 @@
(local $52 i32)
(local $53 i32)
(local $54 i32)
- (set_local $25
- (get_global $r)
- )
- (set_global $r
- (i32.add
+ (block $folding-inner0
+ (set_local $25
(get_global $r)
- (i32.const 16)
)
- )
- (set_local $13
- (get_local $25)
- )
- (block $do-once
- (if
- (i32.lt_u
- (get_local $0)
- (i32.const 245)
+ (set_global $r
+ (i32.add
+ (get_global $r)
+ (i32.const 16)
)
- (block
- (if
- (i32.and
- (tee_local $5
- (i32.shr_u
- (tee_local $4
- (i32.load
- (i32.const 1208)
+ )
+ (set_local $13
+ (get_local $25)
+ )
+ (block $do-once
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.const 245)
+ )
+ (block
+ (if
+ (i32.and
+ (tee_local $5
+ (i32.shr_u
+ (tee_local $4
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shr_u
- (tee_local $3
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (tee_local $0
+ (i32.shr_u
+ (tee_local $3
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(get_local $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (get_local $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (set_local $6
- (i32.load
- (tee_local $3
- (i32.add
- (tee_local $12
- (i32.load
- (tee_local $14
- (i32.add
- (tee_local $8
- (i32.add
- (i32.shl
- (tee_local $0
- (i32.add
- (i32.xor
- (i32.and
- (get_local $5)
+ (block
+ (set_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (tee_local $12
+ (i32.load
+ (tee_local $14
+ (i32.add
+ (tee_local $8
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.add
+ (i32.xor
+ (i32.and
+ (get_local $5)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
+ (get_local $0)
)
- (get_local $0)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $8)
- (get_local $6)
- )
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
- )
+ (if
+ (i32.eq
+ (get_local $8)
+ (get_local $6)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $6)
- (i32.load
- (i32.const 1224)
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $6)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $12)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $7)
- (get_local $8)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $6)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $12)
)
- (i32.store
- (get_local $14)
- (get_local $6)
+ (block
+ (i32.store
+ (get_local $7)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $14)
+ (get_local $6)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $12)
- (i32.or
- (tee_local $6
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $12)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $14
- (i32.add
+ (i32.store
+ (tee_local $14
(i32.add
- (get_local $12)
- (get_local $6)
+ (i32.add
+ (get_local $12)
+ (get_local $6)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $14)
+ (i32.or
+ (i32.load
+ (get_local $14)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $3)
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $3)
+ )
)
)
- )
- (if
- (i32.gt_u
- (get_local $3)
- (tee_local $14
- (i32.load
- (i32.const 1216)
+ (if
+ (i32.gt_u
+ (get_local $3)
+ (tee_local $14
+ (i32.load
+ (i32.const 1216)
+ )
)
)
- )
- (block
- (if
- (get_local $5)
- (block
- (set_local $8
- (i32.and
- (i32.shr_u
- (tee_local $6
- (i32.add
- (i32.and
- (tee_local $8
- (i32.and
- (i32.shl
- (get_local $5)
- (get_local $0)
- )
- (i32.or
- (tee_local $6
- (i32.shl
- (i32.const 2)
- (get_local $0)
- )
+ (block
+ (if
+ (get_local $5)
+ (block
+ (set_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $6
+ (i32.add
+ (i32.and
+ (tee_local $8
+ (i32.and
+ (i32.shl
+ (get_local $5)
+ (get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.or
+ (tee_local $6
+ (i32.shl
+ (i32.const 2)
+ (get_local $0)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $8)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $8)
- )
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $8
- (i32.load
- (tee_local $7
- (i32.add
- (tee_local $9
- (i32.load
- (tee_local $12
- (i32.add
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $16
- (i32.add
- (i32.or
+ (set_local $8
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (tee_local $9
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $16
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $6
+ (i32.or
+ (tee_local $6
+ (i32.and
+ (i32.shr_u
+ (tee_local $7
+ (i32.shr_u
+ (get_local $6)
+ (get_local $8)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $8)
+ )
+ (tee_local $7
(i32.and
(i32.shr_u
- (tee_local $7
+ (tee_local $9
(i32.shr_u
+ (get_local $7)
(get_local $6)
- (get_local $8)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $8)
)
- (tee_local $7
+ (tee_local $9
(i32.and
(i32.shr_u
- (tee_local $9
+ (tee_local $1
(i32.shr_u
+ (get_local $9)
(get_local $7)
- (get_local $6)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $9
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $12
(i32.shr_u
+ (get_local $1)
(get_local $9)
- (get_local $7)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $1
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.shr_u
- (get_local $1)
- (get_local $9)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
- )
- (i32.shr_u
- (get_local $12)
- (get_local $1)
+ (i32.shr_u
+ (get_local $12)
+ (get_local $1)
+ )
)
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 1248)
)
- (i32.const 1248)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
- )
- (if
- (i32.eq
- (get_local $1)
- (get_local $8)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (get_local $4)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $16)
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $8)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (get_local $4)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $16)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
- )
- (set_local $34
- (get_local $14)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $8)
- (i32.load
- (i32.const 1224)
- )
+ (set_local $34
+ (get_local $14)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $6
- (i32.add
- (get_local $8)
- (i32.const 12)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $8)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $9)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $6)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (set_local $34
+ (if
+ (i32.eq
(i32.load
- (i32.const 1216)
+ (tee_local $6
+ (i32.add
+ (get_local $8)
+ (i32.const 12)
+ )
+ )
+ )
+ (get_local $9)
+ )
+ (block
+ (i32.store
+ (get_local $6)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $8)
+ )
+ (set_local $34
+ (i32.load
+ (i32.const 1216)
+ )
)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=4
- (get_local $9)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (tee_local $12
- (i32.add
- (get_local $9)
+ (i32.store offset=4
+ (get_local $9)
+ (i32.or
(get_local $3)
+ (i32.const 3)
)
)
- (i32.or
- (tee_local $8
- (i32.sub
- (i32.shl
- (get_local $16)
- (i32.const 3)
- )
+ (i32.store offset=4
+ (tee_local $12
+ (i32.add
+ (get_local $9)
(get_local $3)
)
)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $12)
- (get_local $8)
- )
- (get_local $8)
- )
- (if
- (get_local $34)
- (block
- (set_local $1
- (i32.load
- (i32.const 1228)
- )
- )
- (set_local $4
- (i32.add
- (i32.shl
- (tee_local $14
- (i32.shr_u
- (get_local $34)
- (i32.const 3)
- )
+ (i32.or
+ (tee_local $8
+ (i32.sub
+ (i32.shl
+ (get_local $16)
+ (i32.const 3)
)
- (i32.const 3)
+ (get_local $3)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $0
- (i32.load
- (i32.const 1208)
- )
+ )
+ (i32.store
+ (i32.add
+ (get_local $12)
+ (get_local $8)
+ )
+ (get_local $8)
+ )
+ (if
+ (get_local $34)
+ (block
+ (set_local $1
+ (i32.load
+ (i32.const 1228)
)
- (tee_local $5
+ )
+ (set_local $4
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $14)
+ (tee_local $14
+ (i32.shr_u
+ (get_local $34)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $0
(i32.load
- (tee_local $5
- (i32.add
- (get_local $4)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $5
+ (i32.shl
+ (i32.const 1)
+ (get_local $14)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.load
+ (tee_local $5
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $40
+ (get_local $5)
+ )
+ (set_local $35
+ (get_local $0)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $0)
+ (get_local $5)
+ )
+ )
(set_local $40
- (get_local $5)
+ (i32.add
+ (get_local $4)
+ (i32.const 8)
+ )
)
(set_local $35
- (get_local $0)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $0)
- (get_local $5)
- )
- )
- (set_local $40
- (i32.add
(get_local $4)
- (i32.const 8)
)
)
- (set_local $35
- (get_local $4)
- )
)
- )
- (i32.store
- (get_local $40)
- (get_local $1)
- )
- (i32.store offset=12
- (get_local $35)
- (get_local $1)
- )
- (i32.store offset=8
- (get_local $1)
- (get_local $35)
- )
- (i32.store offset=12
- (get_local $1)
- (get_local $4)
+ (i32.store
+ (get_local $40)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $35)
+ (get_local $1)
+ )
+ (i32.store offset=8
+ (get_local $1)
+ (get_local $35)
+ )
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $4)
+ )
)
)
- )
- (i32.store
- (i32.const 1216)
- (get_local $8)
- )
- (i32.store
- (i32.const 1228)
- (get_local $12)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (get_local $7)
+ (i32.store
+ (i32.const 1216)
+ (get_local $8)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (get_local $7)
+ )
)
)
- )
- (if
- (tee_local $12
- (i32.load
- (i32.const 1212)
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.const 1212)
+ )
)
- )
- (block
- (set_local $12
- (i32.and
- (i32.shr_u
- (tee_local $8
- (i32.add
- (i32.and
- (get_local $12)
- (i32.sub
- (i32.const 0)
+ (block
+ (set_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $8
+ (i32.add
+ (i32.and
(get_local $12)
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (set_local $0
- (i32.sub
- (i32.and
- (i32.load offset=4
- (tee_local $14
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (set_local $0
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (tee_local $14
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $8
+ (i32.or
+ (tee_local $8
+ (i32.and
+ (i32.shr_u
+ (tee_local $4
+ (i32.shr_u
+ (get_local $8)
+ (get_local $12)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $12)
+ )
+ (tee_local $4
(i32.and
(i32.shr_u
- (tee_local $4
+ (tee_local $1
(i32.shr_u
+ (get_local $4)
(get_local $8)
- (get_local $12)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $12)
)
- (tee_local $4
+ (tee_local $1
(i32.and
(i32.shr_u
- (tee_local $1
+ (tee_local $0
(i32.shr_u
+ (get_local $1)
(get_local $4)
- (get_local $8)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $1
+ (tee_local $0
(i32.and
(i32.shr_u
- (tee_local $0
+ (tee_local $5
(i32.shr_u
+ (get_local $0)
(get_local $1)
- (get_local $4)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $0
- (i32.and
- (i32.shr_u
- (tee_local $5
- (i32.shr_u
- (get_local $0)
- (get_local $1)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $5)
+ (get_local $0)
+ )
)
- (i32.shr_u
- (get_local $5)
- (get_local $0)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
- )
- (set_local $5
- (get_local $14)
- )
- (set_local $1
- (get_local $14)
- )
- (loop $while-in
- (block $while-out
- (if
- (tee_local $14
- (i32.load offset=16
- (get_local $5)
- )
- )
- (set_local $6
- (get_local $14)
- )
+ (set_local $5
+ (get_local $14)
+ )
+ (set_local $1
+ (get_local $14)
+ )
+ (loop $while-in
+ (block $while-out
(if
- (tee_local $4
- (i32.load offset=20
+ (tee_local $14
+ (i32.load offset=16
(get_local $5)
)
)
(set_local $6
- (get_local $4)
+ (get_local $14)
)
- (block
+ (if
+ (tee_local $4
+ (i32.load offset=20
+ (get_local $5)
+ )
+ )
(set_local $6
- (get_local $0)
+ (get_local $4)
)
- (set_local $2
- (get_local $1)
+ (block
+ (set_local $6
+ (get_local $0)
+ )
+ (set_local $2
+ (get_local $1)
+ )
+ (br $while-out)
)
- (br $while-out)
)
)
- )
- (set_local $4
- (i32.lt_u
- (tee_local $14
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $6)
+ (set_local $4
+ (i32.lt_u
+ (tee_local $14
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $6)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $3)
)
- (get_local $3)
)
+ (get_local $0)
)
- (get_local $0)
)
- )
- (set_local $0
- (select
- (get_local $14)
- (get_local $0)
- (get_local $4)
+ (set_local $0
+ (select
+ (get_local $14)
+ (get_local $0)
+ (get_local $4)
+ )
)
- )
- (set_local $5
- (get_local $6)
- )
- (set_local $1
- (select
+ (set_local $5
(get_local $6)
- (get_local $1)
- (get_local $4)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (get_local $2)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (set_local $1
+ (select
+ (get_local $6)
+ (get_local $1)
+ (get_local $4)
+ )
)
+ (br $while-in)
)
)
- (call $qa)
- )
- (if
- (i32.ge_u
- (get_local $2)
- (tee_local $5
- (i32.add
- (get_local $2)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $0
- (i32.load offset=24
- (get_local $2)
- )
- )
- (block $do-once4
(if
- (i32.eq
- (tee_local $7
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $2)
+ (tee_local $5
+ (i32.add
(get_local $2)
+ (get_local $3)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $0
+ (i32.load offset=24
(get_local $2)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $2)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $16)
- )
- (set_local $4
- (get_local $9)
- )
- )
- (if
- (i32.eqz
- (tee_local $14
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- )
- )
- )
- (block
- (set_local $23
- (i32.const 0)
- )
- (br $do-once4)
+ )
+ (block $do-once4
+ (if
+ (i32.eq
+ (tee_local $7
+ (i32.load offset=12
+ (get_local $2)
)
)
+ (get_local $2)
)
- (loop $while-in7
+ (block
(if
(tee_local $16
(i32.load
(tee_local $9
(i32.add
- (get_local $14)
+ (get_local $2)
(i32.const 20)
)
)
@@ -940,702 +900,744 @@
(set_local $4
(get_local $9)
)
- (br $while-in7)
+ )
+ (if
+ (i32.eqz
+ (tee_local $14
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
+ (block
+ (set_local $23
+ (i32.const 0)
+ )
+ (br $do-once4)
+ )
)
)
- (if
- (tee_local $16
- (i32.load
- (tee_local $9
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in7
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
+ )
)
- (block
- (set_local $14
- (get_local $16)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $4
- (get_local $9)
+ (block
+ (set_local $14
+ (get_local $16)
+ )
+ (set_local $4
+ (get_local $9)
+ )
+ (br $while-in7)
)
- (br $while-in7)
)
)
- )
- (if
- (i32.lt_u
- (get_local $4)
- (get_local $1)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $4)
- (i32.const 0)
- )
- (set_local $23
- (get_local $14)
+ (get_local $1)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $9
- (i32.load offset=8
- (get_local $2)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $4)
+ (i32.const 0)
+ )
+ (set_local $23
+ (get_local $14)
)
)
- (get_local $1)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $9)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load offset=8
+ (get_local $2)
)
)
+ (get_local $1)
)
- (get_local $2)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $7)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $16
+ (i32.add
+ (get_local $9)
+ (i32.const 12)
+ )
)
)
+ (get_local $2)
)
- (get_local $2)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $7)
- )
- (i32.store
- (get_local $4)
- (get_local $9)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $7)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $2)
)
- (set_local $23
- (get_local $7)
+ (block
+ (i32.store
+ (get_local $16)
+ (get_local $7)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $9)
+ )
+ (set_local $23
+ (get_local $7)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once8
- (if
- (get_local $0)
- (block
- (if
- (i32.eq
- (get_local $2)
- (i32.load
- (tee_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.load offset=28
- (get_local $2)
+ (block $do-once8
+ (if
+ (get_local $0)
+ (block
+ (if
+ (i32.eq
+ (get_local $2)
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (i32.shl
+ (tee_local $7
+ (i32.load offset=28
+ (get_local $2)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $1)
- (get_local $23)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $1)
(get_local $23)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $7)
+ (if
+ (i32.eqz
+ (get_local $23)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once8)
)
- (br $do-once8)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $0)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $7
- (i32.add
- (get_local $0)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $7
+ (i32.add
+ (get_local $0)
+ (i32.const 16)
+ )
)
)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $7)
+ (get_local $23)
+ )
+ (i32.store offset=20
+ (get_local $0)
+ (get_local $23)
)
- (get_local $2)
- )
- (i32.store
- (get_local $7)
- (get_local $23)
- )
- (i32.store offset=20
- (get_local $0)
- (get_local $23)
)
- )
- (br_if $do-once8
- (i32.eqz
- (get_local $23)
+ (br_if $do-once8
+ (i32.eqz
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $23)
- (tee_local $7
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $23)
+ (tee_local $7
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $23)
- (get_local $0)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $2)
- )
+ (i32.store offset=24
+ (get_local $23)
+ (get_local $0)
)
(if
- (i32.lt_u
- (get_local $1)
- (get_local $7)
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $2)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (get_local $7)
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
- )
- (if
- (tee_local $1
- (i32.load offset=20
- (get_local $2)
- )
- )
(if
- (i32.lt_u
- (get_local $1)
- (i32.load
- (i32.const 1224)
+ (tee_local $1
+ (i32.load offset=20
+ (get_local $2)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $23)
+ (if
+ (i32.lt_u
(get_local $1)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $1)
- (get_local $23)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $23)
+ (get_local $1)
+ )
+ (i32.store offset=24
+ (get_local $1)
+ (get_local $23)
+ )
)
)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $6)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (tee_local $0
- (i32.add
- (get_local $6)
- (get_local $3)
+ (if
+ (i32.lt_u
+ (get_local $6)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (tee_local $0
+ (i32.add
+ (get_local $6)
+ (get_local $3)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $1
- (i32.add
+ (i32.store
+ (tee_local $1
(i32.add
- (get_local $2)
- (get_local $0)
+ (i32.add
+ (get_local $2)
+ (get_local $0)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $1)
+ (i32.or
+ (i32.load
+ (get_local $1)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $5)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $5)
- (get_local $6)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
)
- (get_local $6)
- )
- (if
- (tee_local $1
- (i32.load
- (i32.const 1216)
+ (i32.store
+ (i32.add
+ (get_local $5)
+ (get_local $6)
)
+ (get_local $6)
)
- (block
- (set_local $0
+ (if
+ (tee_local $1
(i32.load
- (i32.const 1228)
+ (i32.const 1216)
)
)
- (set_local $1
- (i32.add
- (i32.shl
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 3)
- )
- )
- (i32.const 3)
+ (block
+ (set_local $0
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 1248)
)
- )
- (if
- (i32.and
- (tee_local $9
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ (set_local $1
+ (i32.add
(i32.shl
- (i32.const 1)
- (get_local $7)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $9
(i32.load
- (tee_local $4
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $7)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $9
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $41
+ (get_local $4)
+ )
+ (set_local $27
+ (get_local $9)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $9)
+ (get_local $4)
+ )
+ )
(set_local $41
- (get_local $4)
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
)
(set_local $27
- (get_local $9)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $9)
- (get_local $4)
- )
- )
- (set_local $41
- (i32.add
(get_local $1)
- (i32.const 8)
)
)
- (set_local $27
- (get_local $1)
- )
)
- )
- (i32.store
- (get_local $41)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $27)
- (get_local $0)
- )
- (i32.store offset=8
- (get_local $0)
- (get_local $27)
- )
- (i32.store offset=12
- (get_local $0)
- (get_local $1)
+ (i32.store
+ (get_local $41)
+ (get_local $0)
+ )
+ (i32.store offset=12
+ (get_local $27)
+ (get_local $0)
+ )
+ (i32.store offset=8
+ (get_local $0)
+ (get_local $27)
+ )
+ (i32.store offset=12
+ (get_local $0)
+ (get_local $1)
+ )
)
)
+ (i32.store
+ (i32.const 1216)
+ (get_local $6)
+ )
+ (i32.store
+ (i32.const 1228)
+ (get_local $5)
+ )
)
- (i32.store
- (i32.const 1216)
- (get_local $6)
- )
- (i32.store
- (i32.const 1228)
- (get_local $5)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $2)
+ (i32.const 8)
)
)
)
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $2)
- (i32.const 8)
- )
+ (set_local $5
+ (get_local $3)
)
)
- (set_local $5
- (get_local $3)
- )
)
+ (set_local $5
+ (get_local $3)
+ )
+ )
+ )
+ (if
+ (i32.gt_u
+ (get_local $0)
+ (i32.const -65)
)
(set_local $5
- (get_local $3)
+ (i32.const -1)
)
- )
- )
- (if
- (i32.gt_u
- (get_local $0)
- (i32.const -65)
- )
- (set_local $5
- (i32.const -1)
- )
- (block
- (set_local $0
- (i32.and
- (tee_local $1
- (i32.add
- (get_local $0)
- (i32.const 11)
+ (block
+ (set_local $0
+ (i32.and
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 11)
+ )
)
- )
- (i32.const -8)
- )
- )
- (if
- (tee_local $9
- (i32.load
- (i32.const 1212)
+ (i32.const -8)
)
)
- (block
- (set_local $4
- (i32.sub
- (i32.const 0)
- (get_local $0)
+ (if
+ (tee_local $9
+ (i32.load
+ (i32.const 1212)
)
)
- (block $label$break$a
- (if
- (tee_local $12
- (i32.load
- (i32.add
- (i32.shl
- (tee_local $27
- (if (result i32)
- (tee_local $7
- (i32.shr_u
- (get_local $1)
- (i32.const 8)
- )
- )
+ (block
+ (set_local $4
+ (i32.sub
+ (i32.const 0)
+ (get_local $0)
+ )
+ )
+ (block $label$break$a
+ (if
+ (tee_local $12
+ (i32.load
+ (i32.add
+ (i32.shl
+ (tee_local $27
(if (result i32)
- (i32.gt_u
- (get_local $0)
- (i32.const 16777215)
+ (tee_local $7
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $0)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $0)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $0)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $7
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $16
- (i32.shl
- (get_local $7)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $7)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $7
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $16
+ (i32.shl
+ (get_local $7)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $7)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $16
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $14
- (i32.shl
- (get_local $16)
- (get_local $7)
+ (tee_local $16
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $14
+ (i32.shl
+ (get_local $16)
+ (get_local $7)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $14)
- (get_local $16)
+ (i32.shr_u
+ (i32.shl
+ (get_local $14)
+ (get_local $16)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
- )
- (block
- (set_local $16
- (get_local $4)
- )
- (set_local $14
- (i32.const 0)
- )
- (set_local $1
- (i32.shl
- (get_local $0)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (block
+ (set_local $16
+ (get_local $4)
+ )
+ (set_local $14
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $0)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $27)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(get_local $27)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (get_local $27)
- (i32.const 31)
- )
)
)
- )
- (set_local $7
- (get_local $12)
- )
- (set_local $8
- (i32.const 0)
- )
- (loop $while-in14
- (if
- (i32.lt_u
- (tee_local $12
- (i32.sub
- (tee_local $3
- (i32.and
- (i32.load offset=4
- (get_local $7)
+ (set_local $7
+ (get_local $12)
+ )
+ (set_local $8
+ (i32.const 0)
+ )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (tee_local $12
+ (i32.sub
+ (tee_local $3
+ (i32.and
+ (i32.load offset=4
+ (get_local $7)
+ )
+ (i32.const -8)
)
- (i32.const -8)
)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $16)
)
- (get_local $16)
- )
- (if
- (i32.eq
- (get_local $3)
- (get_local $0)
- )
- (block
- (set_local $29
- (get_local $12)
- )
- (set_local $28
- (get_local $7)
- )
- (set_local $32
- (get_local $7)
- )
- (set_local $7
- (i32.const 90)
+ (if
+ (i32.eq
+ (get_local $3)
+ (get_local $0)
)
- (br $label$break$a)
- )
- (block
- (set_local $16
- (get_local $12)
+ (block
+ (set_local $29
+ (get_local $12)
+ )
+ (set_local $28
+ (get_local $7)
+ )
+ (set_local $32
+ (get_local $7)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
+ (br $label$break$a)
)
- (set_local $8
- (get_local $7)
+ (block
+ (set_local $16
+ (get_local $12)
+ )
+ (set_local $8
+ (get_local $7)
+ )
)
)
)
- )
- (set_local $3
- (select
- (get_local $14)
- (tee_local $12
- (i32.load offset=20
- (get_local $7)
- )
- )
- (i32.or
- (i32.eqz
- (get_local $12)
+ (set_local $3
+ (select
+ (get_local $14)
+ (tee_local $12
+ (i32.load offset=20
+ (get_local $7)
+ )
)
- (i32.eq
- (get_local $12)
- (tee_local $7
- (i32.load
- (i32.add
+ (i32.or
+ (i32.eqz
+ (get_local $12)
+ )
+ (i32.eq
+ (get_local $12)
+ (tee_local $7
+ (i32.load
(i32.add
- (get_local $7)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
+ (i32.add
+ (get_local $7)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -1643,419 +1645,376 @@
)
)
)
- )
- (if
- (tee_local $12
- (i32.eqz
- (get_local $7)
- )
- )
- (block
- (set_local $36
- (get_local $16)
- )
- (set_local $5
- (get_local $3)
- )
- (set_local $33
- (get_local $8)
- )
- (set_local $7
- (i32.const 86)
+ (if
+ (tee_local $12
+ (i32.eqz
+ (get_local $7)
+ )
)
- )
- (block
- (set_local $14
- (get_local $3)
+ (block
+ (set_local $36
+ (get_local $16)
+ )
+ (set_local $5
+ (get_local $3)
+ )
+ (set_local $33
+ (get_local $8)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
- (set_local $1
- (i32.shl
- (get_local $1)
- (i32.xor
- (i32.and
- (get_local $12)
+ (block
+ (set_local $14
+ (get_local $3)
+ )
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.xor
+ (i32.and
+ (get_local $12)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (br $while-in14)
)
- (br $while-in14)
)
)
)
- )
- (block
- (set_local $36
- (get_local $4)
- )
- (set_local $5
- (i32.const 0)
- )
- (set_local $33
- (i32.const 0)
- )
- (set_local $7
- (i32.const 86)
+ (block
+ (set_local $36
+ (get_local $4)
+ )
+ (set_local $5
+ (i32.const 0)
+ )
+ (set_local $33
+ (i32.const 0)
+ )
+ (set_local $7
+ (i32.const 86)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 86)
- )
(if
- (tee_local $3
- (if (result i32)
- (i32.and
- (i32.eqz
- (get_local $5)
- )
- (i32.eqz
- (get_local $33)
- )
- )
- (block (result i32)
- (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 86)
+ )
+ (if
+ (tee_local $3
+ (if (result i32)
+ (i32.and
(i32.eqz
- (tee_local $4
- (i32.and
- (get_local $9)
- (i32.or
- (tee_local $12
- (i32.shl
- (i32.const 2)
- (get_local $27)
+ (get_local $5)
+ )
+ (i32.eqz
+ (get_local $33)
+ )
+ )
+ (block (result i32)
+ (if
+ (i32.eqz
+ (tee_local $4
+ (i32.and
+ (get_local $9)
+ (i32.or
+ (tee_local $12
+ (i32.shl
+ (i32.const 2)
+ (get_local $27)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $12)
)
- )
- (i32.sub
- (i32.const 0)
- (get_local $12)
)
)
)
)
- )
- (block
- (set_local $5
- (get_local $0)
+ (block
+ (set_local $5
+ (get_local $0)
+ )
+ (br $do-once)
)
- (br $do-once)
)
- )
- (set_local $4
- (i32.and
- (i32.shr_u
- (tee_local $12
- (i32.add
- (i32.and
- (get_local $4)
- (i32.sub
- (i32.const 0)
+ (set_local $4
+ (i32.and
+ (i32.shr_u
+ (tee_local $12
+ (i32.add
+ (i32.and
(get_local $4)
+ (i32.sub
+ (i32.const 0)
+ (get_local $4)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
+ (i32.const 12)
)
- (i32.const 12)
+ (i32.const 16)
)
- (i32.const 16)
)
- )
- (i32.load
- (i32.add
- (i32.shl
- (i32.add
- (i32.or
+ (i32.load
+ (i32.add
+ (i32.shl
+ (i32.add
(i32.or
(i32.or
(i32.or
- (tee_local $12
+ (i32.or
+ (tee_local $12
+ (i32.and
+ (i32.shr_u
+ (tee_local $3
+ (i32.shr_u
+ (get_local $12)
+ (get_local $4)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (get_local $4)
+ )
+ (tee_local $3
(i32.and
(i32.shr_u
- (tee_local $3
+ (tee_local $5
(i32.shr_u
+ (get_local $3)
(get_local $12)
- (get_local $4)
)
)
- (i32.const 5)
+ (i32.const 2)
)
- (i32.const 8)
+ (i32.const 4)
)
)
- (get_local $4)
)
- (tee_local $3
+ (tee_local $5
(i32.and
(i32.shr_u
- (tee_local $5
+ (tee_local $8
(i32.shr_u
+ (get_local $5)
(get_local $3)
- (get_local $12)
)
)
- (i32.const 2)
+ (i32.const 1)
)
- (i32.const 4)
+ (i32.const 2)
)
)
)
- (tee_local $5
+ (tee_local $8
(i32.and
(i32.shr_u
- (tee_local $8
+ (tee_local $1
(i32.shr_u
+ (get_local $8)
(get_local $5)
- (get_local $3)
)
)
(i32.const 1)
)
- (i32.const 2)
- )
- )
- )
- (tee_local $8
- (i32.and
- (i32.shr_u
- (tee_local $1
- (i32.shr_u
- (get_local $8)
- (get_local $5)
- )
- )
(i32.const 1)
)
- (i32.const 1)
)
)
+ (i32.shr_u
+ (get_local $1)
+ (get_local $8)
+ )
)
- (i32.shr_u
- (get_local $1)
- (get_local $8)
- )
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (block
- (set_local $29
- (get_local $36)
- )
- (set_local $28
- (get_local $3)
- )
- (set_local $32
- (get_local $33)
- )
- (set_local $7
- (i32.const 90)
- )
- )
- (block
- (set_local $18
- (get_local $36)
+ (block
+ (set_local $29
+ (get_local $36)
+ )
+ (set_local $28
+ (get_local $3)
+ )
+ (set_local $32
+ (get_local $33)
+ )
+ (set_local $7
+ (i32.const 90)
+ )
)
- (set_local $10
- (get_local $33)
+ (block
+ (set_local $18
+ (get_local $36)
+ )
+ (set_local $10
+ (get_local $33)
+ )
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 90)
- )
- (loop $while-in16
- (set_local $7
- (i32.const 0)
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 90)
)
- (set_local $1
- (i32.lt_u
- (tee_local $8
- (i32.sub
- (i32.and
- (i32.load offset=4
- (get_local $28)
+ (loop $while-in16
+ (set_local $7
+ (i32.const 0)
+ )
+ (set_local $1
+ (i32.lt_u
+ (tee_local $8
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (get_local $28)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (get_local $0)
)
- (get_local $0)
)
+ (get_local $29)
)
- (get_local $29)
- )
- )
- (set_local $5
- (select
- (get_local $8)
- (get_local $29)
- (get_local $1)
- )
- )
- (set_local $8
- (select
- (get_local $28)
- (get_local $32)
- (get_local $1)
)
- )
- (if
- (tee_local $1
- (i32.load offset=16
- (get_local $28)
- )
- )
- (block
- (set_local $29
- (get_local $5)
- )
- (set_local $28
- (get_local $1)
- )
- (set_local $32
+ (set_local $5
+ (select
(get_local $8)
+ (get_local $29)
+ (get_local $1)
)
- (br $while-in16)
)
- )
- (if
- (tee_local $28
- (i32.load offset=20
+ (set_local $8
+ (select
(get_local $28)
+ (get_local $32)
+ (get_local $1)
)
)
- (block
- (set_local $29
- (get_local $5)
+ (if
+ (tee_local $1
+ (i32.load offset=16
+ (get_local $28)
+ )
)
- (set_local $32
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $28
+ (get_local $1)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
)
- (br $while-in16)
)
- (block
- (set_local $18
- (get_local $5)
+ (if
+ (tee_local $28
+ (i32.load offset=20
+ (get_local $28)
+ )
)
- (set_local $10
- (get_local $8)
+ (block
+ (set_local $29
+ (get_local $5)
+ )
+ (set_local $32
+ (get_local $8)
+ )
+ (br $while-in16)
+ )
+ (block
+ (set_local $18
+ (get_local $5)
+ )
+ (set_local $10
+ (get_local $8)
+ )
)
)
)
)
- )
- (if
- (get_local $10)
(if
- (i32.lt_u
- (get_local $18)
- (i32.sub
- (i32.load
- (i32.const 1216)
- )
- (get_local $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $10)
- (tee_local $9
- (i32.load
- (i32.const 1224)
- )
+ (get_local $10)
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.sub
+ (i32.load
+ (i32.const 1216)
)
+ (get_local $0)
)
- (call $qa)
)
- (if
- (i32.ge_u
- (get_local $10)
- (tee_local $8
- (i32.add
- (get_local $10)
- (get_local $0)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (tee_local $9
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (set_local $5
- (i32.load offset=24
- (get_local $10)
- )
- )
- (block $do-once17
(if
- (i32.eq
- (tee_local $1
- (i32.load offset=12
+ (i32.ge_u
+ (get_local $10)
+ (tee_local $8
+ (i32.add
(get_local $10)
+ (get_local $0)
)
)
+ )
+ (call $qa)
+ )
+ (set_local $5
+ (i32.load offset=24
(get_local $10)
)
- (block
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $10)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (set_local $14
- (get_local $4)
- )
- (set_local $1
- (get_local $3)
- )
- )
- (if
- (tee_local $14
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $10)
- (i32.const 16)
- )
- )
- )
- )
- (set_local $1
- (get_local $12)
- )
- (block
- (set_local $22
- (i32.const 0)
- )
- (br $do-once17)
+ )
+ (block $do-once17
+ (if
+ (i32.eq
+ (tee_local $1
+ (i32.load offset=12
+ (get_local $10)
)
)
+ (get_local $10)
)
- (loop $while-in20
+ (block
(if
(tee_local $4
(i32.load
(tee_local $3
(i32.add
- (get_local $14)
+ (get_local $10)
(i32.const 20)
)
)
@@ -2068,698 +2027,615 @@
(set_local $1
(get_local $3)
)
- (br $while-in20)
+ )
+ (if
+ (tee_local $14
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $10)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (set_local $1
+ (get_local $12)
+ )
+ (block
+ (set_local $22
+ (i32.const 0)
+ )
+ (br $do-once17)
+ )
)
)
- (if
- (tee_local $4
- (i32.load
- (tee_local $3
- (i32.add
- (get_local $14)
- (i32.const 16)
+ (loop $while-in20
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 20)
+ )
)
)
)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
+ )
)
- (block
- (set_local $14
- (get_local $4)
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $14)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $1
- (get_local $3)
+ (block
+ (set_local $14
+ (get_local $4)
+ )
+ (set_local $1
+ (get_local $3)
+ )
+ (br $while-in20)
)
- (br $while-in20)
)
)
- )
- (if
- (i32.lt_u
- (get_local $1)
- (get_local $9)
- )
- (call $qa)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(get_local $1)
- (i32.const 0)
- )
- (set_local $22
- (get_local $14)
+ (get_local $9)
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (tee_local $3
- (i32.load offset=8
- (get_local $10)
+ (call $qa)
+ (block
+ (i32.store
+ (get_local $1)
+ (i32.const 0)
+ )
+ (set_local $22
+ (get_local $14)
)
)
- (get_local $9)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $4
- (i32.add
- (get_local $3)
- (i32.const 12)
+ (block
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load offset=8
+ (get_local $10)
)
)
+ (get_local $9)
)
- (get_local $10)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $12
- (i32.add
- (get_local $1)
- (i32.const 8)
+ (if
+ (i32.ne
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $3)
+ (i32.const 12)
+ )
)
)
+ (get_local $10)
)
- (get_local $10)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $4)
- (get_local $1)
- )
- (i32.store
- (get_local $12)
- (get_local $3)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $12
+ (i32.add
+ (get_local $1)
+ (i32.const 8)
+ )
+ )
+ )
+ (get_local $10)
)
- (set_local $22
- (get_local $1)
+ (block
+ (i32.store
+ (get_local $4)
+ (get_local $1)
+ )
+ (i32.store
+ (get_local $12)
+ (get_local $3)
+ )
+ (set_local $22
+ (get_local $1)
+ )
)
+ (call $qa)
)
- (call $qa)
)
)
)
- )
- (block $do-once21
- (if
- (get_local $5)
- (block
- (if
- (i32.eq
- (get_local $10)
- (i32.load
- (tee_local $9
- (i32.add
- (i32.shl
- (tee_local $1
- (i32.load offset=28
- (get_local $10)
+ (block $do-once21
+ (if
+ (get_local $5)
+ (block
+ (if
+ (i32.eq
+ (get_local $10)
+ (i32.load
+ (tee_local $9
+ (i32.add
+ (i32.shl
+ (tee_local $1
+ (i32.load offset=28
+ (get_local $10)
+ )
)
+ (i32.const 2)
)
- (i32.const 2)
+ (i32.const 1512)
)
- (i32.const 1512)
)
)
)
- )
- (block
- (i32.store
- (get_local $9)
- (get_local $22)
- )
- (if
- (i32.eqz
+ (block
+ (i32.store
+ (get_local $9)
(get_local $22)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $1)
+ (if
+ (i32.eqz
+ (get_local $22)
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ (i32.const -1)
)
- (i32.const -1)
)
)
+ (br $do-once21)
)
- (br $do-once21)
)
)
- )
- (block
- (if
- (i32.lt_u
- (get_local $5)
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $5)
+ (i32.load
+ (i32.const 1224)
+ )
)
+ (call $qa)
)
- (call $qa)
- )
- (if
- (i32.eq
- (i32.load
- (tee_local $1
- (i32.add
- (get_local $5)
- (i32.const 16)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $1
+ (i32.add
+ (get_local $5)
+ (i32.const 16)
+ )
)
)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $1)
+ (get_local $22)
+ )
+ (i32.store offset=20
+ (get_local $5)
+ (get_local $22)
)
- (get_local $10)
- )
- (i32.store
- (get_local $1)
- (get_local $22)
- )
- (i32.store offset=20
- (get_local $5)
- (get_local $22)
)
- )
- (br_if $do-once21
- (i32.eqz
- (get_local $22)
+ (br_if $do-once21
+ (i32.eqz
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $22)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (if
+ (i32.lt_u
+ (get_local $22)
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (call $qa)
)
- (call $qa)
- )
- (i32.store offset=24
- (get_local $22)
- (get_local $5)
- )
- (if
- (tee_local $9
- (i32.load offset=16
- (get_local $10)
- )
+ (i32.store offset=24
+ (get_local $22)
+ (get_local $5)
)
(if
- (i32.lt_u
- (get_local $9)
- (get_local $1)
+ (tee_local $9
+ (i32.load offset=16
+ (get_local $10)
+ )
)
- (call $qa)
- (block
- (i32.store offset=16
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (get_local $1)
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=16
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
- )
- (if
- (tee_local $9
- (i32.load offset=20
- (get_local $10)
- )
- )
(if
- (i32.lt_u
- (get_local $9)
- (i32.load
- (i32.const 1224)
+ (tee_local $9
+ (i32.load offset=20
+ (get_local $10)
)
)
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $22)
+ (if
+ (i32.lt_u
(get_local $9)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.store offset=24
- (get_local $9)
- (get_local $22)
+ (call $qa)
+ (block
+ (i32.store offset=20
+ (get_local $22)
+ (get_local $9)
+ )
+ (i32.store offset=24
+ (get_local $9)
+ (get_local $22)
+ )
)
)
)
)
)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (tee_local $5
- (i32.add
- (get_local $18)
- (get_local $0)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 16)
+ )
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (tee_local $5
+ (i32.add
+ (get_local $18)
+ (get_local $0)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
)
- )
- (i32.store
- (tee_local $9
- (i32.add
+ (i32.store
+ (tee_local $9
(i32.add
- (get_local $10)
- (get_local $5)
+ (i32.add
+ (get_local $10)
+ (get_local $5)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $9)
+ (i32.or
+ (i32.load
+ (get_local $9)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
- )
- (block
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $0)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (get_local $8)
- (i32.or
- (get_local $18)
- (i32.const 1)
+ (block
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $0)
+ (i32.const 3)
+ )
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $8)
- (get_local $18)
+ (i32.or
+ (get_local $18)
+ (i32.const 1)
+ )
)
- (get_local $18)
- )
- (set_local $9
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (get_local $8)
+ (get_local $18)
+ )
(get_local $18)
- (i32.const 3)
)
- )
- (if
- (i32.lt_u
- (get_local $18)
- (i32.const 256)
+ (set_local $9
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 3)
+ )
)
- (block
- (set_local $5
- (i32.add
- (i32.shl
- (get_local $9)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (if
+ (i32.lt_u
+ (get_local $18)
+ (i32.const 256)
)
- (if
- (i32.and
- (tee_local $1
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $3
+ (block
+ (set_local $5
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $9)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $1
(i32.load
- (tee_local $3
- (i32.add
- (get_local $5)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $3
+ (i32.shl
+ (i32.const 1)
+ (get_local $9)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $1
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $19
+ (get_local $3)
+ )
+ (set_local $6
+ (get_local $1)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $1)
+ (get_local $3)
+ )
+ )
(set_local $19
- (get_local $3)
+ (i32.add
+ (get_local $5)
+ (i32.const 8)
+ )
)
(set_local $6
- (get_local $1)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $1)
- (get_local $3)
- )
- )
- (set_local $19
- (i32.add
(get_local $5)
- (i32.const 8)
)
)
- (set_local $6
- (get_local $5)
- )
)
+ (i32.store
+ (get_local $19)
+ (get_local $8)
+ )
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $5)
+ )
+ (br $do-once25)
)
- (i32.store
- (get_local $19)
- (get_local $8)
- )
- (i32.store offset=12
- (get_local $6)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $6)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $5)
- )
- (br $do-once25)
)
- )
- (set_local $12
- (i32.add
- (i32.shl
- (tee_local $16
- (if (result i32)
- (tee_local $5
- (i32.shr_u
- (get_local $18)
- (i32.const 8)
- )
- )
+ (set_local $12
+ (i32.add
+ (i32.shl
+ (tee_local $16
(if (result i32)
- (i32.gt_u
- (get_local $18)
- (i32.const 16777215)
+ (tee_local $5
+ (i32.shr_u
+ (get_local $18)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $18)
- (i32.add
- (tee_local $12
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $18)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $18)
+ (i32.add
+ (tee_local $12
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $5
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $3
- (i32.shl
- (get_local $5)
- (tee_local $1
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $5)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $5
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $3
+ (i32.shl
+ (get_local $5)
+ (tee_local $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $5)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $9
- (i32.shl
- (get_local $3)
- (get_local $5)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $9
+ (i32.shl
+ (get_local $3)
+ (get_local $5)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $9)
- (get_local $3)
+ (i32.shr_u
+ (i32.shl
+ (get_local $9)
+ (get_local $3)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $12)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $12)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $8)
- (get_local $16)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $9
- (i32.shl
- (i32.const 1)
- (get_local $16)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $9)
- )
- )
- (i32.store
- (get_local $12)
- (get_local $8)
- )
- (i32.store offset=24
- (get_local $8)
- (get_local $12)
- )
- (i32.store offset=12
- (get_local $8)
- (get_local $8)
- )
- (i32.store offset=8
- (get_local $8)
- (get_local $8)
- )
- (br $do-once25)
+ (i32.store offset=28
+ (get_local $8)
+ (get_local $16)
)
- )
- (set_local $9
- (i32.shl
- (get_local $18)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $16)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $16)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $8)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $12)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in28
- (block $while-out27
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $18)
- )
- (block
- (set_local $17
- (get_local $3)
- )
- (set_local $7
- (i32.const 148)
- )
- (br $while-out27)
- )
- )
- (if
- (tee_local $1
- (i32.load
- (tee_local $12
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $9)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $9
+ (tee_local $9
(i32.shl
- (get_local $9)
(i32.const 1)
+ (get_local $16)
)
)
- (set_local $3
- (get_local $1)
- )
- (br $while-in28)
)
- (block
- (set_local $21
- (get_local $12)
- )
- (set_local $15
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
+ (get_local $9)
)
- (set_local $7
- (i32.const 145)
- )
- )
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 145)
- )
- (if
- (i32.lt_u
- (get_local $21)
- (i32.load
- (i32.const 1224)
)
- )
- (call $qa)
- (block
(i32.store
- (get_local $21)
+ (get_local $12)
(get_local $8)
)
(i32.store offset=24
(get_local $8)
- (get_local $15)
+ (get_local $12)
)
(i32.store offset=12
(get_local $8)
@@ -2769,375 +2645,449 @@
(get_local $8)
(get_local $8)
)
+ (br $do-once25)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 148)
+ (set_local $9
+ (i32.shl
+ (get_local $18)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $16)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $16)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $9
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $12)
+ )
+ )
+ (loop $while-in28
+ (block $while-out27
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $18)
+ )
+ (block
+ (set_local $17
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 148)
+ )
+ (br $while-out27)
+ )
+ )
+ (if
+ (tee_local $1
+ (i32.load
+ (tee_local $12
+ (i32.add
(i32.add
- (get_local $17)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $9)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $9
+ (i32.shl
+ (get_local $9)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in28)
)
- (i32.ge_u
- (get_local $17)
- (get_local $1)
+ (block
+ (set_local $21
+ (get_local $12)
+ )
+ (set_local $15
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 145)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $9)
- (get_local $8)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 145)
+ )
+ (if
+ (i32.lt_u
+ (get_local $21)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $21)
(get_local $8)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $8)
- (get_local $9)
+ (get_local $15)
)
(i32.store offset=12
(get_local $8)
- (get_local $17)
+ (get_local $8)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $8)
(get_local $8)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 148)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $9
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $17)
+ (get_local $1)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $9)
+ (get_local $8)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $8)
+ )
+ (i32.store offset=8
+ (get_local $8)
+ (get_local $9)
+ )
+ (i32.store offset=12
+ (get_local $8)
+ (get_local $17)
+ )
+ (i32.store offset=24
+ (get_local $8)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
+ (return
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
+ )
+ )
+ (set_local $5
+ (get_local $0)
)
)
(set_local $5
(get_local $0)
)
)
- (set_local $5
- (get_local $0)
- )
)
- )
- (set_local $5
- (get_local $0)
+ (set_local $5
+ (get_local $0)
+ )
)
)
)
)
)
- )
- (if
- (i32.ge_u
- (tee_local $10
- (i32.load
- (i32.const 1216)
- )
- )
- (get_local $5)
- )
- (block
- (set_local $15
- (i32.load
- (i32.const 1228)
+ (if
+ (i32.ge_u
+ (tee_local $10
+ (i32.load
+ (i32.const 1216)
+ )
)
+ (get_local $5)
)
- (if
- (i32.gt_u
- (tee_local $17
- (i32.sub
- (get_local $10)
- (get_local $5)
- )
+ (block
+ (set_local $15
+ (i32.load
+ (i32.const 1228)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 1228)
- (tee_local $21
- (i32.add
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $17
+ (i32.sub
+ (get_local $10)
(get_local $5)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 1216)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $21)
- (i32.or
+ (block
+ (i32.store
+ (i32.const 1228)
+ (tee_local $21
+ (i32.add
+ (get_local $15)
+ (get_local $5)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 1216)
(get_local $17)
- (i32.const 1)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $21)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (get_local $21)
+ (get_local $17)
+ )
(get_local $17)
)
- (get_local $17)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 1216)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1228)
- (i32.const 0)
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $10)
- (i32.const 3)
+ (block
+ (i32.store
+ (i32.const 1216)
+ (i32.const 0)
)
- )
- (i32.store
- (tee_local $17
- (i32.add
+ (i32.store
+ (i32.const 1228)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (get_local $15)
+ (i32.or
+ (get_local $10)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (tee_local $17
(i32.add
- (get_local $15)
- (get_local $10)
+ (i32.add
+ (get_local $15)
+ (get_local $10)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (get_local $17)
+ (i32.or
+ (i32.load
+ (get_local $17)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $15)
- (i32.const 8)
- )
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $15
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $17
- (i32.sub
- (get_local $15)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $17
+ (i32.sub
+ (get_local $15)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $10
- (i32.add
- (tee_local $15
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $10
+ (i32.add
+ (tee_local $15
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $10)
- (i32.or
- (get_local $17)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $15)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $10)
+ (i32.or
+ (get_local $17)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $15)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
)
+ (br $folding-inner0)
)
)
- )
- (if
- (i32.eqz
- (i32.load
- (i32.const 1680)
- )
- )
- (block
- (i32.store
- (i32.const 1688)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1684)
- (i32.const 4096)
- )
- (i32.store
- (i32.const 1692)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1696)
- (i32.const -1)
- )
- (i32.store
- (i32.const 1700)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1652)
- (i32.const 0)
- )
- (i32.store
- (get_local $13)
- (tee_local $15
- (i32.xor
- (i32.and
- (get_local $13)
- (i32.const -16)
- )
- (i32.const 1431655768)
- )
+ (if
+ (i32.eqz
+ (i32.load
+ (i32.const 1680)
)
)
- (i32.store
- (i32.const 1680)
- (get_local $15)
- )
- )
- )
- (set_local $15
- (i32.add
- (get_local $5)
- (i32.const 48)
- )
- )
- (if
- (i32.le_u
- (tee_local $13
- (i32.and
- (tee_local $10
- (i32.add
- (tee_local $13
- (i32.load
- (i32.const 1688)
- )
- )
- (tee_local $17
- (i32.add
- (get_local $5)
- (i32.const 47)
- )
+ (block
+ (i32.store
+ (i32.const 1688)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1684)
+ (i32.const 4096)
+ )
+ (i32.store
+ (i32.const 1692)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1696)
+ (i32.const -1)
+ )
+ (i32.store
+ (i32.const 1700)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1652)
+ (i32.const 0)
+ )
+ (i32.store
+ (get_local $13)
+ (tee_local $15
+ (i32.xor
+ (i32.and
+ (get_local $13)
+ (i32.const -16)
)
- )
- )
- (tee_local $21
- (i32.sub
- (i32.const 0)
- (get_local $13)
+ (i32.const 1431655768)
)
)
)
- )
- (get_local $5)
- )
- (block
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.const 0)
+ (i32.store
+ (i32.const 1680)
+ (get_local $15)
+ )
)
)
- )
- (if
- (tee_local $18
- (i32.load
- (i32.const 1648)
+ (set_local $15
+ (i32.add
+ (get_local $5)
+ (i32.const 48)
)
)
(if
- (i32.or
- (i32.le_u
- (tee_local $6
- (i32.add
- (tee_local $16
- (i32.load
- (i32.const 1640)
+ (i32.le_u
+ (tee_local $13
+ (i32.and
+ (tee_local $10
+ (i32.add
+ (tee_local $13
+ (i32.load
+ (i32.const 1688)
+ )
+ )
+ (tee_local $17
+ (i32.add
+ (get_local $5)
+ (i32.const 47)
+ )
)
)
- (get_local $13)
+ )
+ (tee_local $21
+ (i32.sub
+ (i32.const 0)
+ (get_local $13)
+ )
)
)
- (get_local $16)
- )
- (i32.gt_u
- (get_local $6)
- (get_local $18)
)
+ (get_local $5)
)
(block
(set_global $r
@@ -3148,270 +3098,306 @@
)
)
)
- )
- (if
- (i32.eq
- (tee_local $7
- (block $label$break$b (result i32)
- (if (result i32)
- (i32.and
- (i32.load
- (i32.const 1652)
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1648)
+ )
+ )
+ (if
+ (i32.or
+ (i32.le_u
+ (tee_local $6
+ (i32.add
+ (tee_local $16
+ (i32.load
+ (i32.const 1640)
+ )
+ )
+ (get_local $13)
)
- (i32.const 4)
)
- (i32.const 188)
- (block (result i32)
- (block $label$break$c
- (if
- (tee_local $18
- (i32.load
- (i32.const 1232)
- )
- )
- (block
- (set_local $6
- (i32.const 1656)
+ (get_local $16)
+ )
+ (i32.gt_u
+ (get_local $6)
+ (get_local $18)
+ )
+ )
+ (block
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (tee_local $7
+ (block $label$break$b (result i32)
+ (if (result i32)
+ (i32.and
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
+ )
+ (i32.const 188)
+ (block (result i32)
+ (block $label$break$c
+ (if
+ (tee_local $18
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $while-in32
- (block $while-out31
- (if
- (i32.le_u
- (tee_local $16
- (i32.load
- (get_local $6)
- )
- )
- (get_local $18)
- )
+ (block
+ (set_local $6
+ (i32.const 1656)
+ )
+ (loop $while-in32
+ (block $while-out31
(if
- (i32.gt_u
- (i32.add
- (get_local $16)
+ (i32.le_u
+ (tee_local $16
(i32.load
- (tee_local $19
- (i32.add
- (get_local $6)
- (i32.const 4)
- )
- )
+ (get_local $6)
)
)
(get_local $18)
)
- (block
- (set_local $0
- (get_local $6)
+ (if
+ (i32.gt_u
+ (i32.add
+ (get_local $16)
+ (i32.load
+ (tee_local $19
+ (i32.add
+ (get_local $6)
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (get_local $18)
)
- (set_local $4
- (get_local $19)
+ (block
+ (set_local $0
+ (get_local $6)
+ )
+ (set_local $4
+ (get_local $19)
+ )
+ (br $while-out31)
)
- (br $while-out31)
)
)
- )
- (br_if $while-in32
- (tee_local $6
- (i32.load offset=8
- (get_local $6)
+ (br_if $while-in32
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $6)
+ )
)
)
+ (set_local $7
+ (i32.const 171)
+ )
+ (br $label$break$c)
)
- (set_local $7
- (i32.const 171)
- )
- (br $label$break$c)
)
- )
- (if
- (i32.lt_u
- (tee_local $6
- (i32.and
- (i32.sub
- (get_local $10)
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.lt_u
+ (tee_local $6
+ (i32.and
+ (i32.sub
+ (get_local $10)
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $21)
)
- (get_local $21)
)
+ (i32.const 2147483647)
)
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (tee_local $19
- (call $ta
- (get_local $6)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $6)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $0)
+ )
+ (i32.load
+ (get_local $4)
+ )
)
)
- (i32.add
- (i32.load
- (get_local $0)
+ (if
+ (i32.ne
+ (get_local $19)
+ (i32.const -1)
)
- (i32.load
- (get_local $4)
+ (block
+ (set_local $20
+ (get_local $19)
+ )
+ (set_local $26
+ (get_local $6)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
- )
- (if
- (i32.ne
- (get_local $19)
- (i32.const -1)
- )
(block
- (set_local $20
+ (set_local $11
(get_local $19)
)
- (set_local $26
+ (set_local $2
(get_local $6)
)
- (br $label$break$b
- (i32.const 191)
+ (set_local $7
+ (i32.const 181)
)
)
)
- (block
- (set_local $11
- (get_local $19)
- )
- (set_local $2
- (get_local $6)
- )
- (set_local $7
- (i32.const 181)
- )
- )
)
)
- )
- (set_local $7
- (i32.const 171)
+ (set_local $7
+ (i32.const 171)
+ )
)
)
- )
- (block $do-once33
- (if
- (i32.eq
- (get_local $7)
- (i32.const 171)
- )
+ (block $do-once33
(if
- (i32.ne
- (tee_local $18
- (call $ta
- (i32.const 0)
+ (i32.eq
+ (get_local $7)
+ (i32.const 171)
+ )
+ (if
+ (i32.ne
+ (tee_local $18
+ (call $ta
+ (i32.const 0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (block
- (set_local $3
- (if (result i32)
- (i32.and
- (tee_local $19
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1684)
+ (block
+ (set_local $3
+ (if (result i32)
+ (i32.and
+ (tee_local $19
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1684)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
+ )
+ (tee_local $0
+ (get_local $18)
)
)
- (tee_local $0
- (get_local $18)
- )
- )
- (i32.add
- (i32.sub
- (get_local $13)
- (get_local $0)
- )
- (i32.and
- (i32.add
- (get_local $19)
+ (i32.add
+ (i32.sub
+ (get_local $13)
(get_local $0)
)
- (i32.sub
- (i32.const 0)
- (get_local $6)
+ (i32.and
+ (i32.add
+ (get_local $19)
+ (get_local $0)
+ )
+ (i32.sub
+ (i32.const 0)
+ (get_local $6)
+ )
)
)
+ (get_local $13)
)
- (get_local $13)
)
- )
- (set_local $0
- (i32.add
- (tee_local $6
- (i32.load
- (i32.const 1640)
+ (set_local $0
+ (i32.add
+ (tee_local $6
+ (i32.load
+ (i32.const 1640)
+ )
)
- )
- (get_local $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
(get_local $3)
- (get_local $5)
- )
- (i32.lt_u
- (get_local $3)
- (i32.const 2147483647)
)
)
- (block
- (if
- (tee_local $19
- (i32.load
- (i32.const 1648)
- )
+ (if
+ (i32.and
+ (i32.gt_u
+ (get_local $3)
+ (get_local $5)
)
- (br_if $do-once33
- (i32.or
- (i32.le_u
- (get_local $0)
- (get_local $6)
- )
- (i32.gt_u
- (get_local $0)
- (get_local $19)
- )
- )
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 2147483647)
)
)
- (if
- (i32.eq
+ (block
+ (if
(tee_local $19
- (call $ta
- (get_local $3)
+ (i32.load
+ (i32.const 1648)
)
)
- (get_local $18)
- )
- (block
- (set_local $20
- (get_local $18)
- )
- (set_local $26
- (get_local $3)
- )
- (br $label$break$b
- (i32.const 191)
+ (br_if $do-once33
+ (i32.or
+ (i32.le_u
+ (get_local $0)
+ (get_local $6)
+ )
+ (i32.gt_u
+ (get_local $0)
+ (get_local $19)
+ )
+ )
)
)
- (block
- (set_local $11
- (get_local $19)
+ (if
+ (i32.eq
+ (tee_local $19
+ (call $ta
+ (get_local $3)
+ )
+ )
+ (get_local $18)
)
- (set_local $2
- (get_local $3)
+ (block
+ (set_local $20
+ (get_local $18)
+ )
+ (set_local $26
+ (get_local $3)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
- (set_local $7
- (i32.const 181)
+ (block
+ (set_local $11
+ (get_local $19)
+ )
+ (set_local $2
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 181)
+ )
)
)
)
@@ -3420,1058 +3406,1084 @@
)
)
)
- )
- (block $label$break$d
- (if
- (i32.eq
- (get_local $7)
- (i32.const 181)
- )
- (block
- (set_local $19
- (i32.sub
- (i32.const 0)
- (get_local $2)
- )
+ (block $label$break$d
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 181)
)
- (if
- (i32.and
- (i32.gt_u
- (get_local $15)
+ (block
+ (set_local $19
+ (i32.sub
+ (i32.const 0)
(get_local $2)
)
+ )
+ (if
(i32.and
- (i32.lt_u
+ (i32.gt_u
+ (get_local $15)
(get_local $2)
- (i32.const 2147483647)
)
- (i32.ne
- (get_local $11)
- (i32.const -1)
+ (i32.and
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (get_local $11)
+ (i32.const -1)
+ )
)
)
- )
- (if
- (i32.lt_u
- (tee_local $0
- (i32.and
- (i32.add
- (i32.sub
- (get_local $17)
- (get_local $2)
- )
- (tee_local $18
- (i32.load
- (i32.const 1688)
+ (if
+ (i32.lt_u
+ (tee_local $0
+ (i32.and
+ (i32.add
+ (i32.sub
+ (get_local $17)
+ (get_local $2)
+ )
+ (tee_local $18
+ (i32.load
+ (i32.const 1688)
+ )
)
)
+ (i32.sub
+ (i32.const 0)
+ (get_local $18)
+ )
)
- (i32.sub
- (i32.const 0)
- (get_local $18)
- )
- )
- )
- (i32.const 2147483647)
- )
- (if
- (i32.eq
- (call $ta
- (get_local $0)
)
- (i32.const -1)
+ (i32.const 2147483647)
)
- (block
- (drop
+ (if
+ (i32.eq
(call $ta
- (get_local $19)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ (block
+ (drop
+ (call $ta
+ (get_local $19)
+ )
+ )
+ (br $label$break$d)
+ )
+ (set_local $1
+ (i32.add
+ (get_local $0)
+ (get_local $2)
)
)
- (br $label$break$d)
)
(set_local $1
- (i32.add
- (get_local $0)
- (get_local $2)
- )
+ (get_local $2)
)
)
(set_local $1
(get_local $2)
)
)
- (set_local $1
- (get_local $2)
- )
- )
- (if
- (i32.ne
- (get_local $11)
- (i32.const -1)
- )
- (block
- (set_local $20
+ (if
+ (i32.ne
(get_local $11)
+ (i32.const -1)
)
- (set_local $26
- (get_local $1)
- )
- (br $label$break$b
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $11)
+ )
+ (set_local $26
+ (get_local $1)
+ )
+ (br $label$break$b
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (i32.store
- (i32.const 1652)
- (i32.or
- (i32.load
- (i32.const 1652)
+ (i32.store
+ (i32.const 1652)
+ (i32.or
+ (i32.load
+ (i32.const 1652)
+ )
+ (i32.const 4)
)
- (i32.const 4)
)
+ (i32.const 188)
)
- (i32.const 188)
)
)
)
- )
- (i32.const 188)
- )
- (if
- (i32.lt_u
- (get_local $13)
- (i32.const 2147483647)
+ (i32.const 188)
)
(if
- (i32.and
- (i32.lt_u
- (tee_local $1
- (call $ta
- (get_local $13)
+ (i32.lt_u
+ (get_local $13)
+ (i32.const 2147483647)
+ )
+ (if
+ (i32.and
+ (i32.lt_u
+ (tee_local $1
+ (call $ta
+ (get_local $13)
+ )
)
- )
- (tee_local $13
- (call $ta
- (i32.const 0)
+ (tee_local $13
+ (call $ta
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (get_local $1)
- (i32.const -1)
- )
- (i32.ne
- (get_local $13)
- (i32.const -1)
- )
- )
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.sub
- (get_local $13)
+ (i32.and
+ (i32.ne
(get_local $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (get_local $13)
+ (i32.const -1)
)
- )
- (i32.add
- (get_local $5)
- (i32.const 40)
)
)
- (block
- (set_local $20
- (get_local $1)
- )
- (set_local $26
- (get_local $11)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.sub
+ (get_local $13)
+ (get_local $1)
+ )
+ )
+ (i32.add
+ (get_local $5)
+ (i32.const 40)
+ )
)
- (set_local $7
- (i32.const 191)
+ (block
+ (set_local $20
+ (get_local $1)
+ )
+ (set_local $26
+ (get_local $11)
+ )
+ (set_local $7
+ (i32.const 191)
+ )
)
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 191)
- )
- (block
- (i32.store
- (i32.const 1640)
- (tee_local $11
- (i32.add
- (i32.load
- (i32.const 1640)
- )
- (get_local $26)
- )
- )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 191)
)
- (if
- (i32.gt_u
- (get_local $11)
- (i32.load
- (i32.const 1644)
- )
- )
+ (block
(i32.store
- (i32.const 1644)
- (get_local $11)
+ (i32.const 1640)
+ (tee_local $11
+ (i32.add
+ (i32.load
+ (i32.const 1640)
+ )
+ (get_local $26)
+ )
+ )
)
- )
- (block $do-once38
(if
- (tee_local $11
+ (i32.gt_u
+ (get_local $11)
(i32.load
- (i32.const 1232)
+ (i32.const 1644)
)
)
- (block
- (set_local $2
- (i32.const 1656)
+ (i32.store
+ (i32.const 1644)
+ (get_local $11)
+ )
+ )
+ (block $do-once38
+ (if
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
- (loop $do-in41
- (block $do-out40
- (if
- (i32.eq
- (get_local $20)
- (i32.add
- (tee_local $1
- (i32.load
- (get_local $2)
+ (block
+ (set_local $2
+ (i32.const 1656)
+ )
+ (loop $do-in41
+ (block $do-out40
+ (if
+ (i32.eq
+ (get_local $20)
+ (i32.add
+ (tee_local $1
+ (i32.load
+ (get_local $2)
+ )
)
- )
- (tee_local $17
- (i32.load
- (tee_local $13
- (i32.add
- (get_local $2)
- (i32.const 4)
+ (tee_local $17
+ (i32.load
+ (tee_local $13
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
+ )
)
)
)
)
)
- )
- (block
- (set_local $48
- (get_local $1)
- )
- (set_local $49
- (get_local $13)
- )
- (set_local $50
- (get_local $17)
- )
- (set_local $51
- (get_local $2)
- )
- (set_local $7
- (i32.const 201)
+ (block
+ (set_local $48
+ (get_local $1)
+ )
+ (set_local $49
+ (get_local $13)
+ )
+ (set_local $50
+ (get_local $17)
+ )
+ (set_local $51
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 201)
+ )
+ (br $do-out40)
)
- (br $do-out40)
)
- )
- (br_if $do-in41
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $do-in41
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
)
)
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 201)
- )
(if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (get_local $51)
- )
- (i32.const 8)
- )
+ (i32.eq
+ (get_local $7)
+ (i32.const 201)
)
(if
- (i32.and
- (i32.lt_u
- (get_local $11)
- (get_local $20)
- )
- (i32.ge_u
- (get_local $11)
- (get_local $48)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (get_local $51)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (get_local $49)
- (i32.add
- (get_local $50)
- (get_local $26)
+ (if
+ (i32.and
+ (i32.lt_u
+ (get_local $11)
+ (get_local $20)
)
- )
- (set_local $2
- (i32.add
+ (i32.ge_u
(get_local $11)
- (tee_local $17
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $11)
- (i32.const 8)
+ (get_local $48)
+ )
+ )
+ (block
+ (i32.store
+ (get_local $49)
+ (i32.add
+ (get_local $50)
+ (get_local $26)
+ )
+ )
+ (set_local $2
+ (i32.add
+ (get_local $11)
+ (tee_local $17
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
)
- )
- (set_local $13
- (i32.add
- (i32.sub
- (get_local $26)
- (get_local $17)
- )
- (i32.load
- (i32.const 1220)
+ (set_local $13
+ (i32.add
+ (i32.sub
+ (get_local $26)
+ (get_local $17)
+ )
+ (i32.load
+ (i32.const 1220)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store
- (i32.const 1220)
- (get_local $13)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
+ )
+ (i32.store
+ (i32.const 1220)
(get_local $13)
- (i32.const 1)
)
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $13)
+ (i32.or
+ (get_local $13)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $2)
+ (get_local $13)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
+ (br $do-once38)
)
- (br $do-once38)
)
)
)
- )
- (set_local $14
- (if (result i32)
- (i32.lt_u
- (get_local $20)
- (tee_local $13
- (i32.load
- (i32.const 1224)
+ (set_local $14
+ (if (result i32)
+ (i32.lt_u
+ (get_local $20)
+ (tee_local $13
+ (i32.load
+ (i32.const 1224)
+ )
)
)
- )
- (block (result i32)
- (i32.store
- (i32.const 1224)
+ (block (result i32)
+ (i32.store
+ (i32.const 1224)
+ (get_local $20)
+ )
(get_local $20)
)
+ (get_local $13)
+ )
+ )
+ (set_local $13
+ (i32.add
(get_local $20)
+ (get_local $26)
)
- (get_local $13)
)
- )
- (set_local $13
- (i32.add
- (get_local $20)
- (get_local $26)
+ (set_local $2
+ (i32.const 1656)
)
- )
- (set_local $2
- (i32.const 1656)
- )
- (loop $while-in43
- (block $while-out42
- (if
- (i32.eq
- (i32.load
- (get_local $2)
- )
- (get_local $13)
- )
- (block
- (set_local $52
- (get_local $2)
- )
- (set_local $42
- (get_local $2)
+ (loop $while-in43
+ (block $while-out42
+ (if
+ (i32.eq
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $13)
)
- (set_local $7
- (i32.const 209)
+ (block
+ (set_local $52
+ (get_local $2)
+ )
+ (set_local $42
+ (get_local $2)
+ )
+ (set_local $7
+ (i32.const 209)
+ )
+ (br $while-out42)
)
- (br $while-out42)
)
- )
- (br_if $while-in43
- (tee_local $2
- (i32.load offset=8
- (get_local $2)
+ (br_if $while-in43
+ (tee_local $2
+ (i32.load offset=8
+ (get_local $2)
+ )
)
)
+ (set_local $30
+ (i32.const 1656)
+ )
)
- (set_local $30
- (i32.const 1656)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 209)
)
(if
- (i32.and
- (i32.load offset=12
- (get_local $42)
- )
- (i32.const 8)
- )
- (set_local $30
- (i32.const 1656)
+ (i32.eq
+ (get_local $7)
+ (i32.const 209)
)
- (block
- (i32.store
- (get_local $52)
- (get_local $20)
+ (if
+ (i32.and
+ (i32.load offset=12
+ (get_local $42)
+ )
+ (i32.const 8)
)
- (i32.store
- (tee_local $2
- (i32.add
- (get_local $42)
- (i32.const 4)
- )
+ (set_local $30
+ (i32.const 1656)
+ )
+ (block
+ (i32.store
+ (get_local $52)
+ (get_local $20)
)
- (i32.add
- (i32.load
- (get_local $2)
+ (i32.store
+ (tee_local $2
+ (i32.add
+ (get_local $42)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (get_local $2)
+ )
+ (get_local $26)
)
- (get_local $26)
)
- )
- (set_local $17
- (i32.add
- (get_local $20)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (set_local $17
+ (i32.add
+ (get_local $20)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $1
- (i32.add
- (get_local $13)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $2
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (set_local $1
+ (i32.add
+ (get_local $13)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $2
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $2)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $2)
- (i32.const 7)
)
)
)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (get_local $5)
- )
- )
- (set_local $15
- (i32.sub
- (i32.sub
- (get_local $1)
+ (set_local $2
+ (i32.add
(get_local $17)
+ (get_local $5)
)
- (get_local $5)
)
- )
- (i32.store offset=4
- (get_local $17)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (set_local $15
+ (i32.sub
+ (i32.sub
+ (get_local $1)
+ (get_local $17)
+ )
+ (get_local $5)
+ )
)
- )
- (block $do-once44
- (if
- (i32.eq
- (get_local $1)
- (get_local $11)
+ (i32.store offset=4
+ (get_local $17)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
)
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1220)
+ )
+ (block $do-once44
+ (if
+ (i32.eq
+ (get_local $1)
+ (get_local $11)
+ )
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1220)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1232)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1232)
+ (get_local $2)
)
- )
- )
- (block
- (if
- (i32.eq
- (get_local $1)
- (i32.load
- (i32.const 1228)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 1216)
- (tee_local $3
- (i32.add
- (i32.load
- (i32.const 1216)
+ )
+ (block
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (i32.const 1228)
+ )
+ )
+ (block
+ (i32.store
+ (i32.const 1216)
+ (tee_local $3
+ (i32.add
+ (i32.load
+ (i32.const 1216)
+ )
+ (get_local $15)
)
- (get_local $15)
)
)
- )
- (i32.store
- (i32.const 1228)
- (get_local $2)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $3)
- (i32.const 1)
+ (i32.store
+ (i32.const 1228)
+ (get_local $2)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(get_local $2)
- (get_local $3)
+ (i32.or
+ (get_local $3)
+ (i32.const 1)
+ )
)
- (get_local $3)
- )
- (br $do-once44)
- )
- )
- (if
- (i32.eq
- (i32.and
- (tee_local $3
- (i32.load offset=4
- (get_local $1)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $3)
)
+ (get_local $3)
)
- (i32.const 3)
+ (br $do-once44)
)
- (i32.const 1)
)
- (block
- (set_local $4
+ (if
+ (i32.eq
(i32.and
- (get_local $3)
- (i32.const -8)
- )
- )
- (set_local $0
- (i32.shr_u
- (get_local $3)
+ (tee_local $3
+ (i32.load offset=4
+ (get_local $1)
+ )
+ )
(i32.const 3)
)
+ (i32.const 1)
)
- (block $label$break$e
- (if
- (i32.lt_u
+ (block
+ (set_local $4
+ (i32.and
(get_local $3)
- (i32.const 256)
+ (i32.const -8)
)
- (block
- (set_local $10
- (i32.load offset=12
- (get_local $1)
- )
+ )
+ (set_local $0
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 3)
+ )
+ )
+ (block $label$break$e
+ (if
+ (i32.lt_u
+ (get_local $3)
+ (i32.const 256)
)
- (block $do-once47
- (if
- (i32.ne
- (tee_local $21
- (i32.load offset=8
- (get_local $1)
- )
- )
- (tee_local $19
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (block
+ (set_local $10
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (block $do-once47
+ (if
+ (i32.ne
+ (tee_local $21
+ (i32.load offset=8
+ (get_local $1)
)
- (i32.const 1248)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (get_local $21)
- (get_local $14)
+ (tee_local $19
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
)
- (call $qa)
)
- (br_if $do-once47
- (i32.eq
- (i32.load offset=12
+ (block
+ (if
+ (i32.lt_u
(get_local $21)
+ (get_local $14)
)
- (get_local $1)
- )
- )
- (call $qa)
- )
- )
- )
- (if
- (i32.eq
- (get_local $10)
- (get_local $21)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.and
- (i32.load
- (i32.const 1208)
+ (call $qa)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (br_if $do-once47
+ (i32.eq
+ (i32.load offset=12
+ (get_local $21)
+ )
+ (get_local $1)
)
- (i32.const -1)
)
+ (call $qa)
)
)
- (br $label$break$e)
)
- )
- (block $do-once49
(if
(i32.eq
(get_local $10)
- (get_local $19)
+ (get_local $21)
)
- (set_local $43
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.and
+ (i32.load
+ (i32.const 1208)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
+ )
+ (block $do-once49
+ (if
+ (i32.eq
+ (get_local $10)
+ (get_local $19)
+ )
+ (set_local $43
+ (i32.add
(get_local $10)
- (get_local $14)
+ (i32.const 8)
)
- (call $qa)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $10)
- (i32.const 8)
+ (block
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $10)
+ (i32.const 8)
+ )
)
)
+ (get_local $1)
)
- (get_local $1)
- )
- (block
- (set_local $43
- (get_local $0)
+ (block
+ (set_local $43
+ (get_local $0)
+ )
+ (br $do-once49)
)
- (br $do-once49)
)
+ (call $qa)
)
- (call $qa)
)
)
- )
- (i32.store offset=12
- (get_local $21)
- (get_local $10)
- )
- (i32.store
- (get_local $43)
- (get_local $21)
- )
- )
- (block
- (set_local $19
- (i32.load offset=24
- (get_local $1)
+ (i32.store offset=12
+ (get_local $21)
+ (get_local $10)
+ )
+ (i32.store
+ (get_local $43)
+ (get_local $21)
)
)
- (block $do-once51
- (if
- (i32.eq
- (tee_local $0
- (i32.load offset=12
- (get_local $1)
- )
- )
+ (block
+ (set_local $19
+ (i32.load offset=24
(get_local $1)
)
- (block
- (if
- (tee_local $16
- (i32.load
- (tee_local $6
- (i32.add
- (tee_local $18
- (i32.add
- (get_local $1)
- (i32.const 16)
+ )
+ (block $do-once51
+ (if
+ (i32.eq
+ (tee_local $0
+ (i32.load offset=12
+ (get_local $1)
+ )
+ )
+ (get_local $1)
+ )
+ (block
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (tee_local $18
+ (i32.add
+ (get_local $1)
+ (i32.const 16)
+ )
)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
- )
- (block
- (set_local $3
- (get_local $16)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
)
- (set_local $0
- (get_local $6)
+ (if
+ (tee_local $22
+ (i32.load
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $22)
+ )
+ (set_local $0
+ (get_local $18)
+ )
+ )
+ (block
+ (set_local $24
+ (i32.const 0)
+ )
+ (br $do-once51)
+ )
)
)
- (if
- (tee_local $22
- (i32.load
- (get_local $18)
+ (loop $while-in54
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
- (block
- (set_local $3
- (get_local $22)
+ (if
+ (tee_local $16
+ (i32.load
+ (tee_local $6
+ (i32.add
+ (get_local $3)
+ (i32.const 16)
+ )
+ )
+ )
)
- (set_local $0
- (get_local $18)
+ (block
+ (set_local $3
+ (get_local $16)
+ )
+ (set_local $0
+ (get_local $6)
+ )
+ (br $while-in54)
)
)
+ )
+ (if
+ (i32.lt_u
+ (get_local $0)
+ (get_local $14)
+ )
+ (call $qa)
(block
- (set_local $24
+ (i32.store
+ (get_local $0)
(i32.const 0)
)
- (br $do-once51)
+ (set_local $24
+ (get_local $3)
+ )
)
)
)
- (loop $while-in54
+ (block
(if
- (tee_local $16
+ (i32.lt_u
+ (tee_local $6
+ (i32.load offset=8
+ (get_local $1)
+ )
+ )
+ (get_local $14)
+ )
+ (call $qa)
+ )
+ (if
+ (i32.ne
(i32.load
- (tee_local $6
+ (tee_local $16
(i32.add
- (get_local $3)
- (i32.const 20)
+ (get_local $6)
+ (i32.const 12)
)
)
)
+ (get_local $1)
)
- (block
- (set_local $3
- (get_local $16)
- )
- (set_local $0
- (get_local $6)
- )
- (br $while-in54)
- )
+ (call $qa)
)
(if
- (tee_local $16
+ (i32.eq
(i32.load
- (tee_local $6
+ (tee_local $18
(i32.add
- (get_local $3)
- (i32.const 16)
+ (get_local $0)
+ (i32.const 8)
)
)
)
+ (get_local $1)
)
(block
- (set_local $3
+ (i32.store
(get_local $16)
+ (get_local $0)
)
- (set_local $0
+ (i32.store
+ (get_local $18)
(get_local $6)
)
- (br $while-in54)
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $0)
- (get_local $14)
- )
- (call $qa)
- (block
- (i32.store
- (get_local $0)
- (i32.const 0)
- )
- (set_local $24
- (get_local $3)
+ (set_local $24
+ (get_local $0)
+ )
)
+ (call $qa)
)
)
)
- (block
- (if
- (i32.lt_u
- (tee_local $6
- (i32.load offset=8
- (get_local $1)
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $19)
+ )
+ )
+ (block $do-once55
+ (if
+ (i32.eq
+ (get_local $1)
+ (i32.load
+ (tee_local $21
+ (i32.add
+ (i32.shl
+ (tee_local $0
+ (i32.load offset=28
+ (get_local $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 1512)
)
)
- (get_local $14)
)
- (call $qa)
)
- (if
- (i32.ne
- (i32.load
- (tee_local $16
- (i32.add
- (get_local $6)
- (i32.const 12)
+ (block
+ (i32.store
+ (get_local $21)
+ (get_local $24)
+ )
+ (br_if $do-once55
+ (get_local $24)
+ )
+ (i32.store
+ (i32.const 1212)
+ (i32.and
+ (i32.load
+ (i32.const 1212)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
)
+ (i32.const -1)
)
)
- (get_local $1)
)
- (call $qa)
+ (br $label$break$e)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $18
- (i32.add
- (get_local $0)
- (i32.const 8)
- )
+ (block
+ (if
+ (i32.lt_u
+ (get_local $19)
+ (i32.load
+ (i32.const 1224)
)
)
- (get_local $1)
+ (call $qa)
)
- (block
- (i32.store
- (get_local $16)
- (get_local $0)
+ (if
+ (i32.eq
+ (i32.load
+ (tee_local $10
+ (i32.add
+ (get_local $19)
+ (i32.const 16)
+ )
+ )
+ )
+ (get_local $1)
)
(i32.store
- (get_local $18)
- (get_local $6)
+ (get_local $10)
+ (get_local $24)
)
- (set_local $24
- (get_local $0)
+ (i32.store offset=20
+ (get_local $19)
+ (get_local $24)
+ )
+ )
+ (br_if $label$break$e
+ (i32.eqz
+ (get_local $24)
)
)
- (call $qa)
)
)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (if
+ (i32.lt_u
+ (get_local $24)
+ (tee_local $0
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (call $qa)
+ )
+ (i32.store offset=24
+ (get_local $24)
(get_local $19)
)
- )
- (block $do-once55
(if
- (i32.eq
- (get_local $1)
+ (tee_local $10
(i32.load
(tee_local $21
(i32.add
- (i32.shl
- (tee_local $0
- (i32.load offset=28
- (get_local $1)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- )
- )
- (block
- (i32.store
- (get_local $21)
- (get_local $24)
- )
- (br_if $do-once55
- (get_local $24)
- )
- (i32.store
- (i32.const 1212)
- (i32.and
- (i32.load
- (i32.const 1212)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (get_local $0)
- )
- (i32.const -1)
+ (get_local $1)
+ (i32.const 16)
)
)
)
- (br $label$break$e)
)
- (block
- (if
- (i32.lt_u
- (get_local $19)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
+ (if
+ (i32.lt_u
+ (get_local $10)
+ (get_local $0)
)
- (if
- (i32.eq
- (i32.load
- (tee_local $10
- (i32.add
- (get_local $19)
- (i32.const 16)
- )
- )
- )
- (get_local $1)
- )
- (i32.store
- (get_local $10)
- (get_local $24)
- )
- (i32.store offset=20
- (get_local $19)
+ (call $qa)
+ (block
+ (i32.store offset=16
(get_local $24)
+ (get_local $10)
)
- )
- (br_if $label$break$e
- (i32.eqz
+ (i32.store offset=24
+ (get_local $10)
(get_local $24)
)
)
)
)
- )
- (if
- (i32.lt_u
- (get_local $24)
- (tee_local $0
- (i32.load
- (i32.const 1224)
- )
- )
- )
- (call $qa)
- )
- (i32.store offset=24
- (get_local $24)
- (get_local $19)
- )
- (if
- (tee_local $10
- (i32.load
- (tee_local $21
- (i32.add
- (get_local $1)
- (i32.const 16)
+ (br_if $label$break$e
+ (i32.eqz
+ (tee_local $10
+ (i32.load offset=4
+ (get_local $21)
)
)
)
@@ -4479,11 +4491,13 @@
(if
(i32.lt_u
(get_local $10)
- (get_local $0)
+ (i32.load
+ (i32.const 1224)
+ )
)
(call $qa)
(block
- (i32.store offset=16
+ (i32.store offset=20
(get_local $24)
(get_local $10)
)
@@ -4494,467 +4508,313 @@
)
)
)
- (br_if $label$break$e
- (i32.eqz
- (tee_local $10
- (i32.load offset=4
- (get_local $21)
- )
- )
- )
- )
- (if
- (i32.lt_u
- (get_local $10)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
- (i32.store offset=20
- (get_local $24)
- (get_local $10)
- )
- (i32.store offset=24
- (get_local $10)
- (get_local $24)
- )
- )
- )
+ )
+ )
+ (set_local $1
+ (i32.add
+ (get_local $1)
+ (get_local $4)
+ )
+ )
+ (set_local $15
+ (i32.add
+ (get_local $4)
+ (get_local $15)
)
)
)
- (set_local $1
+ )
+ (i32.store
+ (tee_local $0
(i32.add
(get_local $1)
- (get_local $4)
+ (i32.const 4)
)
)
- (set_local $15
- (i32.add
- (get_local $4)
- (get_local $15)
+ (i32.and
+ (i32.load
+ (get_local $0)
)
+ (i32.const -2)
)
)
- )
- (i32.store
- (tee_local $0
- (i32.add
- (get_local $1)
- (i32.const 4)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.or
+ (get_local $15)
+ (i32.const 1)
)
)
- (i32.and
- (i32.load
- (get_local $0)
+ (i32.store
+ (i32.add
+ (get_local $2)
+ (get_local $15)
)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (get_local $2)
- (i32.or
- (get_local $15)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (get_local $2)
(get_local $15)
)
- (get_local $15)
- )
- (set_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (get_local $15)
- (i32.const 256)
+ (set_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 3)
+ )
)
- (block
- (set_local $3
- (i32.add
- (i32.shl
- (get_local $0)
- (i32.const 3)
+ (if
+ (i32.lt_u
+ (get_local $15)
+ (i32.const 256)
+ )
+ (block
+ (set_local $3
+ (i32.add
+ (i32.shl
+ (get_local $0)
+ (i32.const 3)
+ )
+ (i32.const 1248)
)
- (i32.const 1248)
)
- )
- (block $do-once59
- (if
- (i32.and
- (tee_local $10
- (i32.load
- (i32.const 1208)
+ (block $do-once59
+ (if
+ (i32.and
+ (tee_local $10
+ (i32.load
+ (i32.const 1208)
+ )
)
- )
- (tee_local $0
- (i32.shl
- (i32.const 1)
- (get_local $0)
+ (tee_local $0
+ (i32.shl
+ (i32.const 1)
+ (get_local $0)
+ )
)
)
- )
- (block
- (if
- (i32.ge_u
- (tee_local $19
- (i32.load
- (tee_local $0
- (i32.add
- (get_local $3)
- (i32.const 8)
+ (block
+ (if
+ (i32.ge_u
+ (tee_local $19
+ (i32.load
+ (tee_local $0
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (block
+ (set_local $44
+ (get_local $0)
+ )
+ (set_local $37
+ (get_local $19)
+ )
+ (br $do-once59)
)
)
- (block
- (set_local $44
+ (call $qa)
+ )
+ (block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $10)
(get_local $0)
)
- (set_local $37
- (get_local $19)
- )
- (br $do-once59)
)
- )
- (call $qa)
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $10)
- (get_local $0)
+ (set_local $44
+ (i32.add
+ (get_local $3)
+ (i32.const 8)
+ )
)
- )
- (set_local $44
- (i32.add
+ (set_local $37
(get_local $3)
- (i32.const 8)
)
)
- (set_local $37
- (get_local $3)
- )
)
)
+ (i32.store
+ (get_local $44)
+ (get_local $2)
+ )
+ (i32.store offset=12
+ (get_local $37)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $37)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $3)
+ )
+ (br $do-once44)
)
- (i32.store
- (get_local $44)
- (get_local $2)
- )
- (i32.store offset=12
- (get_local $37)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $37)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $3)
- )
- (br $do-once44)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $4
- (block $do-once61 (result i32)
- (if (result i32)
- (tee_local $0
- (i32.shr_u
- (get_local $15)
- (i32.const 8)
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $4
+ (block $do-once61 (result i32)
+ (if (result i32)
+ (tee_local $0
+ (i32.shr_u
+ (get_local $15)
+ (i32.const 8)
+ )
)
- )
- (block (result i32)
- (drop
- (br_if $do-once61
- (i32.const 31)
- (i32.gt_u
- (get_local $15)
- (i32.const 16777215)
+ (block (result i32)
+ (drop
+ (br_if $do-once61
+ (i32.const 31)
+ (i32.gt_u
+ (get_local $15)
+ (i32.const 16777215)
+ )
)
)
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $15)
- (i32.add
- (tee_local $6
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $15)
+ (i32.add
+ (tee_local $6
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $19
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $0)
- (tee_local $10
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $0)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $19
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $0)
+ (tee_local $10
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $10)
)
- (get_local $10)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $0
- (i32.shl
- (get_local $4)
- (get_local $19)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $0
+ (i32.shl
+ (get_local $4)
+ (get_local $19)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $0)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $0)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $6)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (i32.const 2)
)
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $2)
- (get_local $4)
- )
- (i32.store offset=4
- (tee_local $3
- (i32.add
- (get_local $2)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (get_local $3)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $6
- (i32.shl
- (i32.const 1)
- (get_local $4)
- )
- )
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $3)
- (get_local $6)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $2)
- )
- (i32.store offset=24
- (get_local $2)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $2)
- (get_local $2)
- )
- (i32.store offset=8
- (get_local $2)
- (get_local $2)
- )
- (br $do-once44)
+ (i32.store offset=28
+ (get_local $2)
+ (get_local $4)
)
- )
- (set_local $6
- (i32.shl
- (get_local $15)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $4)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $4)
- (i32.const 31)
+ (i32.store offset=4
+ (tee_local $3
+ (i32.add
+ (get_local $2)
+ (i32.const 16)
)
)
+ (i32.const 0)
)
- )
- (set_local $3
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $3)
+ (i32.const 0)
)
- )
- (loop $while-in64
- (block $while-out63
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $3)
- )
- (i32.const -8)
- )
- (get_local $15)
- )
- (block
- (set_local $38
- (get_local $3)
- )
- (set_local $7
- (i32.const 279)
- )
- (br $while-out63)
- )
- )
- (if
- (tee_local $4
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $3)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $6)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $3
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $6
+ (tee_local $6
(i32.shl
- (get_local $6)
(i32.const 1)
+ (get_local $4)
)
)
- (set_local $3
- (get_local $4)
- )
- (br $while-in64)
)
- (block
- (set_local $45
- (get_local $0)
- )
- (set_local $53
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $3)
- )
- (set_local $7
- (i32.const 276)
+ (get_local $6)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 276)
- )
- (if
- (i32.lt_u
- (get_local $45)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $45)
+ (get_local $0)
(get_local $2)
)
(i32.store offset=24
(get_local $2)
- (get_local $53)
+ (get_local $0)
)
(i32.store offset=12
(get_local $2)
@@ -4964,705 +4824,705 @@
(get_local $2)
(get_local $2)
)
+ (br $do-once44)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 279)
+ (set_local $6
+ (i32.shl
+ (get_local $15)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $4)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $6
- (i32.load
- (tee_local $3
+ )
+ (set_local $3
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in64
+ (block $while-out63
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $3)
+ )
+ (i32.const -8)
+ )
+ (get_local $15)
+ )
+ (block
+ (set_local $38
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 279)
+ )
+ (br $while-out63)
+ )
+ )
+ (if
+ (tee_local $4
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $38)
- (i32.const 8)
+ (get_local $3)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $6)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $4
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $6
+ (i32.shl
+ (get_local $6)
+ (i32.const 1)
)
)
+ (set_local $3
+ (get_local $4)
+ )
+ (br $while-in64)
)
- (i32.ge_u
- (get_local $38)
- (get_local $4)
+ (block
+ (set_local $45
+ (get_local $0)
+ )
+ (set_local $53
+ (get_local $3)
+ )
+ (set_local $7
+ (i32.const 276)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $6)
- (get_local $2)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 276)
+ )
+ (if
+ (i32.lt_u
+ (get_local $45)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $3)
+ (get_local $45)
(get_local $2)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $2)
- (get_local $6)
+ (get_local $53)
)
(i32.store offset=12
(get_local $2)
- (get_local $38)
+ (get_local $2)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $2)
(get_local $2)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 279)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $6
+ (i32.load
+ (tee_local $3
+ (i32.add
+ (get_local $38)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $4
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $38)
+ (get_local $4)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $6)
+ (get_local $2)
+ )
+ (i32.store
+ (get_local $3)
+ (get_local $2)
+ )
+ (i32.store offset=8
+ (get_local $2)
+ (get_local $6)
+ )
+ (i32.store offset=12
+ (get_local $2)
+ (get_local $38)
+ )
+ (i32.store offset=24
+ (get_local $2)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
- (get_local $17)
- (i32.const 8)
+ (set_global $r
+ (get_local $25)
)
- )
- )
- )
- )
- (loop $while-in66
- (block $while-out65
- (if
- (i32.le_u
- (tee_local $2
- (i32.load
- (get_local $30)
+ (return
+ (i32.add
+ (get_local $17)
+ (i32.const 8)
)
)
- (get_local $11)
)
+ )
+ )
+ (loop $while-in66
+ (block $while-out65
(if
- (i32.gt_u
- (tee_local $15
- (i32.add
- (get_local $2)
- (i32.load offset=4
- (get_local $30)
- )
+ (i32.le_u
+ (tee_local $2
+ (i32.load
+ (get_local $30)
)
)
(get_local $11)
)
- (block
- (set_local $0
- (get_local $15)
+ (if
+ (i32.gt_u
+ (tee_local $15
+ (i32.add
+ (get_local $2)
+ (i32.load offset=4
+ (get_local $30)
+ )
+ )
+ )
+ (get_local $11)
+ )
+ (block
+ (set_local $0
+ (get_local $15)
+ )
+ (br $while-out65)
)
- (br $while-out65)
)
)
- )
- (set_local $30
- (i32.load offset=8
- (get_local $30)
+ (set_local $30
+ (i32.load offset=8
+ (get_local $30)
+ )
)
+ (br $while-in66)
)
- (br $while-in66)
)
- )
- (set_local $15
- (i32.add
- (tee_local $17
- (i32.add
- (get_local $0)
- (i32.const -47)
+ (set_local $15
+ (i32.add
+ (tee_local $17
+ (i32.add
+ (get_local $0)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (set_local $2
- (i32.add
- (tee_local $17
- (select
- (get_local $11)
- (tee_local $2
- (i32.add
- (get_local $17)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (set_local $2
+ (i32.add
+ (tee_local $17
+ (select
+ (get_local $11)
+ (tee_local $2
+ (i32.add
+ (get_local $17)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (get_local $15)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(get_local $15)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $15)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (get_local $2)
- (tee_local $15
- (i32.add
- (get_local $11)
- (i32.const 16)
+ (i32.lt_u
+ (get_local $2)
+ (tee_local $15
+ (i32.add
+ (get_local $11)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $6
- (i32.sub
+ (i32.store
+ (i32.const 1220)
+ (tee_local $6
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
+ )
+ )
+ )
+ (i32.store offset=4
+ (get_local $1)
+ (i32.or
+ (get_local $6)
+ (i32.const 1)
+ )
+ )
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $6)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
+ )
+ (i32.store
+ (tee_local $6
(i32.add
- (get_local $26)
- (i32.const -40)
+ (get_local $17)
+ (i32.const 4)
)
- (get_local $13)
)
+ (i32.const 27)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $6)
- (i32.const 1)
+ (i32.store
+ (get_local $2)
+ (i32.load
+ (i32.const 1656)
+ )
)
- )
- (i32.store offset=4
- (i32.add
- (get_local $1)
- (get_local $6)
+ (i32.store offset=4
+ (get_local $2)
+ (i32.load
+ (i32.const 1660)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=8
+ (get_local $2)
+ (i32.load
+ (i32.const 1664)
+ )
)
- )
- (i32.store
- (tee_local $6
- (i32.add
- (get_local $17)
- (i32.const 4)
+ (i32.store offset=12
+ (get_local $2)
+ (i32.load
+ (i32.const 1668)
)
)
- (i32.const 27)
- )
- (i32.store
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1656)
+ (get_local $20)
)
- )
- (i32.store offset=4
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store offset=8
- (get_local $2)
- (i32.load
- (i32.const 1664)
- )
- )
- (i32.store offset=12
- (get_local $2)
- (i32.load
+ (i32.store
(i32.const 1668)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1664)
- (get_local $2)
- )
- (set_local $2
- (i32.add
- (get_local $17)
- (i32.const 24)
- )
- )
- (loop $do-in68
(i32.store
- (tee_local $2
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 1664)
+ (get_local $2)
)
- (br_if $do-in68
- (i32.lt_u
- (i32.add
- (get_local $2)
- (i32.const 4)
- )
- (get_local $0)
+ (set_local $2
+ (i32.add
+ (get_local $17)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (get_local $17)
- (get_local $11)
- )
- (block
+ (loop $do-in68
(i32.store
- (get_local $6)
- (i32.and
- (i32.load
- (get_local $6)
+ (tee_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (tee_local $2
- (i32.sub
- (get_local $17)
- (get_local $11)
- )
+ (br_if $do-in68
+ (i32.lt_u
+ (i32.add
+ (get_local $2)
+ (i32.const 4)
)
- (i32.const 1)
+ (get_local $0)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(get_local $17)
- (get_local $2)
- )
- (set_local $1
- (i32.shr_u
- (get_local $2)
- (i32.const 3)
- )
+ (get_local $11)
)
- (if
- (i32.lt_u
- (get_local $2)
- (i32.const 256)
+ (block
+ (i32.store
+ (get_local $6)
+ (i32.and
+ (i32.load
+ (get_local $6)
+ )
+ (i32.const -2)
+ )
)
- (block
- (set_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $11)
+ (i32.or
+ (tee_local $2
+ (i32.sub
+ (get_local $17)
+ (get_local $11)
)
- (i32.const 1248)
)
+ (i32.const 1)
)
- (if
- (i32.and
- (tee_local $3
- (i32.load
- (i32.const 1208)
- )
- )
- (tee_local $4
+ )
+ (i32.store
+ (get_local $17)
+ (get_local $2)
+ )
+ (set_local $1
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $2)
+ (i32.const 256)
+ )
+ (block
+ (set_local $13
+ (i32.add
(i32.shl
- (i32.const 1)
(get_local $1)
+ (i32.const 3)
)
+ (i32.const 1248)
)
)
(if
- (i32.lt_u
+ (i32.and
(tee_local $3
(i32.load
- (tee_local $4
- (i32.add
- (get_local $13)
- (i32.const 8)
+ (i32.const 1208)
+ )
+ )
+ (tee_local $4
+ (i32.shl
+ (i32.const 1)
+ (get_local $1)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (tee_local $3
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
)
)
+ (i32.load
+ (i32.const 1224)
+ )
)
- (i32.load
- (i32.const 1224)
+ (call $qa)
+ (block
+ (set_local $46
+ (get_local $4)
+ )
+ (set_local $39
+ (get_local $3)
+ )
)
)
- (call $qa)
(block
+ (i32.store
+ (i32.const 1208)
+ (i32.or
+ (get_local $3)
+ (get_local $4)
+ )
+ )
(set_local $46
- (get_local $4)
+ (i32.add
+ (get_local $13)
+ (i32.const 8)
+ )
)
(set_local $39
- (get_local $3)
- )
- )
- )
- (block
- (i32.store
- (i32.const 1208)
- (i32.or
- (get_local $3)
- (get_local $4)
- )
- )
- (set_local $46
- (i32.add
(get_local $13)
- (i32.const 8)
)
)
- (set_local $39
- (get_local $13)
- )
)
+ (i32.store
+ (get_local $46)
+ (get_local $11)
+ )
+ (i32.store offset=12
+ (get_local $39)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $39)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $13)
+ )
+ (br $do-once38)
)
- (i32.store
- (get_local $46)
- (get_local $11)
- )
- (i32.store offset=12
- (get_local $39)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $39)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $13)
- )
- (br $do-once38)
)
- )
- (set_local $0
- (i32.add
- (i32.shl
- (tee_local $3
- (if (result i32)
- (tee_local $13
- (i32.shr_u
- (get_local $2)
- (i32.const 8)
- )
- )
+ (set_local $0
+ (i32.add
+ (i32.shl
+ (tee_local $3
(if (result i32)
- (i32.gt_u
- (get_local $2)
- (i32.const 16777215)
+ (tee_local $13
+ (i32.shr_u
+ (get_local $2)
+ (i32.const 8)
+ )
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (get_local $2)
- (i32.add
- (tee_local $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
+ (if (result i32)
+ (i32.gt_u
+ (get_local $2)
+ (i32.const 16777215)
+ )
+ (i32.const 31)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (get_local $2)
+ (i32.add
+ (tee_local $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
(i32.or
- (tee_local $13
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $4
- (i32.shl
- (get_local $13)
- (tee_local $3
- (i32.and
- (i32.shr_u
- (i32.add
- (get_local $13)
- (i32.const 1048320)
+ (i32.or
+ (tee_local $13
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $4
+ (i32.shl
+ (get_local $13)
+ (tee_local $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (get_local $13)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 8)
)
- (i32.const 8)
)
)
)
+ (i32.const 520192)
)
- (i32.const 520192)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 4)
)
- (i32.const 4)
)
+ (get_local $3)
)
- (get_local $3)
- )
- (tee_local $4
- (i32.and
- (i32.shr_u
- (i32.add
- (tee_local $1
- (i32.shl
- (get_local $4)
- (get_local $13)
+ (tee_local $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (tee_local $1
+ (i32.shl
+ (get_local $4)
+ (get_local $13)
+ )
)
+ (i32.const 245760)
)
- (i32.const 245760)
+ (i32.const 16)
)
- (i32.const 16)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
- )
- (i32.shr_u
- (i32.shl
- (get_local $1)
- (get_local $4)
+ (i32.shr_u
+ (i32.shl
+ (get_local $1)
+ (get_local $4)
+ )
+ (i32.const 15)
)
- (i32.const 15)
)
)
+ (i32.const 7)
)
- (i32.const 7)
)
+ (i32.const 1)
+ )
+ (i32.shl
+ (get_local $0)
+ (i32.const 1)
)
- (i32.const 1)
- )
- (i32.shl
- (get_local $0)
- (i32.const 1)
)
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 1512)
- )
- )
- (i32.store offset=28
- (get_local $11)
- (get_local $3)
- )
- (i32.store offset=20
- (get_local $11)
- (i32.const 0)
- )
- (i32.store
- (get_local $15)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (tee_local $4
- (i32.load
- (i32.const 1212)
- )
- )
- (tee_local $1
- (i32.shl
- (i32.const 1)
- (get_local $3)
)
+ (i32.const 2)
)
+ (i32.const 1512)
)
)
- (block
- (i32.store
- (i32.const 1212)
- (i32.or
- (get_local $4)
- (get_local $1)
- )
- )
- (i32.store
- (get_local $0)
- (get_local $11)
- )
- (i32.store offset=24
- (get_local $11)
- (get_local $0)
- )
- (i32.store offset=12
- (get_local $11)
- (get_local $11)
- )
- (i32.store offset=8
- (get_local $11)
- (get_local $11)
- )
- (br $do-once38)
+ (i32.store offset=28
+ (get_local $11)
+ (get_local $3)
)
- )
- (set_local $1
- (i32.shl
- (get_local $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (get_local $3)
- (i32.const 1)
- )
- )
- (i32.eq
- (get_local $3)
- (i32.const 31)
- )
- )
+ (i32.store offset=20
+ (get_local $11)
+ (i32.const 0)
)
- )
- (set_local $4
- (i32.load
- (get_local $0)
+ (i32.store
+ (get_local $15)
+ (i32.const 0)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.eq
- (i32.and
- (i32.load offset=4
- (get_local $4)
- )
- (i32.const -8)
- )
- (get_local $2)
- )
- (block
- (set_local $31
- (get_local $4)
- )
- (set_local $7
- (i32.const 305)
- )
- (br $while-out69)
- )
- )
- (if
- (tee_local $3
- (i32.load
- (tee_local $0
- (i32.add
- (i32.add
- (get_local $4)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (get_local $1)
- (i32.const 31)
- )
- (i32.const 2)
- )
- )
+ (if
+ (i32.eqz
+ (i32.and
+ (tee_local $4
+ (i32.load
+ (i32.const 1212)
)
)
- )
- (block
- (set_local $1
+ (tee_local $1
(i32.shl
- (get_local $1)
(i32.const 1)
+ (get_local $3)
)
)
- (set_local $4
- (get_local $3)
- )
- (br $while-in70)
)
- (block
- (set_local $47
- (get_local $0)
- )
- (set_local $54
+ )
+ (block
+ (i32.store
+ (i32.const 1212)
+ (i32.or
(get_local $4)
- )
- (set_local $7
- (i32.const 302)
+ (get_local $1)
)
)
- )
- )
- )
- (if
- (i32.eq
- (get_local $7)
- (i32.const 302)
- )
- (if
- (i32.lt_u
- (get_local $47)
- (i32.load
- (i32.const 1224)
- )
- )
- (call $qa)
- (block
(i32.store
- (get_local $47)
+ (get_local $0)
(get_local $11)
)
(i32.store offset=24
(get_local $11)
- (get_local $54)
+ (get_local $0)
)
(i32.store offset=12
(get_local $11)
@@ -5672,271 +5532,406 @@
(get_local $11)
(get_local $11)
)
+ (br $do-once38)
)
)
- (if
- (i32.eq
- (get_local $7)
- (i32.const 305)
+ (set_local $1
+ (i32.shl
+ (get_local $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (get_local $3)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (get_local $3)
+ (i32.const 31)
+ )
+ )
)
- (if
- (i32.and
- (i32.ge_u
- (tee_local $1
- (i32.load
- (tee_local $4
+ )
+ (set_local $4
+ (i32.load
+ (get_local $0)
+ )
+ )
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (get_local $4)
+ )
+ (i32.const -8)
+ )
+ (get_local $2)
+ )
+ (block
+ (set_local $31
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 305)
+ )
+ (br $while-out69)
+ )
+ )
+ (if
+ (tee_local $3
+ (i32.load
+ (tee_local $0
+ (i32.add
(i32.add
- (get_local $31)
- (i32.const 8)
+ (get_local $4)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (get_local $1)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
)
)
)
- (tee_local $2
- (i32.load
- (i32.const 1224)
+ )
+ (block
+ (set_local $1
+ (i32.shl
+ (get_local $1)
+ (i32.const 1)
)
)
+ (set_local $4
+ (get_local $3)
+ )
+ (br $while-in70)
)
- (i32.ge_u
- (get_local $31)
- (get_local $2)
+ (block
+ (set_local $47
+ (get_local $0)
+ )
+ (set_local $54
+ (get_local $4)
+ )
+ (set_local $7
+ (i32.const 302)
+ )
)
)
- (block
- (i32.store offset=12
- (get_local $1)
- (get_local $11)
+ )
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 302)
+ )
+ (if
+ (i32.lt_u
+ (get_local $47)
+ (i32.load
+ (i32.const 1224)
)
+ )
+ (call $qa)
+ (block
(i32.store
- (get_local $4)
+ (get_local $47)
(get_local $11)
)
- (i32.store offset=8
+ (i32.store offset=24
(get_local $11)
- (get_local $1)
+ (get_local $54)
)
(i32.store offset=12
(get_local $11)
- (get_local $31)
+ (get_local $11)
)
- (i32.store offset=24
+ (i32.store offset=8
+ (get_local $11)
(get_local $11)
- (i32.const 0)
)
)
- (call $qa)
+ )
+ (if
+ (i32.eq
+ (get_local $7)
+ (i32.const 305)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (tee_local $1
+ (i32.load
+ (tee_local $4
+ (i32.add
+ (get_local $31)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (tee_local $2
+ (i32.load
+ (i32.const 1224)
+ )
+ )
+ )
+ (i32.ge_u
+ (get_local $31)
+ (get_local $2)
+ )
+ )
+ (block
+ (i32.store offset=12
+ (get_local $1)
+ (get_local $11)
+ )
+ (i32.store
+ (get_local $4)
+ (get_local $11)
+ )
+ (i32.store offset=8
+ (get_local $11)
+ (get_local $1)
+ )
+ (i32.store offset=12
+ (get_local $11)
+ (get_local $31)
+ )
+ (i32.store offset=24
+ (get_local $11)
+ (i32.const 0)
+ )
+ )
+ (call $qa)
+ )
)
)
)
)
)
- )
- (block
- (if
- (i32.or
- (i32.eqz
- (tee_local $1
- (i32.load
- (i32.const 1224)
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (tee_local $1
+ (i32.load
+ (i32.const 1224)
+ )
)
)
+ (i32.lt_u
+ (get_local $20)
+ (get_local $1)
+ )
)
- (i32.lt_u
+ (i32.store
+ (i32.const 1224)
(get_local $20)
- (get_local $1)
)
)
(i32.store
- (i32.const 1224)
+ (i32.const 1656)
(get_local $20)
)
- )
- (i32.store
- (i32.const 1656)
- (get_local $20)
- )
- (i32.store
- (i32.const 1660)
- (get_local $26)
- )
- (i32.store
- (i32.const 1668)
- (i32.const 0)
- )
- (i32.store
- (i32.const 1244)
- (i32.load
- (i32.const 1680)
+ (i32.store
+ (i32.const 1660)
+ (get_local $26)
)
- )
- (i32.store
- (i32.const 1240)
- (i32.const -1)
- )
- (set_local $1
- (i32.const 0)
- )
- (loop $do-in
- (i32.store offset=12
- (tee_local $13
- (i32.add
- (i32.shl
- (get_local $1)
- (i32.const 3)
- )
- (i32.const 1248)
- )
+ (i32.store
+ (i32.const 1668)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 1244)
+ (i32.load
+ (i32.const 1680)
)
- (get_local $13)
)
- (i32.store offset=8
- (get_local $13)
- (get_local $13)
+ (i32.store
+ (i32.const 1240)
+ (i32.const -1)
)
- (br_if $do-in
- (i32.ne
- (tee_local $1
+ (set_local $1
+ (i32.const 0)
+ )
+ (loop $do-in
+ (i32.store offset=12
+ (tee_local $13
(i32.add
- (get_local $1)
- (i32.const 1)
+ (i32.shl
+ (get_local $1)
+ (i32.const 3)
+ )
+ (i32.const 1248)
+ )
+ )
+ (get_local $13)
+ )
+ (i32.store offset=8
+ (get_local $13)
+ (get_local $13)
+ )
+ (br_if $do-in
+ (i32.ne
+ (tee_local $1
+ (i32.add
+ (get_local $1)
+ (i32.const 1)
+ )
)
+ (i32.const 32)
)
- (i32.const 32)
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $1
- (i32.add
- (get_local $20)
- (tee_local $13
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (tee_local $1
- (i32.add
- (get_local $20)
- (i32.const 8)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (tee_local $13
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (tee_local $1
+ (i32.add
+ (get_local $20)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (get_local $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (get_local $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 1220)
- (tee_local $2
- (i32.sub
- (i32.add
- (get_local $26)
- (i32.const -40)
+ (i32.store
+ (i32.const 1220)
+ (tee_local $2
+ (i32.sub
+ (i32.add
+ (get_local $26)
+ (i32.const -40)
+ )
+ (get_local $13)
)
- (get_local $13)
)
)
- )
- (i32.store offset=4
- (get_local $1)
- (i32.or
- (get_local $2)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(get_local $1)
- (get_local $2)
+ (i32.or
+ (get_local $2)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 1236)
- (i32.load
- (i32.const 1696)
+ (i32.store offset=4
+ (i32.add
+ (get_local $1)
+ (get_local $2)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 1236)
+ (i32.load
+ (i32.const 1696)
+ )
)
)
)
)
- )
- (if
- (i32.gt_u
- (tee_local $11
- (i32.load
- (i32.const 1220)
+ (if
+ (i32.gt_u
+ (tee_local $11
+ (i32.load
+ (i32.const 1220)
+ )
)
+ (get_local $5)
)
- (get_local $5)
- )
- (block
- (i32.store
- (i32.const 1220)
- (tee_local $31
- (i32.sub
- (get_local $11)
- (get_local $5)
+ (block
+ (i32.store
+ (i32.const 1220)
+ (tee_local $31
+ (i32.sub
+ (get_local $11)
+ (get_local $5)
+ )
)
)
- )
- (i32.store
- (i32.const 1232)
- (tee_local $7
- (i32.add
- (tee_local $11
- (i32.load
- (i32.const 1232)
+ (i32.store
+ (i32.const 1232)
+ (tee_local $7
+ (i32.add
+ (tee_local $11
+ (i32.load
+ (i32.const 1232)
+ )
)
+ (get_local $5)
)
- (get_local $5)
)
)
- )
- (i32.store offset=4
- (get_local $7)
- (i32.or
- (get_local $31)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (get_local $11)
- (i32.or
- (get_local $5)
- (i32.const 3)
+ (i32.store offset=4
+ (get_local $7)
+ (i32.or
+ (get_local $31)
+ (i32.const 1)
+ )
)
- )
- (set_global $r
- (get_local $25)
- )
- (return
- (i32.add
+ (i32.store offset=4
(get_local $11)
- (i32.const 8)
+ (i32.or
+ (get_local $5)
+ (i32.const 3)
+ )
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.add
+ (get_local $11)
+ (i32.const 8)
+ )
)
)
)
)
)
- )
- (i32.store
- (call $Qa)
- (i32.const 12)
+ (i32.store
+ (call $Qa)
+ (i32.const 12)
+ )
+ (set_global $r
+ (get_local $25)
+ )
+ (return
+ (i32.const 0)
+ )
)
(set_global $r
(get_local $25)
)
- (i32.const 0)
+ (i32.add
+ (get_local $15)
+ (i32.const 8)
+ )
)
(func $fb (param $0 i32)
(local $1 i32)
diff --git a/test/passes/remove-unused-names_code-folding.txt b/test/passes/remove-unused-names_code-folding.txt
new file mode 100644
index 000000000..0ad10704f
--- /dev/null
+++ b/test/passes/remove-unused-names_code-folding.txt
@@ -0,0 +1,1681 @@
+(module
+ (type $0 (func))
+ (type $1 (func (param i32 i32) (result i32)))
+ (type $2 (func (result i32)))
+ (memory $0 0)
+ (func $ifs (type $0)
+ (if
+ (i32.const 0)
+ (nop)
+ )
+ (block
+ (drop
+ (i32.const 0)
+ )
+ (nop)
+ )
+ (if
+ (i32.const 0)
+ (nop)
+ (unreachable)
+ )
+ (drop
+ (block (result i32)
+ (drop
+ (i32.const 0)
+ )
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (drop
+ (if (result i32)
+ (i32.const 0)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ (i32.add
+ (i32.const 1)
+ (i32.const 333333333)
+ )
+ )
+ )
+ )
+ (func $ifs-blocks (type $0)
+ (block
+ (drop
+ (i32.const 0)
+ )
+ (block
+ (nop)
+ )
+ )
+ (block
+ (if
+ (i32.const 0)
+ (unreachable)
+ (block
+ )
+ )
+ (nop)
+ )
+ (block
+ (if
+ (i32.const 0)
+ (block
+ )
+ (unreachable)
+ )
+ (nop)
+ )
+ (if
+ (i32.const 0)
+ (block
+ (nop)
+ (unreachable)
+ )
+ (nop)
+ )
+ (if
+ (i32.const 0)
+ (nop)
+ (block
+ (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $ifs-blocks-big (type $0)
+ (block
+ (drop
+ (i32.const 0)
+ )
+ (block
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ (block
+ (if
+ (i32.const 0)
+ (unreachable)
+ (block
+ )
+ )
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (block
+ (if
+ (i32.const 0)
+ (block
+ )
+ (unreachable)
+ )
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ (unreachable)
+ )
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (if
+ (i32.const 0)
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ (block
+ (drop
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ (unreachable)
+ )
+ )
+ )
+ (func $ifs-blocks-long (type $0)
+ (block
+ (if
+ (i32.const 1)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ )
+ (drop
+ (i32.const 999)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (nop)
+ (unreachable)
+ )
+ (drop
+ (block (result i32)
+ (if
+ (i32.const 2)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ )
+ (drop
+ (i32.const 999)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (nop)
+ (unreachable)
+ (i32.const 2)
+ )
+ )
+ (drop
+ (block (result i32)
+ (if
+ (i32.const 3)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ )
+ (drop
+ (i32.const 999)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (nop)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $if-worth-it-i-dunno (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 0)
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ (br $folding-inner0)
+ )
+ (block
+ (drop
+ (i32.const 999)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (br $folding-inner0)
+ )
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ )
+ (block
+ (drop
+ (i32.const 999)
+ )
+ (drop
+ (i32.const 1)
+ )
+ )
+ )
+ (unreachable)
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.const 0)
+ (block
+ )
+ (block
+ (drop
+ (i32.const 999)
+ )
+ (drop
+ (i32.const 1)
+ )
+ )
+ )
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const -1234)
+ )
+ (drop
+ (i32.const -1000)
+ )
+ )
+ (block
+ )
+ )
+ (br $folding-inner0)
+ )
+ )
+ (block
+ (block
+ (if
+ (i32.const 9999)
+ (block
+ (drop
+ (i32.const -51234)
+ )
+ (drop
+ (i32.const -51000)
+ )
+ )
+ (block
+ (drop
+ (i32.const 5999)
+ )
+ (drop
+ (i32.const 51)
+ )
+ )
+ )
+ (br $folding-inner0)
+ )
+ )
+ (drop
+ (block (result i32)
+ (block (result i32)
+ (if
+ (i32.const 9999)
+ (block
+ (drop
+ (i32.const -51234)
+ )
+ (drop
+ (i32.const -51000)
+ )
+ )
+ (block
+ (drop
+ (i32.const 5999)
+ )
+ (drop
+ (i32.const 51)
+ )
+ )
+ )
+ (unreachable)
+ (i32.const 10)
+ )
+ )
+ )
+ (block
+ (drop
+ (if (result i32)
+ (i32.const 9999)
+ (block (result i32)
+ (drop
+ (i32.const -51234)
+ )
+ (drop
+ (i32.const -51000)
+ )
+ (unreachable)
+ (i32.const 10)
+ )
+ (block (result i32)
+ (drop
+ (i32.const 5999)
+ )
+ (drop
+ (i32.const 51)
+ )
+ (unreachable)
+ (i32.const 10)
+ )
+ )
+ )
+ )
+ )
+ )
+ (unreachable)
+ (unreachable)
+ )
+ (func $no-grandparent (type $0)
+ (if
+ (i32.const 9999)
+ (block
+ (drop
+ (i32.const -51234)
+ )
+ (drop
+ (i32.const -51000)
+ )
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop
+ (i32.const 5999)
+ )
+ (drop
+ (i32.const 51)
+ )
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ (func $yes-grandparent (type $0)
+ (block
+ (if
+ (i32.const 9999)
+ (block
+ (drop
+ (i32.const -51234)
+ )
+ (drop
+ (i32.const -51000)
+ )
+ )
+ (block
+ (drop
+ (i32.const 5999)
+ )
+ (drop
+ (i32.const 51)
+ )
+ )
+ )
+ (unreachable)
+ (unreachable)
+ )
+ )
+ (func $ifs-named-block (type $1) (param $x i32) (param $y i32) (result i32)
+ (block $out
+ (block $out2
+ (block
+ (drop
+ (get_local $x)
+ )
+ (block
+ (br_if $out
+ (get_local $y)
+ )
+ (nop)
+ )
+ )
+ (block
+ (if
+ (get_local $x)
+ (br_if $out
+ (get_local $y)
+ )
+ (br_if $out2
+ (get_local $y)
+ )
+ )
+ (nop)
+ )
+ (if
+ (i32.const 1234)
+ (if
+ (get_local $x)
+ (block
+ (nop)
+ (br_if $out
+ (get_local $y)
+ )
+ (nop)
+ )
+ (block
+ (nop)
+ (br_if $out2
+ (get_local $y)
+ )
+ (nop)
+ )
+ )
+ )
+ (if
+ (get_local $x)
+ (block $left
+ (br_if $left
+ (get_local $y)
+ )
+ (nop)
+ )
+ (block
+ (br_if $out
+ (get_local $y)
+ )
+ (nop)
+ )
+ )
+ (if
+ (get_local $x)
+ (block
+ (br_if $out
+ (get_local $y)
+ )
+ (nop)
+ )
+ (block $right
+ (br_if $right
+ (get_local $y)
+ )
+ (nop)
+ )
+ )
+ )
+ (return
+ (i32.const 10)
+ )
+ )
+ (return
+ (i32.const 20)
+ )
+ )
+ (func $block (type $0)
+ (block $x
+ (if
+ (i32.const 0)
+ (br $x)
+ )
+ (if
+ (i32.const 0)
+ (br $x)
+ )
+ (br $x)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (func $block2 (type $0)
+ (block $x
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 333333)
+ )
+ (br $x)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $x)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $x)
+ )
+ )
+ (func $block3 (type $0)
+ (block $x
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1000)
+ )
+ (br $x)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 2000)
+ )
+ (drop
+ (i32.const 3000)
+ )
+ (br $x)
+ )
+ )
+ (drop
+ (i32.const 4000)
+ )
+ (drop
+ (i32.const 5000)
+ )
+ (drop
+ (i32.const 6000)
+ )
+ (br $x)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (func $mixture (type $0)
+ (block $out
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (block
+ (drop
+ (i32.const 2)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (br $out)
+ )
+ )
+ )
+ (block $out2
+ (block
+ (if
+ (i32.const 1)
+ (drop
+ (i32.const 3)
+ )
+ (block
+ (drop
+ (i32.const 4)
+ )
+ (drop
+ (i32.const 5)
+ )
+ )
+ )
+ (drop
+ (i32.const 2)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (br $out2)
+ )
+ )
+ (block
+ (block $out3
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (block
+ (br $out3)
+ )
+ )
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (block
+ (br $out3)
+ )
+ )
+ (br $out3)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ )
+ )
+ (func $block-corners (type $0)
+ (block
+ (block $x
+ (if
+ (i32.const 0)
+ (br $x)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (drop
+ (block $y (result i32)
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $y
+ (i32.const 3)
+ )
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $y
+ (i32.const 3)
+ )
+ )
+ )
+ (drop
+ (block $z (result i32)
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $z
+ (i32.const 2)
+ )
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (i32.const 3)
+ )
+ )
+ (block $w
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br_if $w
+ (i32.const 3)
+ )
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (block $x1
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $x1)
+ (nop)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (block $side
+ (block $x2
+ (br_table $x2 $side
+ (i32.const 0)
+ )
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $x2)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (block $x3
+ (br_table $side $x3
+ (i32.const 0)
+ )
+ (if
+ (i32.const 0)
+ (block
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (br $x3)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ (func $terminating (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ )
+ (return)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-unreachable (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (unreachable)
+ )
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-value (type $2) (result i32)
+ (block $folding-inner0
+ (return
+ (block (result i32)
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-just-2 (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (block
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (drop
+ (i32.const 10)
+ )
+ (unreachable)
+ )
+ )
+ )
+ (return)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-shortness (type $0)
+ (block $folding-inner1
+ (block
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner1)
+ )
+ (if
+ (i32.const 3)
+ (block
+ (drop
+ (i32.const 10)
+ )
+ (br $folding-inner0)
+ )
+ )
+ )
+ (return)
+ )
+ (nop)
+ (br $folding-inner1)
+ )
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-multiple-separate (type $0)
+ (block $folding-inner1
+ (block
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 1)
+ (br $folding-inner1)
+ )
+ (if
+ (i32.const 1)
+ (br $folding-inner1)
+ )
+ )
+ (return)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (drop
+ (i32.const 1)
+ )
+ (unreachable)
+ )
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (drop
+ (i32.const 2)
+ )
+ (unreachable)
+ )
+ (func $terminating-just-worth-it (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ )
+ (return)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ (func $terminating-not-worth-it (type $0)
+ (if
+ (i32.const 1)
+ (block
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ )
+ (if
+ (i32.const 2)
+ (block
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ )
+ (if
+ (i32.const 3)
+ (block
+ (nop)
+ (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-return (type $0)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ )
+ (return)
+ )
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (nop)
+ (return)
+ )
+ (func $terminating-return-value (type $2) (result i32)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (block
+ (nop)
+ (return
+ (i32.add
+ (i32.const 111111111)
+ (i32.const 2222222)
+ )
+ )
+ )
+ )
+ (return
+ (i32.const 1234)
+ )
+ )
+ )
+ (nop)
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $terminating-fallthrough-value (type $2) (result i32)
+ (block $folding-inner0
+ (return
+ (block (result i32)
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (block
+ (nop)
+ (return
+ (i32.add
+ (i32.const 111111111)
+ (i32.const 2222222)
+ )
+ )
+ )
+ )
+ (i32.const 1234)
+ )
+ )
+ )
+ (nop)
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $big-return (type $2) (result i32)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 4)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 5)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 6)
+ (br $folding-inner0)
+ )
+ (unreachable)
+ )
+ )
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $return-mix (type $2) (result i32)
+ (block $folding-inner0
+ (block
+ (if
+ (i32.const 1)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 2)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 4)
+ (br $folding-inner0)
+ )
+ (if
+ (i32.const 3)
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 234567)
+ )
+ )
+ )
+ (br $folding-inner0)
+ )
+ )
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $just-unreachable (type $0)
+ (unreachable)
+ )
+ (func $just-return (type $2) (result i32)
+ (return
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ (func $drop-if-with-value-but-unreachable (type $0)
+ (if
+ (i32.const 0)
+ (nop)
+ )
+ (block
+ (drop
+ (i32.const 0)
+ )
+ (block
+ (nop)
+ )
+ )
+ (if
+ (i32.const 0)
+ (nop)
+ (unreachable)
+ )
+ (nop)
+ (drop
+ (block (result i32)
+ (drop
+ (unreachable)
+ )
+ (block (result i32)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ (drop
+ (if (result i32)
+ (i32.const 0)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ (i32.add
+ (i32.const 1)
+ (i32.const 333333333)
+ )
+ )
+ )
+ )
+ (func $nested-control-flow (type $0)
+ (block $out
+ (block
+ (block $x
+ (if
+ (i32.const 0)
+ (br $x)
+ )
+ (if
+ (i32.const 0)
+ (br $x)
+ )
+ (br $x)
+ )
+ (if
+ (i32.const 1)
+ (br $out)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (drop
+ (i32.const 3)
+ )
+ )
+ )
+ (func $nested-control-flow-dangerous (type $0)
+ (block $folding-inner0
+ (block $out
+ (block
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.const 1)
+ (br $out)
+ )
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.const 1)
+ (br $out)
+ )
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.const 1)
+ (br $out)
+ )
+ (br $folding-inner0)
+ )
+ (drop
+ (i32.const 3)
+ )
+ )
+ (return)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (return)
+ )
+ (func $nested-control-flow-dangerous-but-ok (type $0)
+ (block $folding-inner0
+ (block
+ (block $middle
+ (block
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ (br $folding-inner0)
+ )
+ )
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ (br $folding-inner0)
+ )
+ )
+ (drop
+ (i32.const 3)
+ )
+ )
+ (return)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (return)
+ )
+ (func $nested-control-flow-dangerous-but-ok-b (type $0)
+ (block $out
+ (block $middle
+ (block
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ (br $out)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ (br $out)
+ )
+ )
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $middle)
+ )
+ )
+ )
+ (unreachable)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (drop
+ (i32.const 3)
+ )
+ (drop
+ (i32.const 4)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ (drop
+ (i32.const 3)
+ )
+ (drop
+ (i32.const 4)
+ )
+ )
+ (func $nested-control-flow-dangerous-but-ok-c (type $0)
+ (block $x
+ (block
+ (block $out
+ (block
+ (if
+ (i32.const 0)
+ (br $out)
+ )
+ (if
+ (i32.const 0)
+ (br $out)
+ )
+ (br $out)
+ )
+ (unreachable)
+ )
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $x)
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (unreachable)
+ )
+ (drop
+ (i32.const 5)
+ )
+ )
+ (func $nested-control-flow-dangerous-but-ok-d (type $0)
+ (block
+ (block $out
+ (block
+ (if
+ (i32.const 0)
+ (br $out)
+ )
+ (if
+ (i32.const 0)
+ (br $out)
+ )
+ (br $out)
+ )
+ )
+ (block $x
+ (if
+ (i32.add
+ (i32.const 0)
+ (i32.const 1)
+ )
+ (br $x)
+ )
+ )
+ (drop
+ (i32.const 1)
+ )
+ (drop
+ (i32.const 2)
+ )
+ )
+ (drop
+ (i32.const 3)
+ )
+ )
+)
diff --git a/test/passes/remove-unused-names_code-folding.wast b/test/passes/remove-unused-names_code-folding.wast
new file mode 100644
index 000000000..35d95ba90
--- /dev/null
+++ b/test/passes/remove-unused-names_code-folding.wast
@@ -0,0 +1,1176 @@
+(module
+ (func $ifs
+ (if (i32.const 0) (nop))
+ (if (i32.const 0) (nop) (nop))
+ (if (i32.const 0) (nop) (unreachable))
+ (drop
+ (if (result i32) (i32.const 0)
+ (i32.add (i32.const 1) (i32.const 2))
+ (i32.add (i32.const 1) (i32.const 2))
+ )
+ )
+ (drop
+ (if (result i32) (i32.const 0)
+ (i32.add (i32.const 1) (i32.const 2))
+ (i32.add (i32.const 1) (i32.const 333333333))
+ )
+ )
+ )
+ (func $ifs-blocks
+ (if (i32.const 0)
+ (block
+ (nop)
+ )
+ (block
+ (nop)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (unreachable)
+ (nop)
+ )
+ (block
+ (nop)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (nop)
+ )
+ (block
+ (unreachable)
+ (nop)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (nop)
+ (unreachable)
+ )
+ (block
+ (nop)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (nop)
+ )
+ (block
+ (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $ifs-blocks-big
+ (if (i32.const 0)
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (unreachable)
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ (block
+ (unreachable)
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ (unreachable)
+ )
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ )
+ (block
+ (drop (i32.add (i32.const 1) (i32.const 2)))
+ (unreachable)
+ )
+ )
+ )
+ (func $ifs-blocks-long
+ (if (i32.const 1)
+ (block
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (drop (i32.const 1))
+ (nop)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (nop)
+ (unreachable)
+ )
+ )
+ (drop
+ (if (result i32) (i32.const 2)
+ (block (result i32)
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (drop (i32.const 1))
+ (nop)
+ (unreachable)
+ (i32.const 2)
+ )
+ (block (result i32)
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (nop)
+ (unreachable)
+ (i32.const 2)
+ )
+ )
+ )
+ (drop
+ (if (result i32) (i32.const 3)
+ (block (result i32)
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (drop (i32.const 1))
+ (nop)
+ (i32.const 2)
+ )
+ (block (result i32)
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (nop)
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ (func $if-worth-it-i-dunno
+ ;; just 2, so not worth it
+ (if (i32.const 0) ;; (put them in ifs, so no block outside which would make us more confident in creating a block in hopes it would vanish)
+ (if (i32.const 0)
+ (block
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ ;; 3, so why not
+ (if (i32.const 0) ;; (put them in ifs, so no block outside which would make us more confident in creating a block in hopes it would vanish)
+ (if (i32.const 0)
+ (block
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (unreachable)
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (unreachable)
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ ;; just 2, but we'll empty out a block
+ (if (i32.const 0) ;; (put them in ifs, so no block outside which would make us more confident in creating a block in hopes it would vanish)
+ (if (i32.const 0)
+ (block
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 999))
+ (drop (i32.const 1))
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ ;; just 2, but we'll empty out a block
+ (if (i32.const 0) ;; (put them in ifs, so no block outside which would make us more confident in creating a block in hopes it would vanish)
+ (if (i32.const 0)
+ (block
+ (drop (i32.const -1234))
+ (drop (i32.const -1000))
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ ;; just two, but on a block, so we hope to merge, and can optimize here
+ (block $a-holding-block
+ (if (i32.const 9999)
+ (block
+ (drop (i32.const -51234))
+ (drop (i32.const -51000))
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 5999))
+ (drop (i32.const 51))
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ ;; with value
+ (drop
+ (block $b-holding-block (result i32)
+ (if (result i32) (i32.const 9999)
+ (block (result i32)
+ (drop (i32.const -51234))
+ (drop (i32.const -51000))
+ (unreachable)
+ (i32.const 10)
+ )
+ (block (result i32)
+ (drop (i32.const 5999))
+ (drop (i32.const 51))
+ (unreachable)
+ (i32.const 10)
+ )
+ )
+ )
+ )
+ ;; oops, something in between
+ (block $c-holding-block
+ (drop
+ (if (result i32) (i32.const 9999)
+ (block (result i32)
+ (drop (i32.const -51234))
+ (drop (i32.const -51000))
+ (unreachable)
+ (i32.const 10)
+ )
+ (block (result i32)
+ (drop (i32.const 5999))
+ (drop (i32.const 51))
+ (unreachable)
+ (i32.const 10)
+ )
+ )
+ )
+ )
+ )
+ (func $no-grandparent
+ ;; if we had a parent block, we might optimize this
+ (if (i32.const 9999)
+ (block
+ (drop (i32.const -51234))
+ (drop (i32.const -51000))
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 5999))
+ (drop (i32.const 51))
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ (func $yes-grandparent
+ (block
+ (if (i32.const 9999)
+ (block
+ (drop (i32.const -51234))
+ (drop (i32.const -51000))
+ (unreachable)
+ (unreachable)
+ )
+ (block
+ (drop (i32.const 5999))
+ (drop (i32.const 51))
+ (unreachable)
+ (unreachable)
+ )
+ )
+ )
+ )
+ (func $ifs-named-block (param $x i32) (param $y i32) (result i32)
+ (block $out
+ (block $out2
+ (if (get_local $x)
+ (block
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ (block
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ )
+ (if (get_local $x)
+ (block
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ (block
+ (br_if $out2 (get_local $y i32))
+ (nop)
+ )
+ )
+ (if (i32.const 1234)
+ (if (get_local $x)
+ (block
+ (nop)
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ (block
+ (nop)
+ (br_if $out2 (get_local $y i32))
+ (nop)
+ )
+ )
+ )
+ (if (get_local $x)
+ (block $left
+ (br_if $left (get_local $y i32))
+ (nop)
+ )
+ (block
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ )
+ (if (get_local $x)
+ (block
+ (br_if $out (get_local $y i32))
+ (nop)
+ )
+ (block $right
+ (br_if $right (get_local $y i32))
+ (nop)
+ )
+ )
+ )
+ (return (i32.const 10))
+ )
+ (return (i32.const 20))
+ )
+ (func $block
+ (block $x
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (func $block2
+ (block $x
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 333333))
+ (br $x)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (func $block3
+ (block $x
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1000))
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 2000))
+ (drop (i32.const 3000))
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (drop (i32.const 4000))
+ (drop (i32.const 5000))
+ (drop (i32.const 6000))
+ ;; no fallthrough, another thing to merge
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (func $mixture
+ (block $out ;; then we reach the block, and the tail infos are stale, should ignore
+ (if (i32.const 1) ;; then we optimize the if, pushing those brs outside!
+ (block
+ (drop (i32.const 2)) ;; first we note the block tails for $out
+ (nop) (nop) (nop) (nop) (nop) (nop) ;; totally worth it
+ (br $out)
+ )
+ (block
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out)
+ )
+ )
+ )
+ (block $out2
+ (if (i32.const 1)
+ (block
+ (drop (i32.const 3)) ;; leave something
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out2)
+ )
+ (block
+ (drop (i32.const 4)) ;; leave something
+ (drop (i32.const 5)) ;; leave something
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out2)
+ )
+ )
+ )
+ ;; now a case where do **do** want to fold for the block (which we can only do in a later pass)
+ (block $out3
+ (if (i32.const 1)
+ (block
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out3)
+ )
+ (block
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out3)
+ )
+ )
+ (if (i32.const 1)
+ (block
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out3)
+ )
+ (block
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out3)
+ )
+ )
+ (drop (i32.const 2))
+ (nop) (nop) (nop) (nop) (nop) (nop)
+ (br $out3)
+ )
+ )
+ (func $block-corners
+ ;; these should be merged
+ (block $x
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ )
+ ;; these should not
+ ;; values
+ (drop
+ (block $y (result i32)
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $y (i32.const 3))
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $y (i32.const 3))
+ )
+ )
+ (drop
+ (block $z (result i32)
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $z (i32.const 2))
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (i32.const 3)
+ )
+ )
+ ;; condition
+ (block $w
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br_if $w (i32.const 3))
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ )
+ ;; not at the end
+ (block $x1
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x1)
+ (nop)
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ )
+ ;; switches
+ (block $side
+ (block $x2
+ (br_table $x2 $side (i32.const 0))
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x2)
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ )
+ (block $x3
+ (br_table $side $x3 (i32.const 0))
+ (if (i32.const 0)
+ (block
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x3)
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ )
+ )
+ )
+ (func $terminating
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-unreachable
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (unreachable)
+ )
+ (func $terminating-value (result i32)
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (i32.const 4)
+ )
+ (func $terminating-just-2
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (drop (i32.const 10))
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-shortness
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) ;; shorter. we do the two long ones greedily, then the merged one and this can also be opted
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (drop (i32.const 10))
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-multiple-separate
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (drop (i32.const 1))
+ (unreachable)
+ )
+ )
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (drop (i32.const 1))
+ (unreachable)
+ )
+ )
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (drop (i32.const 2))
+ (unreachable)
+ )
+ )
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (drop (i32.const 2))
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-just-worth-it
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-not-worth-it
+ (if (i32.const 1)
+ (block
+ (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop)
+ (unreachable)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop)
+ (unreachable)
+ )
+ )
+ )
+ (func $terminating-return
+ (if (i32.const 1)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (return)
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (return)
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop) (nop)
+ (return)
+ )
+ )
+ )
+ (func $terminating-return-value (result i32)
+ (if (i32.const 1)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop)
+ (return (i32.add (i32.const 111111111) (i32.const 2222222)))
+ )
+ )
+ (return (i32.const 1234))
+ )
+ (func $terminating-fallthrough-value (result i32)
+ (if (i32.const 1)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 2)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop)
+ (return (i32.add (i32.const 1) (i32.const 2)))
+ )
+ )
+ (if (i32.const 3)
+ (block
+ (nop)
+ (return (i32.add (i32.const 111111111) (i32.const 2222222)))
+ )
+ )
+ (i32.const 1234)
+ )
+ (func $big-return (result i32)
+ (if (i32.const 1) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 2) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 3) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 4) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 5) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 6) (return (i32.add (i32.const 1) (i32.const 2))))
+ (unreachable)
+ )
+ (func $return-mix (result i32)
+ (if (i32.const 1) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 2) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 3) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 4) (return (i32.add (i32.const 1) (i32.const 2))))
+ (if (i32.const 3) (return (i32.add (i32.const 1) (i32.const 234567))))
+ (return (i32.add (i32.const 1) (i32.const 2))) ;; on a block, and the toplevel in fact
+ )
+ (func $just-unreachable
+ (unreachable)
+ )
+ (func $just-return (result i32)
+ (return (i32.add (i32.const 1) (i32.const 2))) ;; on a block, and the toplevel in fact
+ )
+ (func $drop-if-with-value-but-unreachable
+ (block $label$0
+ (if
+ (i32.const 0)
+ (block $label$1
+ (nop)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block $label$2
+ (nop)
+ )
+ (block $label$3
+ (nop)
+ )
+ )
+ (if
+ (i32.const 0)
+ (block $label$4
+ (nop)
+ )
+ (block $label$5
+ (unreachable)
+ )
+ )
+ (nop)
+ (drop
+ (if (result i32) ;; we replace this if, must replace with same type!
+ (unreachable)
+ (block $label$6 (result i32)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ (block $label$7 (result i32)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ (drop
+ (if (result i32)
+ (i32.const 0)
+ (block $label$8 (result i32)
+ (i32.add
+ (i32.const 1)
+ (i32.const 2)
+ )
+ )
+ (block $label$9 (result i32)
+ (i32.add
+ (i32.const 1)
+ (i32.const 333333333)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $nested-control-flow
+ (block $out
+ (block $x
+ (if (i32.const 0)
+ (block
+ (if (i32.const 1)
+ (br $out)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (if (i32.const 1)
+ (br $out)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (if (i32.const 1)
+ (br $out)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $x)
+ )
+ (drop (i32.const 3))
+ )
+ )
+ (func $nested-control-flow-dangerous
+ (block $out
+ (block $x
+ (if (i32.const 0)
+ (block
+ (if (i32.const 1)
+ (br $out) ;; this br cannot be moved out of the $out block!
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (if (i32.const 1)
+ (br $out)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (if (i32.const 1)
+ (br $out)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ (drop (i32.const 3))
+ )
+ )
+ (func $nested-control-flow-dangerous-but-ok
+ (block $out
+ (block $middle
+ (block $x
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (return)
+ )
+ )
+ (drop (i32.const 3))
+ )
+ )
+ (func $nested-control-flow-dangerous-but-ok-b
+ (block $out
+ (block $middle
+ (block $x
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle) ;; this is dangerous - we branch to middle with is inside out, so we can't move this out of out
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (drop (i32.const 3))
+ (drop (i32.const 4))
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (drop (i32.const 3))
+ (drop (i32.const 4))
+ (br $out)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (drop (i32.const 3))
+ (drop (i32.const 4))
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (drop (i32.const 3))
+ (drop (i32.const 4))
+ (br $out)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $middle)
+ )
+ )
+ )
+ (unreachable) ;; no fallthrough
+ )
+ )
+ (func $nested-control-flow-dangerous-but-ok-c
+ (block $x
+ (block $out
+ (block $middle
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x) ;; this is ok - we branch to x which is outside of out
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x)
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ (unreachable) ;; no fallthrough
+ )
+ (unreachable) ;; no fallthrough
+ )
+ (drop (i32.const 5))
+ )
+ (func $nested-control-flow-dangerous-but-ok-d
+ (block $out
+ (block $middle
+ (if (i32.const 0)
+ (block
+ (block $x
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x) ;; this is ok - we branch to x which is nested in us
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ )
+ (if (i32.const 0)
+ (block
+ (block $x
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x) ;; this is ok - we branch to x which is nested in us
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ )
+ ;; no fallthrough, another thing to merge
+ (block $x
+ (if (i32.add (i32.const 0) (i32.const 1))
+ (br $x) ;; this is ok - we branch to x which is nested in us
+ )
+ )
+ (drop (i32.const 1))
+ (drop (i32.const 2))
+ (br $out)
+ )
+ )
+ (drop (i32.const 3))
+ )
+)
diff --git a/test/wasm-only.fromasm b/test/wasm-only.fromasm
index f12226b1d..6ac8c0ef1 100644
--- a/test/wasm-only.fromasm
+++ b/test/wasm-only.fromasm
@@ -545,7 +545,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -555,12 +555,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -603,20 +597,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u
diff --git a/test/wasm-only.fromasm.clamp b/test/wasm-only.fromasm.clamp
index f12226b1d..6ac8c0ef1 100644
--- a/test/wasm-only.fromasm.clamp
+++ b/test/wasm-only.fromasm.clamp
@@ -545,7 +545,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -555,12 +555,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -603,20 +597,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u
diff --git a/test/wasm-only.fromasm.imprecise b/test/wasm-only.fromasm.imprecise
index e05da9799..6d013e11a 100644
--- a/test/wasm-only.fromasm.imprecise
+++ b/test/wasm-only.fromasm.imprecise
@@ -400,7 +400,7 @@
(get_local $0)
)
(loop $while-in
- (if
+ (br_if $__rjti$2
(i32.eq
(i32.load8_u
(get_local $2)
@@ -410,12 +410,6 @@
(i32.const 255)
)
)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
)
(br_if $while-in
(i32.and
@@ -458,20 +452,17 @@
)
)
)
- (if
+ (br_if $__rjti$2
(get_local $0)
- (block
- (set_local $0
- (get_local $3)
- )
- (br $__rjti$2)
- )
- (set_local $0
- (i32.const 0)
- )
+ )
+ (set_local $0
+ (i32.const 0)
)
(br $label$break$L8)
)
+ (set_local $0
+ (get_local $3)
+ )
(if
(i32.ne
(i32.load8_u