summaryrefslogtreecommitdiff
path: root/test/lit/passes/inlining-optimizing_optimize-level=3.wast
diff options
context:
space:
mode:
Diffstat (limited to 'test/lit/passes/inlining-optimizing_optimize-level=3.wast')
-rw-r--r--test/lit/passes/inlining-optimizing_optimize-level=3.wast30432
1 files changed, 16139 insertions, 14293 deletions
diff --git a/test/lit/passes/inlining-optimizing_optimize-level=3.wast b/test/lit/passes/inlining-optimizing_optimize-level=3.wast
index a0e320bd6..fdfbf7b35 100644
--- a/test/lit/passes/inlining-optimizing_optimize-level=3.wast
+++ b/test/lit/passes/inlining-optimizing_optimize-level=3.wast
@@ -175,7 +175,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -204,7 +206,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.get $1)
)
@@ -245,7 +249,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (global.get $__THREW__)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (global.set $__THREW__
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
@@ -260,12 +264,14 @@
(i32.eqz
(global.get $__THREW__)
)
- (block
- (global.set $__THREW__
- (local.get $0)
- )
- (global.set $threwValue
- (local.get $1)
+ (then
+ (block
+ (global.set $__THREW__
+ (local.get $0)
+ )
+ (global.set $threwValue
+ (local.get $1)
+ )
)
)
)
@@ -315,7 +321,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (global.get $STACKTOP)
@@ -331,7 +339,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $6)
@@ -356,7 +366,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.add
@@ -418,8 +430,10 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (i32.load offset=76
;; CHECK-NEXT: (local.get $0)
@@ -437,11 +451,13 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const -33)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const -33)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -454,16 +470,18 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $_printf_core
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 672)
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $_printf_core
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 672)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $10
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.tee $9
@@ -523,7 +541,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
;; CHECK-NEXT: (local.get $0)
@@ -612,7 +630,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(drop
(call $_printf
@@ -668,7 +688,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (f64.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $0
;; CHECK-NEXT: (call $_frexp
;; CHECK-NEXT: (f64.mul
@@ -685,7 +705,9 @@
;; CHECK-NEXT: (i32.const -64)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -765,24 +787,28 @@
(local.get $0)
(f64.const 0)
)
- (block (result i32)
- (local.set $0
- (call $_frexp
- (f64.mul
- (local.get $0)
- (f64.const 18446744073709551615)
+ (then
+ (block (result i32)
+ (local.set $0
+ (call $_frexp
+ (f64.mul
+ (local.get $0)
+ (f64.const 18446744073709551615)
+ )
+ (local.get $1)
)
- (local.get $1)
)
- )
- (i32.add
- (i32.load
- (local.get $1)
+ (i32.add
+ (i32.load
+ (local.get $1)
+ )
+ (i32.const -64)
)
- (i32.const -64)
)
)
- (i32.const 0)
+ (else
+ (i32.const 0)
+ )
)
)
)
@@ -877,14 +903,18 @@
(i32.load8_s
(local.get $0)
)
- (block
+ (then
+ (block
+ (local.set $0
+ (local.get $2)
+ )
+ (br $while-in3)
+ )
+ )
+ (else
(local.set $0
(local.get $2)
)
- (br $while-in3)
- )
- (local.set $0
- (local.get $2)
)
)
)
@@ -905,10 +935,14 @@
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load offset=60
- ;; CHECK-NEXT: (call $_pthread_self)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.load offset=60
+ ;; CHECK-NEXT: (call $_pthread_self)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 60)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 60)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
(func $___errno_location (result i32)
@@ -916,10 +950,14 @@
(i32.load
(i32.const 16)
)
- (i32.load offset=60
- (call $_pthread_self)
+ (then
+ (i32.load offset=60
+ (call $_pthread_self)
+ )
+ )
+ (else
+ (i32.const 60)
)
- (i32.const 60)
)
)
;; CHECK: (func $___stdio_close (param $0 i32) (result i32)
@@ -939,7 +977,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.tee $2
@@ -979,7 +1019,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(i32.store
(local.tee $2
@@ -1020,7 +1062,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (local.get $4)
@@ -1044,7 +1088,7 @@
;; CHECK-NEXT: (i32.const 64)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (i32.load offset=60
@@ -1064,9 +1108,11 @@
;; CHECK-NEXT: (i32.const 54)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=75
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8 offset=75
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -1101,7 +1147,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.set $3
(local.get $4)
@@ -1125,29 +1173,33 @@
(i32.const 64)
)
)
- (block
- (i32.store
- (local.get $3)
- (i32.load offset=60
- (local.get $0)
+ (then
+ (block
+ (i32.store
+ (local.get $3)
+ (i32.load offset=60
+ (local.get $0)
+ )
)
- )
- (i32.store offset=4
- (local.get $3)
- (i32.const 21505)
- )
- (i32.store offset=8
- (local.get $3)
- (local.get $5)
- )
- (if
- (call $___syscall54
- (i32.const 54)
+ (i32.store offset=4
(local.get $3)
+ (i32.const 21505)
)
- (i32.store8 offset=75
- (local.get $0)
- (i32.const -1)
+ (i32.store offset=8
+ (local.get $3)
+ (local.get $5)
+ )
+ (if
+ (call $___syscall54
+ (i32.const 54)
+ (local.get $3)
+ )
+ (then
+ (i32.store8 offset=75
+ (local.get $0)
+ (i32.const -1)
+ )
+ )
)
)
)
@@ -1181,7 +1233,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.tee $3
@@ -1223,15 +1277,17 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -1257,7 +1313,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(i32.store
(local.tee $3
@@ -1299,15 +1357,19 @@
)
(i32.const 0)
)
- (block (result i32)
- (i32.store
- (local.get $0)
+ (then
+ (block (result i32)
+ (i32.store
+ (local.get $0)
+ (i32.const -1)
+ )
(i32.const -1)
)
- (i32.const -1)
)
- (i32.load
- (local.get $0)
+ (else
+ (i32.load
+ (local.get $0)
+ )
)
)
)
@@ -1320,29 +1382,33 @@
;; CHECK-NEXT: (local $1 i32)
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (block $do-once (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (i32.load offset=76
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (block $do-once (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (i32.load offset=76
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br $do-once
+ ;; CHECK-NEXT: (call $___fflush_unlocked
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once
+ ;; CHECK-NEXT: (local.tee $0
;; CHECK-NEXT: (call $___fflush_unlocked
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (call $___fflush_unlocked
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $0
;; CHECK-NEXT: (if (result i32)
;; CHECK-NEXT: (local.tee $0
@@ -1350,10 +1416,14 @@
;; CHECK-NEXT: (i32.const 12)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_fflush
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_fflush
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (call $___lock
@@ -1365,34 +1435,38 @@
;; CHECK-NEXT: (i32.const 40)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (i32.load offset=76
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (i32.load offset=20
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load offset=28
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (i32.load offset=76
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (call $___fflush_unlocked
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (i32.load offset=20
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.load offset=28
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (call $___fflush_unlocked
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load offset=56
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (br_if $while-in
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load offset=56
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -1411,121 +1485,145 @@
(block $do-once
(if
(local.get $0)
- (block
- (if
- (i32.le_s
- (i32.load offset=76
- (local.get $0)
+ (then
+ (block
+ (if
+ (i32.le_s
+ (i32.load offset=76
+ (local.get $0)
+ )
+ (i32.const -1)
+ )
+ (then
+ (block
+ (local.set $0
+ (call $___fflush_unlocked
+ (local.get $0)
+ )
+ )
+ (br $do-once)
+ )
)
- (i32.const -1)
)
- (block
- (local.set $0
- (call $___fflush_unlocked
+ (local.set $2
+ (i32.eqz
+ (call $___lockfile
(local.get $0)
)
)
- (br $do-once)
)
- )
- (local.set $2
- (i32.eqz
- (call $___lockfile
+ (local.set $1
+ (call $___fflush_unlocked
(local.get $0)
)
)
- )
- (local.set $1
- (call $___fflush_unlocked
- (local.get $0)
- )
- )
- (local.set $0
- (if (result i32)
- (local.get $2)
- (local.get $1)
- (block (result i32)
- (call $___unlockfile
- (local.get $0)
+ (local.set $0
+ (if (result i32)
+ (local.get $2)
+ (then
+ (local.get $1)
+ )
+ (else
+ (block (result i32)
+ (call $___unlockfile
+ (local.get $0)
+ )
+ (local.get $1)
+ )
)
- (local.get $1)
)
)
)
)
- (block
- (local.set $0
- (if (result i32)
- (i32.load
- (i32.const 12)
- )
- (call $_fflush
+ (else
+ (block
+ (local.set $0
+ (if (result i32)
(i32.load
(i32.const 12)
)
- )
- (i32.const 0)
- )
- )
- (call $___lock
- (i32.const 44)
- )
- (if
- (local.tee $1
- (i32.load
- (i32.const 40)
- )
- )
- (loop $while-in
- (local.set $2
- (if (result i32)
- (i32.gt_s
- (i32.load offset=76
- (local.get $1)
+ (then
+ (call $_fflush
+ (i32.load
+ (i32.const 12)
)
- (i32.const -1)
- )
- (call $___lockfile
- (local.get $1)
)
+ )
+ (else
(i32.const 0)
)
)
- (if
- (i32.gt_u
- (i32.load offset=20
- (local.get $1)
+ )
+ (call $___lock
+ (i32.const 44)
+ )
+ (if
+ (local.tee $1
+ (i32.load
+ (i32.const 40)
+ )
+ )
+ (then
+ (loop $while-in
+ (local.set $2
+ (if (result i32)
+ (i32.gt_s
+ (i32.load offset=76
+ (local.get $1)
+ )
+ (i32.const -1)
+ )
+ (then
+ (call $___lockfile
+ (local.get $1)
+ )
+ )
+ (else
+ (i32.const 0)
+ )
+ )
)
- (i32.load offset=28
- (local.get $1)
+ (if
+ (i32.gt_u
+ (i32.load offset=20
+ (local.get $1)
+ )
+ (i32.load offset=28
+ (local.get $1)
+ )
+ )
+ (then
+ (local.set $0
+ (i32.or
+ (call $___fflush_unlocked
+ (local.get $1)
+ )
+ (local.get $0)
+ )
+ )
+ )
)
- )
- (local.set $0
- (i32.or
- (call $___fflush_unlocked
- (local.get $1)
+ (if
+ (local.get $2)
+ (then
+ (call $___unlockfile
+ (local.get $1)
+ )
)
- (local.get $0)
)
- )
- )
- (if
- (local.get $2)
- (call $___unlockfile
- (local.get $1)
- )
- )
- (br_if $while-in
- (local.tee $1
- (i32.load offset=56
- (local.get $1)
+ (br_if $while-in
+ (local.tee $1
+ (i32.load offset=56
+ (local.get $1)
+ )
+ )
)
)
)
)
- )
- (call $___unlock
- (i32.const 44)
+ (call $___unlock
+ (i32.const 44)
+ )
)
)
)
@@ -1549,7 +1647,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(i32.store
(local.tee $3
@@ -1604,7 +1704,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $9
;; CHECK-NEXT: (i32.add
@@ -1689,7 +1791,7 @@
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (call $_pthread_cleanup_push
;; CHECK-NEXT: (i32.const 5)
;; CHECK-NEXT: (local.get $0)
@@ -1720,7 +1822,7 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: (i32.load
@@ -1767,7 +1869,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (local.tee $7
@@ -1802,13 +1904,13 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (i32.add
@@ -1825,8 +1927,10 @@
;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $3)
@@ -1908,11 +2012,15 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -1950,7 +2058,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.set $9
(i32.add
@@ -2035,57 +2145,61 @@
(i32.load
(i32.const 16)
)
- (block
- (call $_pthread_cleanup_push
- (i32.const 5)
- (local.get $0)
- )
- (i32.store
- (local.get $10)
- (i32.load
- (local.get $13)
+ (then
+ (block
+ (call $_pthread_cleanup_push
+ (i32.const 5)
+ (local.get $0)
)
- )
- (i32.store offset=4
- (local.get $10)
- (local.get $1)
- )
- (i32.store offset=8
- (local.get $10)
- (local.get $4)
- )
- (local.set $3
- (call $___syscall_ret
- (call $___syscall146
- (i32.const 146)
- (local.get $10)
+ (i32.store
+ (local.get $10)
+ (i32.load
+ (local.get $13)
)
)
- )
- (call $_pthread_cleanup_pop
- (i32.const 0)
+ (i32.store offset=4
+ (local.get $10)
+ (local.get $1)
+ )
+ (i32.store offset=8
+ (local.get $10)
+ (local.get $4)
+ )
+ (local.set $3
+ (call $___syscall_ret
+ (call $___syscall146
+ (i32.const 146)
+ (local.get $10)
+ )
+ )
+ )
+ (call $_pthread_cleanup_pop
+ (i32.const 0)
+ )
)
)
- (block
- (i32.store
- (local.get $9)
- (i32.load
- (local.get $13)
+ (else
+ (block
+ (i32.store
+ (local.get $9)
+ (i32.load
+ (local.get $13)
+ )
)
- )
- (i32.store offset=4
- (local.get $9)
- (local.get $1)
- )
- (i32.store offset=8
- (local.get $9)
- (local.get $4)
- )
- (local.set $3
- (call $___syscall_ret
- (call $___syscall146
- (i32.const 146)
- (local.get $9)
+ (i32.store offset=4
+ (local.get $9)
+ (local.get $1)
+ )
+ (i32.store offset=8
+ (local.get $9)
+ (local.get $4)
+ )
+ (local.set $3
+ (call $___syscall_ret
+ (call $___syscall146
+ (i32.const 146)
+ (local.get $9)
+ )
)
)
)
@@ -2113,69 +2227,77 @@
)
)
)
- (block (result i32)
- (i32.store
- (local.get $6)
- (local.tee $7
- (i32.load
- (local.get $14)
+ (then
+ (block (result i32)
+ (i32.store
+ (local.get $6)
+ (local.tee $7
+ (i32.load
+ (local.get $14)
+ )
)
)
- )
- (i32.store
- (local.get $11)
- (local.get $7)
- )
- (local.set $7
- (i32.load offset=12
- (local.get $1)
+ (i32.store
+ (local.get $11)
+ (local.get $7)
)
- )
- (local.set $1
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (local.set $7
+ (i32.load offset=12
+ (local.get $1)
+ )
)
- )
- (local.set $4
- (i32.add
- (local.get $4)
- (i32.const -1)
+ (local.set $1
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
+ (local.set $4
+ (i32.add
+ (local.get $4)
+ (i32.const -1)
+ )
+ )
+ (i32.sub
+ (local.get $3)
+ (local.get $5)
)
- )
- (i32.sub
- (local.get $3)
- (local.get $5)
)
)
- (block (result i32)
- (if
- (i32.eq
- (local.get $4)
- (i32.const 2)
- )
- (block
- (i32.store
- (local.get $6)
- (i32.add
- (i32.load
+ (else
+ (block (result i32)
+ (if
+ (i32.eq
+ (local.get $4)
+ (i32.const 2)
+ )
+ (then
+ (block
+ (i32.store
(local.get $6)
+ (i32.add
+ (i32.load
+ (local.get $6)
+ )
+ (local.get $3)
+ )
+ )
+ (local.set $7
+ (local.get $5)
+ )
+ (local.set $4
+ (i32.const 2)
)
- (local.get $3)
)
)
- (local.set $7
- (local.get $5)
- )
- (local.set $4
- (i32.const 2)
+ (else
+ (local.set $7
+ (local.get $5)
+ )
)
)
- (local.set $7
- (local.get $5)
- )
+ (local.get $3)
)
- (local.get $3)
)
)
)
@@ -2254,11 +2376,15 @@
(local.get $4)
(i32.const 2)
)
- (i32.const 0)
- (i32.sub
- (local.get $2)
- (i32.load offset=4
- (local.get $1)
+ (then
+ (i32.const 0)
+ )
+ (else
+ (i32.sub
+ (local.get $2)
+ (i32.load offset=4
+ (local.get $1)
+ )
)
)
)
@@ -2296,7 +2422,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.set $5
(i32.add
@@ -2361,198 +2489,216 @@
)
(i32.const 0)
)
- (i32.const -1)
- (block (result i32)
- (local.set $14
- (if (result i32)
- (i32.gt_s
- (i32.load offset=76
- (local.get $0)
+ (then
+ (i32.const -1)
+ )
+ (else
+ (block (result i32)
+ (local.set $14
+ (if (result i32)
+ (i32.gt_s
+ (i32.load offset=76
+ (local.get $0)
+ )
+ (i32.const -1)
)
- (i32.const -1)
- )
- (call $___lockfile
- (local.get $0)
- )
- (i32.const 0)
- )
- )
- (local.set $10
- (i32.load
- (local.get $0)
- )
- )
- (if
- (i32.lt_s
- (i32.load8_s offset=74
- (local.get $0)
- )
- (i32.const 1)
- )
- (i32.store
- (local.get $0)
- (i32.and
- (local.get $10)
- (i32.const -33)
- )
- )
- )
- (if
- (i32.load
- (local.tee $11
- (i32.add
- (local.get $0)
- (i32.const 48)
+ (then
+ (call $___lockfile
+ (local.get $0)
+ )
+ )
+ (else
+ (i32.const 0)
)
)
)
- (local.set $1
- (call $_printf_core
+ (local.set $10
+ (i32.load
(local.get $0)
- (local.get $1)
- (local.get $5)
- (local.get $7)
- (local.get $8)
)
)
- (block
- (local.set $13
- (i32.load
- (local.tee $12
- (i32.add
- (local.get $0)
- (i32.const 44)
- )
- )
+ (if
+ (i32.lt_s
+ (i32.load8_s offset=74
+ (local.get $0)
)
+ (i32.const 1)
)
- (i32.store
- (local.get $12)
- (local.get $6)
- )
- (i32.store
- (local.tee $9
- (i32.add
- (local.get $0)
- (i32.const 28)
+ (then
+ (i32.store
+ (local.get $0)
+ (i32.and
+ (local.get $10)
+ (i32.const -33)
)
)
- (local.get $6)
)
- (i32.store
- (local.tee $3
+ )
+ (if
+ (i32.load
+ (local.tee $11
(i32.add
(local.get $0)
- (i32.const 20)
+ (i32.const 48)
)
)
- (local.get $6)
)
- (i32.store
- (local.get $11)
- (i32.const 80)
- )
- (i32.store
- (local.tee $2
- (i32.add
+ (then
+ (local.set $1
+ (call $_printf_core
(local.get $0)
- (i32.const 16)
+ (local.get $1)
+ (local.get $5)
+ (local.get $7)
+ (local.get $8)
)
)
- (i32.add
- (local.get $6)
- (i32.const 80)
- )
)
- (local.set $1
- (call $_printf_core
- (local.get $0)
- (local.get $1)
- (local.get $5)
- (local.get $7)
- (local.get $8)
- )
- )
- (if
- (local.get $13)
+ (else
(block
- (drop
- (call_indirect (type $FUNCSIG$iiii)
- (local.get $0)
- (i32.const 0)
- (i32.const 0)
- (i32.add
- (i32.and
- (i32.load offset=36
- (local.get $0)
- )
- (i32.const 7)
+ (local.set $13
+ (i32.load
+ (local.tee $12
+ (i32.add
+ (local.get $0)
+ (i32.const 44)
)
- (i32.const 2)
)
)
)
- (local.set $1
- (select
- (local.get $1)
- (i32.const -1)
- (i32.load
- (local.get $3)
+ (i32.store
+ (local.get $12)
+ (local.get $6)
+ )
+ (i32.store
+ (local.tee $9
+ (i32.add
+ (local.get $0)
+ (i32.const 28)
)
)
+ (local.get $6)
)
(i32.store
- (local.get $12)
- (local.get $13)
+ (local.tee $3
+ (i32.add
+ (local.get $0)
+ (i32.const 20)
+ )
+ )
+ (local.get $6)
)
(i32.store
(local.get $11)
- (i32.const 0)
+ (i32.const 80)
)
(i32.store
- (local.get $2)
- (i32.const 0)
+ (local.tee $2
+ (i32.add
+ (local.get $0)
+ (i32.const 16)
+ )
+ )
+ (i32.add
+ (local.get $6)
+ (i32.const 80)
+ )
)
- (i32.store
- (local.get $9)
- (i32.const 0)
+ (local.set $1
+ (call $_printf_core
+ (local.get $0)
+ (local.get $1)
+ (local.get $5)
+ (local.get $7)
+ (local.get $8)
+ )
)
- (i32.store
- (local.get $3)
- (i32.const 0)
+ (if
+ (local.get $13)
+ (then
+ (block
+ (drop
+ (call_indirect (type $FUNCSIG$iiii)
+ (local.get $0)
+ (i32.const 0)
+ (i32.const 0)
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (local.get $0)
+ )
+ (i32.const 7)
+ )
+ (i32.const 2)
+ )
+ )
+ )
+ (local.set $1
+ (select
+ (local.get $1)
+ (i32.const -1)
+ (i32.load
+ (local.get $3)
+ )
+ )
+ )
+ (i32.store
+ (local.get $12)
+ (local.get $13)
+ )
+ (i32.store
+ (local.get $11)
+ (i32.const 0)
+ )
+ (i32.store
+ (local.get $2)
+ (i32.const 0)
+ )
+ (i32.store
+ (local.get $9)
+ (i32.const 0)
+ )
+ (i32.store
+ (local.get $3)
+ (i32.const 0)
+ )
+ )
+ )
)
)
)
)
- )
- (i32.store
- (local.get $0)
- (i32.or
- (local.tee $2
- (i32.load
+ (i32.store
+ (local.get $0)
+ (i32.or
+ (local.tee $2
+ (i32.load
+ (local.get $0)
+ )
+ )
+ (i32.and
+ (local.get $10)
+ (i32.const 32)
+ )
+ )
+ )
+ (if
+ (local.get $14)
+ (then
+ (call $___unlockfile
(local.get $0)
)
)
+ )
+ (select
+ (i32.const -1)
+ (local.get $1)
(i32.and
- (local.get $10)
+ (local.get $2)
(i32.const 32)
)
)
)
- (if
- (local.get $14)
- (call $___unlockfile
- (local.get $0)
- )
- )
- (select
- (i32.const -1)
- (local.get $1)
- (i32.and
- (local.get $2)
- (i32.const 32)
- )
- )
)
)
)
@@ -2611,7 +2757,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.or
@@ -2621,7 +2767,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store offset=8
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 0)
@@ -2654,8 +2800,10 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.get $5)
@@ -2684,7 +2832,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
;; CHECK-NEXT: (local.get $2)
@@ -2712,81 +2860,85 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $label$break$L10 (result i32)
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (br_if $label$break$L10
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $label$break$L10 (result i32)
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (br_if $label$break$L10
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $label$break$L5
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load offset=36
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (br_if $label$break$L5
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load offset=36
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (drop
@@ -2837,16 +2989,20 @@
(call $___towrite
(local.get $2)
)
- (local.set $3
- (i32.const 0)
- )
- (block
+ (then
(local.set $3
- (i32.load
- (local.get $4)
+ (i32.const 0)
+ )
+ )
+ (else
+ (block
+ (local.set $3
+ (i32.load
+ (local.get $4)
+ )
)
+ (br $__rjti$0)
)
- (br $__rjti$0)
)
)
(br $label$break$L5)
@@ -2868,24 +3024,26 @@
)
(local.get $1)
)
- (block
- (local.set $3
- (call_indirect (type $FUNCSIG$iiii)
- (local.get $2)
- (local.get $0)
- (local.get $1)
- (i32.add
- (i32.and
- (i32.load offset=36
- (local.get $2)
+ (then
+ (block
+ (local.set $3
+ (call_indirect (type $FUNCSIG$iiii)
+ (local.get $2)
+ (local.get $0)
+ (local.get $1)
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (local.get $2)
+ )
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 2)
)
- (i32.const 2)
)
)
+ (br $label$break$L5)
)
- (br $label$break$L5)
)
)
(local.set $2
@@ -2897,81 +3055,87 @@
)
(i32.const -1)
)
- (block (result i32)
- (local.set $3
- (local.get $1)
- )
- (loop $while-in
- (drop
- (br_if $label$break$L10
- (i32.const 0)
- (i32.eqz
- (local.get $3)
+ (then
+ (block (result i32)
+ (local.set $3
+ (local.get $1)
+ )
+ (loop $while-in
+ (drop
+ (br_if $label$break$L10
+ (i32.const 0)
+ (i32.eqz
+ (local.get $3)
+ )
)
)
- )
- (if
- (i32.ne
- (i32.load8_s
- (i32.add
- (local.get $0)
- (local.tee $6
- (i32.add
- (local.get $3)
- (i32.const -1)
+ (if
+ (i32.ne
+ (i32.load8_s
+ (i32.add
+ (local.get $0)
+ (local.tee $6
+ (i32.add
+ (local.get $3)
+ (i32.const -1)
+ )
)
)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (local.set $3
- (local.get $6)
+ (then
+ (block
+ (local.set $3
+ (local.get $6)
+ )
+ (br $while-in)
+ )
)
- (br $while-in)
)
)
- )
- (br_if $label$break$L5
- (i32.lt_u
- (call_indirect (type $FUNCSIG$iiii)
- (local.get $2)
- (local.get $0)
- (local.get $3)
- (i32.add
- (i32.and
- (i32.load offset=36
- (local.get $2)
+ (br_if $label$break$L5
+ (i32.lt_u
+ (call_indirect (type $FUNCSIG$iiii)
+ (local.get $2)
+ (local.get $0)
+ (local.get $3)
+ (i32.add
+ (i32.and
+ (i32.load offset=36
+ (local.get $2)
+ )
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 2)
)
- (i32.const 2)
)
+ (local.get $3)
)
- (local.get $3)
)
- )
- (local.set $4
- (i32.load
- (local.get $5)
+ (local.set $4
+ (i32.load
+ (local.get $5)
+ )
)
- )
- (local.set $1
- (i32.sub
- (local.get $1)
- (local.get $3)
+ (local.set $1
+ (i32.sub
+ (local.get $1)
+ (local.get $3)
+ )
)
- )
- (local.set $0
- (i32.add
- (local.get $0)
- (local.get $3)
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (local.get $3)
+ )
)
+ (local.get $3)
)
- (local.get $3)
)
- (i32.const 0)
+ (else
+ (i32.const 0)
+ )
)
)
)
@@ -3033,47 +3197,51 @@
)
(i32.const 8)
)
- (block (result i32)
- (i32.store
- (local.get $0)
- (i32.or
- (local.get $1)
- (i32.const 32)
+ (then
+ (block (result i32)
+ (i32.store
+ (local.get $0)
+ (i32.or
+ (local.get $1)
+ (i32.const 32)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
- (block (result i32)
- (i32.store offset=8
- (local.get $0)
- (i32.const 0)
- )
- (i32.store offset=4
- (local.get $0)
- (i32.const 0)
- )
- (i32.store offset=28
- (local.get $0)
- (local.tee $1
- (i32.load offset=44
- (local.get $0)
+ (else
+ (block (result i32)
+ (i32.store offset=8
+ (local.get $0)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (local.get $0)
+ (i32.const 0)
+ )
+ (i32.store offset=28
+ (local.get $0)
+ (local.tee $1
+ (i32.load offset=44
+ (local.get $0)
+ )
)
)
- )
- (i32.store offset=20
- (local.get $0)
- (local.get $1)
- )
- (i32.store offset=16
- (local.get $0)
- (i32.add
+ (i32.store offset=20
+ (local.get $0)
(local.get $1)
- (i32.load offset=48
- (local.get $0)
+ )
+ (i32.store offset=16
+ (local.get $0)
+ (i32.add
+ (local.get $1)
+ (i32.load offset=48
+ (local.get $0)
+ )
)
)
+ (i32.const 0)
)
- (i32.const 0)
)
)
)
@@ -3082,361 +3250,387 @@
(block $do-once (result i32)
(if (result i32)
(local.get $0)
- (block (result i32)
- (if
- (i32.lt_u
- (local.get $1)
- (i32.const 128)
- )
- (block
- (i32.store8
- (local.get $0)
+ (then
+ (block (result i32)
+ (if
+ (i32.lt_u
(local.get $1)
+ (i32.const 128)
)
- (br $do-once
- (i32.const 1)
- )
- )
- )
- (if
- (i32.lt_u
- (local.get $1)
- (i32.const 2048)
- )
- (block
- (i32.store8
- (local.get $0)
- (i32.or
- (i32.shr_u
+ (then
+ (block
+ (i32.store8
+ (local.get $0)
(local.get $1)
- (i32.const 6)
)
- (i32.const 192)
- )
- )
- (i32.store8 offset=1
- (local.get $0)
- (i32.or
- (i32.and
- (local.get $1)
- (i32.const 63)
+ (br $do-once
+ (i32.const 1)
)
- (i32.const 128)
)
)
- (br $do-once
- (i32.const 2)
- )
)
- )
- (if
- (i32.or
+ (if
(i32.lt_u
(local.get $1)
- (i32.const 55296)
+ (i32.const 2048)
)
- (i32.eq
- (i32.and
- (local.get $1)
- (i32.const -8192)
+ (then
+ (block
+ (i32.store8
+ (local.get $0)
+ (i32.or
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 6)
+ )
+ (i32.const 192)
+ )
+ )
+ (i32.store8 offset=1
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (local.get $1)
+ (i32.const 63)
+ )
+ (i32.const 128)
+ )
+ )
+ (br $do-once
+ (i32.const 2)
+ )
)
- (i32.const 57344)
)
)
- (block
- (i32.store8
- (local.get $0)
- (i32.or
- (i32.shr_u
+ (if
+ (i32.or
+ (i32.lt_u
+ (local.get $1)
+ (i32.const 55296)
+ )
+ (i32.eq
+ (i32.and
(local.get $1)
- (i32.const 12)
+ (i32.const -8192)
)
- (i32.const 224)
+ (i32.const 57344)
)
)
- (i32.store8 offset=1
- (local.get $0)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $1)
- (i32.const 6)
+ (then
+ (block
+ (i32.store8
+ (local.get $0)
+ (i32.or
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 12)
+ )
+ (i32.const 224)
)
- (i32.const 63)
)
- (i32.const 128)
- )
- )
- (i32.store8 offset=2
- (local.get $0)
- (i32.or
- (i32.and
- (local.get $1)
- (i32.const 63)
+ (i32.store8 offset=1
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 6)
+ )
+ (i32.const 63)
+ )
+ (i32.const 128)
+ )
+ )
+ (i32.store8 offset=2
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (local.get $1)
+ (i32.const 63)
+ )
+ (i32.const 128)
+ )
+ )
+ (br $do-once
+ (i32.const 3)
)
- (i32.const 128)
)
)
- (br $do-once
- (i32.const 3)
- )
)
- )
- (if (result i32)
- (i32.lt_u
- (i32.add
- (local.get $1)
- (i32.const -65536)
- )
- (i32.const 1048576)
- )
- (block (result i32)
- (i32.store8
- (local.get $0)
- (i32.or
- (i32.shr_u
- (local.get $1)
- (i32.const 18)
- )
- (i32.const 240)
+ (if (result i32)
+ (i32.lt_u
+ (i32.add
+ (local.get $1)
+ (i32.const -65536)
)
+ (i32.const 1048576)
)
- (i32.store8 offset=1
- (local.get $0)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $1)
- (i32.const 12)
+ (then
+ (block (result i32)
+ (i32.store8
+ (local.get $0)
+ (i32.or
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 18)
+ )
+ (i32.const 240)
)
- (i32.const 63)
)
- (i32.const 128)
- )
- )
- (i32.store8 offset=2
- (local.get $0)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $1)
- (i32.const 6)
+ (i32.store8 offset=1
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 12)
+ )
+ (i32.const 63)
+ )
+ (i32.const 128)
)
- (i32.const 63)
)
- (i32.const 128)
+ (i32.store8 offset=2
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 6)
+ )
+ (i32.const 63)
+ )
+ (i32.const 128)
+ )
+ )
+ (i32.store8 offset=3
+ (local.get $0)
+ (i32.or
+ (i32.and
+ (local.get $1)
+ (i32.const 63)
+ )
+ (i32.const 128)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.store8 offset=3
- (local.get $0)
- (i32.or
- (i32.and
- (local.get $1)
- (i32.const 63)
+ (else
+ (block (result i32)
+ (i32.store
+ (call $___errno_location)
+ (i32.const 84)
)
- (i32.const 128)
+ (i32.const -1)
)
)
- (i32.const 4)
- )
- (block (result i32)
- (i32.store
- (call $___errno_location)
- (i32.const 84)
- )
- (i32.const -1)
)
)
)
- (i32.const 1)
+ (else
+ (i32.const 1)
+ )
)
)
)
;; CHECK: (func $_wctomb (param $0 i32) (param $1 i32) (result i32)
;; CHECK-NEXT: (if (result i32)
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (block $do-once (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 128)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 2048)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 128)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=1
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 63)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: (br $do-once
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const -8192)
+ ;; CHECK-NEXT: (i32.const 2048)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 57344)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 55296)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store8 offset=1
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 224)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=1
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: (i32.const -8192)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: (i32.const 57344)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=2
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: (i32.const 55296)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 224)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store8 offset=1
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store8 offset=2
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 65536)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1048576)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 18)
+ ;; CHECK-NEXT: (i32.const 65536)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 240)
+ ;; CHECK-NEXT: (i32.const 1048576)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=1
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 18)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 240)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 63)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=2
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: (i32.store8 offset=1
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 63)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: (i32.store8 offset=2
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store8 offset=3
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8 offset=3
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 63)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (call $___errno_location)
+ ;; CHECK-NEXT: (i32.const 84)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 128)
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (call $___errno_location)
- ;; CHECK-NEXT: (i32.const 84)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
(func $_wctomb (param $0 i32) (param $1 i32) (result i32)
(if (result i32)
(local.get $0)
- (call $_wcrtomb
- (local.get $0)
- (local.get $1)
+ (then
+ (call $_wcrtomb
+ (local.get $0)
+ (local.get $1)
+ (i32.const 0)
+ )
+ )
+ (else
(i32.const 0)
)
- (i32.const 0)
)
)
(func $_memchr (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
@@ -3467,69 +3661,73 @@
(i32.const 0)
)
)
- (block
- (local.set $4
- (i32.and
- (local.get $1)
- (i32.const 255)
+ (then
+ (block
+ (local.set $4
+ (i32.and
+ (local.get $1)
+ (i32.const 255)
+ )
)
- )
- (local.set $3
- (local.get $2)
- )
- (local.set $2
- (local.get $0)
- )
- (loop $while-in
- (br_if $__rjti$2
- (i32.eq
- (i32.load8_u
- (local.get $2)
- )
- (i32.and
- (local.get $4)
- (i32.const 255)
+ (local.set $3
+ (local.get $2)
+ )
+ (local.set $2
+ (local.get $0)
+ )
+ (loop $while-in
+ (br_if $__rjti$2
+ (i32.eq
+ (i32.load8_u
+ (local.get $2)
+ )
+ (i32.and
+ (local.get $4)
+ (i32.const 255)
+ )
)
)
- )
- (br_if $while-in
- (i32.and
- (local.tee $0
- (i32.ne
- (local.tee $3
- (i32.add
- (local.get $3)
- (i32.const -1)
+ (br_if $while-in
+ (i32.and
+ (local.tee $0
+ (i32.ne
+ (local.tee $3
+ (i32.add
+ (local.get $3)
+ (i32.const -1)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (i32.ne
- (i32.and
- (local.tee $2
- (i32.add
- (local.get $2)
- (i32.const 1)
+ (i32.ne
+ (i32.and
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.const 1)
+ )
)
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const 0)
)
- (i32.const 0)
)
)
)
)
)
- (block
- (local.set $3
- (local.get $2)
- )
- (local.set $2
- (local.get $0)
- )
- (local.set $0
- (local.get $4)
+ (else
+ (block
+ (local.set $3
+ (local.get $2)
+ )
+ (local.set $2
+ (local.get $0)
+ )
+ (local.set $0
+ (local.get $4)
+ )
)
)
)
@@ -3556,109 +3754,115 @@
)
)
)
- (block
- (local.set $3
- (i32.mul
- (local.get $5)
- (i32.const 16843009)
+ (then
+ (block
+ (local.set $3
+ (i32.mul
+ (local.get $5)
+ (i32.const 16843009)
+ )
)
- )
- (block $__rjto$0
- (block $__rjti$0
- (br_if $__rjti$0
- (i32.le_u
- (local.get $0)
- (i32.const 3)
+ (block $__rjto$0
+ (block $__rjti$0
+ (br_if $__rjti$0
+ (i32.le_u
+ (local.get $0)
+ (i32.const 3)
+ )
)
- )
- (loop $while-in3
- (if
- (i32.eqz
- (i32.and
- (i32.xor
- (i32.and
- (local.tee $4
- (i32.xor
- (i32.load
- (local.get $2)
+ (loop $while-in3
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.xor
+ (i32.and
+ (local.tee $4
+ (i32.xor
+ (i32.load
+ (local.get $2)
+ )
+ (local.get $3)
)
- (local.get $3)
)
+ (i32.const -2139062144)
)
(i32.const -2139062144)
)
- (i32.const -2139062144)
- )
- (i32.add
- (local.get $4)
- (i32.const -16843009)
- )
- )
- )
- (block
- (local.set $2
- (i32.add
- (local.get $2)
- (i32.const 4)
+ (i32.add
+ (local.get $4)
+ (i32.const -16843009)
+ )
)
)
- (br_if $while-in3
- (i32.gt_u
- (local.tee $0
+ (then
+ (block
+ (local.set $2
(i32.add
- (local.get $0)
- (i32.const -4)
+ (local.get $2)
+ (i32.const 4)
)
)
- (i32.const 3)
+ (br_if $while-in3
+ (i32.gt_u
+ (local.tee $0
+ (i32.add
+ (local.get $0)
+ (i32.const -4)
+ )
+ )
+ (i32.const 3)
+ )
+ )
+ (br $__rjti$0)
)
)
- (br $__rjti$0)
)
)
+ (br $__rjto$0)
)
- (br $__rjto$0)
- )
- (if
- (i32.eqz
- (local.get $0)
- )
- (block
- (local.set $0
- (i32.const 0)
- )
- (br $label$break$L8)
- )
- )
- )
- (loop $while-in5
- (br_if $label$break$L8
- (i32.eq
- (i32.load8_u
- (local.get $2)
+ (if
+ (i32.eqz
+ (local.get $0)
)
- (i32.and
- (local.get $1)
- (i32.const 255)
+ (then
+ (block
+ (local.set $0
+ (i32.const 0)
+ )
+ (br $label$break$L8)
+ )
)
)
)
- (local.set $2
- (i32.add
- (local.get $2)
- (i32.const 1)
+ (loop $while-in5
+ (br_if $label$break$L8
+ (i32.eq
+ (i32.load8_u
+ (local.get $2)
+ )
+ (i32.and
+ (local.get $1)
+ (i32.const 255)
+ )
+ )
)
- )
- (br_if $while-in5
- (local.tee $0
+ (local.set $2
(i32.add
- (local.get $0)
- (i32.const -1)
+ (local.get $2)
+ (i32.const 1)
)
)
- )
- (local.set $0
- (i32.const 0)
+ (br_if $while-in5
+ (local.tee $0
+ (i32.add
+ (local.get $0)
+ (i32.const -1)
+ )
+ )
+ )
+ (local.set $0
+ (i32.const 0)
+ )
)
)
)
@@ -3676,7 +3880,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const -4096)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (call $___errno_location)
;; CHECK-NEXT: (i32.sub
@@ -3686,7 +3890,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
(func $___syscall_ret (param $0 i32) (result i32)
@@ -3695,17 +3901,21 @@
(local.get $0)
(i32.const -4096)
)
- (block (result i32)
- (i32.store
- (call $___errno_location)
- (i32.sub
- (i32.const 0)
- (local.get $0)
+ (then
+ (block (result i32)
+ (i32.store
+ (call $___errno_location)
+ (i32.sub
+ (i32.const 0)
+ (local.get $0)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
)
- (local.get $0)
+ (else
+ (local.get $0)
+ )
)
)
;; CHECK: (func $___fflush_unlocked (param $0 i32) (result i32)
@@ -3786,22 +3996,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load offset=40
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call_indirect (type $FUNCSIG$iiii)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load offset=40
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -3908,22 +4120,24 @@
)
)
)
- (drop
- (call_indirect (type $FUNCSIG$iiii)
- (local.get $0)
- (i32.sub
- (local.get $4)
- (local.get $6)
- )
- (i32.const 1)
- (i32.add
- (i32.and
- (i32.load offset=40
- (local.get $0)
+ (then
+ (drop
+ (call_indirect (type $FUNCSIG$iiii)
+ (local.get $0)
+ (i32.sub
+ (local.get $4)
+ (local.get $6)
+ )
+ (i32.const 1)
+ (i32.add
+ (i32.and
+ (i32.load offset=40
+ (local.get $0)
+ )
+ (i32.const 7)
)
- (i32.const 7)
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
@@ -3966,8 +4180,10 @@
(local.get $0)
)
)
- (call $___unlockfile
- (local.get $0)
+ (then
+ (call $___unlockfile
+ (local.get $0)
+ )
)
)
)
@@ -3977,21 +4193,33 @@
(local.get $0)
(local.get $0)
)
- (i32.const -2147483648)
- (if (result i32)
- (f64.ge
- (local.get $0)
- (f64.const 2147483648)
- )
+ (then
(i32.const -2147483648)
+ )
+ (else
(if (result i32)
- (f64.le
+ (f64.ge
(local.get $0)
- (f64.const -2147483649)
+ (f64.const 2147483648)
)
- (i32.const -2147483648)
- (i32.trunc_f64_s
- (local.get $0)
+ (then
+ (i32.const -2147483648)
+ )
+ (else
+ (if (result i32)
+ (f64.le
+ (local.get $0)
+ (f64.const -2147483649)
+ )
+ (then
+ (i32.const -2147483648)
+ )
+ (else
+ (i32.trunc_f64_s
+ (local.get $0)
+ )
+ )
+ )
)
)
)
@@ -4000,44 +4228,60 @@
(func $i32s-div (param $0 i32) (param $1 i32) (result i32)
(if (result i32)
(local.get $1)
- (if (result i32)
- (i32.and
- (i32.eq
- (local.get $0)
- (i32.const -2147483648)
+ (then
+ (if (result i32)
+ (i32.and
+ (i32.eq
+ (local.get $0)
+ (i32.const -2147483648)
+ )
+ (i32.eq
+ (local.get $1)
+ (i32.const -1)
+ )
)
- (i32.eq
- (local.get $1)
- (i32.const -1)
+ (then
+ (i32.const 0)
+ )
+ (else
+ (i32.div_s
+ (local.get $0)
+ (local.get $1)
+ )
)
)
+ )
+ (else
(i32.const 0)
- (i32.div_s
- (local.get $0)
- (local.get $1)
- )
)
- (i32.const 0)
)
)
(func $i32u-rem (param $0 i32) (param $1 i32) (result i32)
(if (result i32)
(local.get $1)
- (i32.rem_u
- (local.get $0)
- (local.get $1)
+ (then
+ (i32.rem_u
+ (local.get $0)
+ (local.get $1)
+ )
+ )
+ (else
+ (i32.const 0)
)
- (i32.const 0)
)
)
(func $i32u-div (param $0 i32) (param $1 i32) (result i32)
(if (result i32)
(local.get $1)
- (i32.div_u
- (local.get $0)
- (local.get $1)
+ (then
+ (i32.div_u
+ (local.get $0)
+ (local.get $1)
+ )
+ )
+ (else
+ (i32.const 0)
)
- (i32.const 0)
)
)
;; CHECK: (func $_printf_core (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
@@ -4096,7 +4340,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $21
;; CHECK-NEXT: (i32.add
@@ -4222,25 +4468,29 @@
;; CHECK-NEXT: (local.get $17)
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 2147483647)
- ;; CHECK-NEXT: (local.get $17)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 2147483647)
+ ;; CHECK-NEXT: (local.get $17)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (call $___errno_location)
- ;; CHECK-NEXT: (i32.const 75)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (call $___errno_location)
+ ;; CHECK-NEXT: (i32.const 75)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (local.get $17)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (local.get $17)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -4333,20 +4583,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $29)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -4356,7 +4610,7 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
@@ -4386,7 +4640,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (i32.load8_s
;; CHECK-NEXT: (local.tee $10
@@ -4421,7 +4675,7 @@
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
@@ -4445,77 +4699,81 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $label$break$L25 (result i32)
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in4 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $label$break$L25 (result i32)
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in4 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 75913)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 75913)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L25
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L25
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.extend8_s
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.extend8_s
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in4
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (br_if $while-in4
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -32)
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $1
@@ -4527,243 +4785,249 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 42)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once5 (result i32)
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (block $__rjto$0 (result i32)
- ;; CHECK-NEXT: (block $__rjti$0
- ;; CHECK-NEXT: (br_if $__rjti$0
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.tee $9
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once5 (result i32)
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (block $__rjto$0 (result i32)
+ ;; CHECK-NEXT: (block $__rjti$0
+ ;; CHECK-NEXT: (br_if $__rjti$0
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.tee $9
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $__rjti$0
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (i32.load8_s offset=2
- ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (br_if $__rjti$0
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (i32.load8_s offset=2
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 36)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 36)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjto$0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (br $__rjto$0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $29)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $29)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once5
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once5
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (i32.const -4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 8192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 8192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.extend8_s
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.extend8_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in8
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in8
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in8)
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.set $16
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $16
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -4775,201 +5039,207 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 46)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $label$break$L46 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $label$break$L46 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 42)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 42)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L46
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in11
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (br_if $label$break$L46
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L46
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in11
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (br_if $label$break$L46
- ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.load8_s offset=3
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 36)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.shl
;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (local.set $10
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L46
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.load8_s offset=3
- ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 36)
+ ;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.get $29)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L46
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $29)
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $8
@@ -4991,7 +5261,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 57)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $17
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
@@ -5030,7 +5300,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
@@ -5048,7 +5318,7 @@
;; CHECK-NEXT: (i32.const 255)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $17
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
@@ -5071,20 +5341,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 19)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (br $__rjti$2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjti$2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $4)
@@ -5125,7 +5399,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $29)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $17
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
@@ -5145,7 +5419,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $29)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
@@ -5426,7 +5700,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (local.get $23)
;; CHECK-NEXT: )
@@ -5462,8 +5736,10 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (local.get $23)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (local.get $23)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
@@ -5471,7 +5747,7 @@
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $7
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
@@ -5494,8 +5770,10 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $5
@@ -5523,7 +5801,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (global.set $tempRet0
;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (i32.sub
@@ -5566,19 +5844,21 @@
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: (i32.const 2048)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 4092)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 4093)
- ;; CHECK-NEXT: (i32.const 4091)
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 4093)
+ ;; CHECK-NEXT: (i32.const 4091)
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -5652,7 +5932,7 @@
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (br_if $while-in2
;; CHECK-NEXT: (i32.ne
;; CHECK-NEXT: (local.tee $9
@@ -5695,13 +5975,15 @@
;; CHECK-NEXT: (i32.load8_s
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $while-in3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -5756,13 +6038,13 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $__rjti$6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (call $_pad
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 32)
@@ -5802,7 +6084,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $28
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
@@ -5813,30 +6095,32 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 4108)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 2048)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $28
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 2048)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4111)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $28
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $28
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4111)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 4114)
- ;; CHECK-NEXT: (i32.const 4109)
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $28
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 4114)
+ ;; CHECK-NEXT: (i32.const 4109)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -5862,2298 +6146,2416 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 2146435072)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once49 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (f64.ne
- ;; CHECK-NEXT: (local.tee $25
- ;; CHECK-NEXT: (f64.mul
- ;; CHECK-NEXT: (call $_frexp
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once49 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (f64.ne
+ ;; CHECK-NEXT: (local.tee $25
+ ;; CHECK-NEXT: (f64.mul
+ ;; CHECK-NEXT: (call $_frexp
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $21)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.tee $26
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.tee $26
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 97)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 97)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $30)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $30)
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $30)
- ;; CHECK-NEXT: (local.tee $18
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (local.tee $18
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (if (result f64)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 12)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (if (result f64)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 11)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $25)
- ;; CHECK-NEXT: (block (result f64)
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (f64.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.get $25)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in54
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (f64.mul
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const 16)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in54
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (loop $while-in54
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (f64.mul
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const 16)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (f64.neg
- ;; CHECK-NEXT: (f64.add
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.sub
- ;; CHECK-NEXT: (f64.neg
- ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: (br_if $while-in54
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $14)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.sub
- ;; CHECK-NEXT: (f64.add
- ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (f64.neg
+ ;; CHECK-NEXT: (f64.add
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.sub
+ ;; CHECK-NEXT: (f64.neg
+ ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.sub
+ ;; CHECK-NEXT: (f64.add
+ ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $14)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 45)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 45)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $28)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $28)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (call $_fmt_u
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (call $_fmt_u
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.lt_s
;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: (local.get $24)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $24)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $24)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $38)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $38)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $38)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $38)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 43)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.store8
;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 43)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 15)
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.const 15)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $15
- ;; CHECK-NEXT: (i32.le_s
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.set $15
+ ;; CHECK-NEXT: (i32.le_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $20
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (local.set $20
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $22)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in56
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.load8_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.ne
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in56
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.load8_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $7
;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.ge
+ ;; CHECK-NEXT: (f64.ne
+ ;; CHECK-NEXT: (local.get $14)
;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const 2147483648)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -2147483648)
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.le
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const -2147483649)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.const -2147483648)
- ;; CHECK-NEXT: (i32.trunc_f64_s
- ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (f64.ge
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const 2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (f64.le
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const -2147483649)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.trunc_f64_s
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4075)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4075)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (f64.mul
- ;; CHECK-NEXT: (f64.sub
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.convert_i32_s
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (f64.mul
+ ;; CHECK-NEXT: (f64.sub
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.convert_i32_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $22)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (f64.eq
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (f64.eq
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 46)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 46)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in56
- ;; CHECK-NEXT: (f64.ne
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const 0)
+ ;; CHECK-NEXT: (br_if $while-in56
+ ;; CHECK-NEXT: (f64.ne
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $42)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $40)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $42)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $40)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $41)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $41)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 65536)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $22)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 65536)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $22)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $24)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 8192)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once49
- ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: (local.get $16)
;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 8192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once49
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (if (result f64)
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (block (result f64)
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $21)
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (if (result f64)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 28)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 28)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.mul
+ ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: (f64.const 268435456)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.mul
- ;; CHECK-NEXT: (local.get $25)
- ;; CHECK-NEXT: (f64.const 268435456)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result f64)
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $25)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $25)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $43)
- ;; CHECK-NEXT: (local.get $44)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $43)
+ ;; CHECK-NEXT: (local.get $44)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in60
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.ne
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: (loop $while-in60
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.tee $5
;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.ge
+ ;; CHECK-NEXT: (f64.ne
+ ;; CHECK-NEXT: (local.get $14)
;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const 2147483648)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -2147483648)
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (f64.le
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.const -2147483649)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.const -2147483648)
- ;; CHECK-NEXT: (i32.trunc_f64_s
- ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (f64.ge
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const 2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (f64.le
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.const -2147483649)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const -2147483648)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.trunc_f64_s
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in60
- ;; CHECK-NEXT: (f64.ne
- ;; CHECK-NEXT: (local.tee $14
- ;; CHECK-NEXT: (f64.mul
- ;; CHECK-NEXT: (f64.sub
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (f64.convert_i32_u
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (br_if $while-in60
+ ;; CHECK-NEXT: (f64.ne
+ ;; CHECK-NEXT: (local.tee $14
+ ;; CHECK-NEXT: (f64.mul
+ ;; CHECK-NEXT: (f64.sub
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (f64.convert_i32_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 1e9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 1e9)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (f64.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in62
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 29)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.const 29)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (loop $while-in62
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 29)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.const 29)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once63
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in66
- ;; CHECK-NEXT: (global.set $tempRet0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.tee $20
- ;; CHECK-NEXT: (call $_bitshift64Shl
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once63
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in66
+ ;; CHECK-NEXT: (global.set $tempRet0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.tee $20
+ ;; CHECK-NEXT: (call $_bitshift64Shl
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $12
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (global.get $tempRet0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $12
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (call $___uremdi3
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.tee $20
+ ;; CHECK-NEXT: (global.get $tempRet0)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1000000000)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (global.get $tempRet0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (call $___uremdi3
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (local.tee $20
- ;; CHECK-NEXT: (global.get $tempRet0)
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (call $___udivmoddi4
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (i32.const 1000000000)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in66
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1000000000)
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (call $___udivmoddi4
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (i32.const 1000000000)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (br_if $do-once63
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in66
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.tee $5
;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once63
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in68
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in68
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in68)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in68)
+ ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $21)
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (br_if $while-in62
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in62
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.set $19
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 6)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $19
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 6)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $20
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.div_s
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (i32.const 25)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $20
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.div_s
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (i32.const 25)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $31
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: (local.set $31
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $26)
+ ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (loop $while-in70 (result i32)
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (loop $while-in70 (result i32)
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once71
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $34
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.const 1000000000)
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in74
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once71
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $34
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.const 1000000000)
;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in74
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $34)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in74
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $34)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in74
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $do-once71
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once71
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.set $12
;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $31)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (local.tee $11
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $21)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $20)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $21)
- ;; CHECK-NEXT: (local.tee $11
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $21)
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in70)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in70)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $20
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.set $20
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once75
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once75
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once75
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (br_if $do-once75
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in78
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in78
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (loop $while-in78
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in78
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $26)
+ ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $31
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $31
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $34
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: (i32.const 103)
+ ;; CHECK-NEXT: (local.tee $34
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $26)
+ ;; CHECK-NEXT: (i32.const 103)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.div_s
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 9216)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.rem_s
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.div_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (i32.const 9216)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.rem_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in80
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in80
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (loop $while-in80
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in80
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (local.tee $18
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (local.tee $18
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4092)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4092)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.rem_u
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (if (result i32)
;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $26
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.rem_u
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once81
- ;; CHECK-NEXT: (local.set $35
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.div_u
- ;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $26
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (if (result f64)
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.tee $45
- ;; CHECK-NEXT: (i32.div_s
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once81
+ ;; CHECK-NEXT: (local.set $35
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.div_u
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.const 0.5)
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (f64.const 1)
- ;; CHECK-NEXT: (f64.const 1.5)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (if (result f64)
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $45)
+ ;; CHECK-NEXT: (local.tee $45
+ ;; CHECK-NEXT: (i32.div_s
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (f64.const 0.5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (f64.const 1)
+ ;; CHECK-NEXT: (f64.const 1.5)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $26)
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $45)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $25
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (f64.const 9007199254740994)
- ;; CHECK-NEXT: (f64.const 9007199254740992)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $35)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.set $25
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (f64.const 9007199254740994)
+ ;; CHECK-NEXT: (f64.const 9007199254740992)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $35)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $28)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.load8_s
- ;; CHECK-NEXT: (local.get $30)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $28)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.load8_s
+ ;; CHECK-NEXT: (local.get $30)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 45)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $25
+ ;; CHECK-NEXT: (f64.neg
+ ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (f64.neg
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 45)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $25
- ;; CHECK-NEXT: (f64.neg
- ;; CHECK-NEXT: (local.get $25)
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.tee $8
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (f64.neg
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $do-once81
+ ;; CHECK-NEXT: (f64.eq
+ ;; CHECK-NEXT: (f64.add
+ ;; CHECK-NEXT: (local.get $25)
;; CHECK-NEXT: (local.get $14)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $25)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once81
- ;; CHECK-NEXT: (f64.eq
- ;; CHECK-NEXT: (f64.add
- ;; CHECK-NEXT: (local.get $25)
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $25)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 999999999)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in86
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 999999999)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in86
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in86
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 999999999)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (i32.shr_s
;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $20)
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (br_if $do-once81
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $8
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in86
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 999999999)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once81
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (loop $while-in88
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in88
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in88
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.tee $12
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (br_if $while-in88
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.tee $12
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.set $12
;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $35
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.set $35
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (loop $while-in90 (result i32)
- ;; CHECK-NEXT: (block $while-out89 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $26
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-out89
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (loop $while-in90 (result i32)
+ ;; CHECK-NEXT: (block $while-out89 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.le_u
;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $26
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-out89
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $26
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $26
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in90)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in90)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.tee $8
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.tee $8
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $34)
- ;; CHECK-NEXT: (block $do-once91 (result i32)
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $31)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.get $34)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once91 (result i32)
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const -5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const -5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $19
- ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $19
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $15)
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $19
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (br_if $do-once91
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (local.tee $18
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: (block $do-once93
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $15
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $19
;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (br_if $do-once91
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (local.tee $18
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once93)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.rem_u
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $26)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $do-once93
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $15
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once93)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.rem_u
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once93)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once93)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (loop $while-in96
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in96
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.rem_u
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in96
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in96
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.rem_u
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.mul
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.mul
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (i32.const 102)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 102)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (i32.gt_s
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (i32.gt_s
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $19)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $28)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.tee $19
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $28)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.tee $31
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.tee $19
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $15
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.tee $31
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 102)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $15
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (call $_fmt_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $35)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $24)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (call $_fmt_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $35)
;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: (local.get $24)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $24)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in98
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in98
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in98
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $24)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in98
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 43)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $15
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 43)
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $15
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $24)
+ ;; CHECK-NEXT: (local.get $15)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: (local.get $15)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $30)
- ;; CHECK-NEXT: (local.get $28)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $30)
+ ;; CHECK-NEXT: (local.get $28)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 65536)
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 65536)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $31)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.tee $12
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $31)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.tee $12
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in102
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (call $_fmt_u
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (loop $while-in102
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (call $_fmt_u
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $27)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $27)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once103
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (br_if $do-once103
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $27)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $32)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $32)
+ ;; CHECK-NEXT: (block $do-once103
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (br_if $do-once103
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br_if $do-once103
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in106
;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $32)
;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in106
- ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (br_if $do-once103
+ ;; CHECK-NEXT: (i32.le_u
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (local.get $22)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in106
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in106
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $27)
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.le_u
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $20)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in102)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in102)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $19)
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $19)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (i32.const 4143)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (i32.const 4143)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in110 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (call $_fmt_u
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in110 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (call $_fmt_u
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: (local.get $22)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $22)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in112
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in112
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in112
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in112
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.gt_s
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in110)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in110)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 9)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once99
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.ge_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $20
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $26)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $18
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (block $do-once99
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in114 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (call $_fmt_u
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $20
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $26)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $27)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.get $32)
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $32)
+ ;; CHECK-NEXT: (local.set $18
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $18)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once115
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in114 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (call $_fmt_u
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once115
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (i32.le_s
- ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $27)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $27)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once115
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.get $32)
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (i32.const 4143)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (br_if $do-once115
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (block $do-once115
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in118
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: (br_if $do-once115
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (i32.le_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $do-once115
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (i32.const 4143)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in118
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (br_if $do-once115
+ ;; CHECK-NEXT: (i32.le_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in118
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $while-in118
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $22)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $27)
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $27)
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.gt_s
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in114
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.gt_s
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ge_s
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (br_if $while-in114
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $20)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.ge_s
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 18)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 18)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 18)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 18)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once99
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (br_if $do-once99
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $24)
- ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $24)
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_pad
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 32)
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 8192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $16)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (call $_pad
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 32)
+ ;; CHECK-NEXT: (local.get $16)
;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 8192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $16)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (call $_pad
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 32)
@@ -8188,7 +8590,7 @@
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (call $___fwritex
;; CHECK-NEXT: (local.get $30)
@@ -8233,11 +8635,13 @@
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -8299,7 +8703,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $11
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $15)
@@ -8368,13 +8772,13 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $11
;; CHECK-NEXT: (i32.const 4091)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $11
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.shr_s
@@ -8389,7 +8793,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $23)
;; CHECK-NEXT: )
@@ -8433,7 +8837,7 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $7
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
@@ -8477,7 +8881,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $7
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
@@ -8501,7 +8905,7 @@
;; CHECK-NEXT: (i32.load8_u
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (block $__rjto$06
;; CHECK-NEXT: (block $__rjti$07
;; CHECK-NEXT: (br_if $__rjti$07
@@ -8531,7 +8935,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $8)
@@ -8559,7 +8963,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $9
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
@@ -8705,7 +9109,7 @@
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $17
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
@@ -8721,7 +9125,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if (result i32)
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
@@ -8771,11 +9175,13 @@
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $33)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $33)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -8794,7 +9200,9 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -8849,27 +9257,29 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $23)
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $23)
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $7
;; CHECK-NEXT: (local.get $23)
;; CHECK-NEXT: )
@@ -8911,11 +9321,13 @@
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -8945,11 +9357,13 @@
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $___fwritex
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $15)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $___fwritex
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $15)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -8978,96 +9392,104 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (block (result i32)
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in130
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (call $_pop_arg_336
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in130
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in130
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_pop_arg_336
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.shl
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L343)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in132 (result i32)
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (br_if $while-in130
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L343)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in132
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in132 (result i32)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L343)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (br_if $while-in132
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -9139,7 +9561,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.set $20
(i32.add
@@ -9282,25 +9706,31 @@
(local.get $16)
(i32.const -1)
)
- (local.set $16
- (if (result i32)
- (i32.gt_s
- (local.get $10)
- (i32.sub
- (i32.const 2147483647)
- (local.get $16)
+ (then
+ (local.set $16
+ (if (result i32)
+ (i32.gt_s
+ (local.get $10)
+ (i32.sub
+ (i32.const 2147483647)
+ (local.get $16)
+ )
)
- )
- (block (result i32)
- (i32.store
- (call $___errno_location)
- (i32.const 75)
+ (then
+ (block (result i32)
+ (i32.store
+ (call $___errno_location)
+ (i32.const 75)
+ )
+ (i32.const -1)
+ )
+ )
+ (else
+ (i32.add
+ (local.get $10)
+ (local.get $16)
+ )
)
- (i32.const -1)
- )
- (i32.add
- (local.get $10)
- (local.get $16)
)
)
)
@@ -9397,20 +9827,24 @@
)
(if
(local.get $29)
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ (then
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
)
- (i32.const 32)
)
- )
- (drop
- (call $___fwritex
- (local.get $5)
- (local.get $7)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $5)
+ (local.get $7)
+ (local.get $0)
+ )
+ )
)
)
)
@@ -9420,14 +9854,16 @@
(local.get $10)
(local.get $5)
)
- (block
- (local.set $5
- (local.get $6)
- )
- (local.set $10
- (local.get $7)
+ (then
+ (block
+ (local.set $5
+ (local.get $6)
+ )
+ (local.set $10
+ (local.get $7)
+ )
+ (br $label$continue$L1)
)
- (br $label$continue$L1)
)
)
(local.set $8
@@ -9450,49 +9886,53 @@
)
(i32.const 10)
)
- (block (result i32)
- (local.set $6
- (i32.load8_s
- (local.tee $10
- (select
- (i32.add
- (local.get $6)
- (i32.const 3)
- )
- (local.get $10)
- (local.tee $11
- (i32.eq
- (i32.load8_s offset=2
- (local.get $6)
+ (then
+ (block (result i32)
+ (local.set $6
+ (i32.load8_s
+ (local.tee $10
+ (select
+ (i32.add
+ (local.get $6)
+ (i32.const 3)
+ )
+ (local.get $10)
+ (local.tee $11
+ (i32.eq
+ (i32.load8_s offset=2
+ (local.get $6)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
)
)
)
)
- )
- (local.set $17
+ (local.set $17
+ (select
+ (local.get $8)
+ (i32.const -1)
+ (local.get $11)
+ )
+ )
(select
- (local.get $8)
- (i32.const -1)
+ (i32.const 1)
+ (local.get $1)
(local.get $11)
)
)
- (select
- (i32.const 1)
- (local.get $1)
- (local.get $11)
- )
)
- (block (result i32)
- (local.set $6
- (local.get $11)
- )
- (local.set $17
- (i32.const -1)
+ (else
+ (block (result i32)
+ (local.set $6
+ (local.get $11)
+ )
+ (local.set $17
+ (i32.const -1)
+ )
+ (local.get $1)
)
- (local.get $1)
)
)
)
@@ -9513,88 +9953,94 @@
)
(i32.const 32)
)
- (block
- (local.set $1
- (local.get $6)
- )
- (local.set $6
- (local.get $11)
- )
- (local.set $11
- (i32.const 0)
- )
- (loop $while-in4
- (if
- (i32.eqz
- (i32.and
- (i32.shl
- (i32.const 1)
- (i32.add
- (local.get $6)
- (i32.const -32)
+ (then
+ (block
+ (local.set $1
+ (local.get $6)
+ )
+ (local.set $6
+ (local.get $11)
+ )
+ (local.set $11
+ (i32.const 0)
+ )
+ (loop $while-in4
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.shl
+ (i32.const 1)
+ (i32.add
+ (local.get $6)
+ (i32.const -32)
+ )
)
+ (i32.const 75913)
)
- (i32.const 75913)
)
- )
- (block
- (local.set $6
- (local.get $1)
- )
- (local.set $1
- (local.get $11)
+ (then
+ (block
+ (local.set $6
+ (local.get $1)
+ )
+ (local.set $1
+ (local.get $11)
+ )
+ (br $label$break$L25)
+ )
)
- (br $label$break$L25)
)
- )
- (local.set $11
- (i32.or
- (i32.shl
- (i32.const 1)
- (i32.add
- (i32.shr_s
- (i32.shl
- (local.get $1)
+ (local.set $11
+ (i32.or
+ (i32.shl
+ (i32.const 1)
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (local.get $1)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -32)
)
- (i32.const -32)
)
+ (local.get $11)
)
- (local.get $11)
)
- )
- (br_if $while-in4
- (i32.eq
- (i32.and
- (local.tee $6
- (local.tee $1
- (i32.load8_s
- (local.tee $10
- (i32.add
- (local.get $10)
- (i32.const 1)
+ (br_if $while-in4
+ (i32.eq
+ (i32.and
+ (local.tee $6
+ (local.tee $1
+ (i32.load8_s
+ (local.tee $10
+ (i32.add
+ (local.get $10)
+ (i32.const 1)
+ )
)
)
)
)
+ (i32.const -32)
)
- (i32.const -32)
+ (i32.const 32)
)
- (i32.const 32)
)
- )
- (local.set $6
- (local.get $1)
- )
- (local.set $1
- (local.get $11)
+ (local.set $6
+ (local.get $1)
+ )
+ (local.set $1
+ (local.get $11)
+ )
)
)
)
- (local.set $1
- (i32.const 0)
+ (else
+ (local.set $1
+ (i32.const 0)
+ )
)
)
)
@@ -9607,230 +10053,263 @@
)
(i32.const 42)
)
- (block
- (local.set $10
- (block $__rjto$0 (result i32)
- (block $__rjti$0
- (br_if $__rjti$0
- (i32.ge_u
- (local.tee $11
- (i32.add
- (i32.load8_s
- (local.tee $6
- (i32.add
- (local.get $10)
- (i32.const 1)
+ (then
+ (block
+ (local.set $10
+ (block $__rjto$0 (result i32)
+ (block $__rjti$0
+ (br_if $__rjti$0
+ (i32.ge_u
+ (local.tee $11
+ (i32.add
+ (i32.load8_s
+ (local.tee $6
+ (i32.add
+ (local.get $10)
+ (i32.const 1)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
)
- )
- (br_if $__rjti$0
- (i32.ne
- (i32.load8_s offset=2
- (local.get $10)
+ (br_if $__rjti$0
+ (i32.ne
+ (i32.load8_s offset=2
+ (local.get $10)
+ )
+ (i32.const 36)
)
- (i32.const 36)
)
- )
- (i32.store
- (i32.add
- (local.get $4)
- (i32.shl
- (local.get $11)
- (i32.const 2)
+ (i32.store
+ (i32.add
+ (local.get $4)
+ (i32.shl
+ (local.get $11)
+ (i32.const 2)
+ )
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (local.tee $6
- (i32.add
- (local.get $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (local.get $6)
+ (drop
+ (i32.load offset=4
+ (local.tee $6
+ (i32.add
+ (local.get $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (local.get $6)
+ )
+ (i32.const -48)
)
- (i32.const -48)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
)
- )
- (local.set $8
- (i32.const 1)
- )
- (local.set $14
- (i32.load
- (local.get $6)
+ (local.set $8
+ (i32.const 1)
)
- )
- (br $__rjto$0
- (i32.add
- (local.get $10)
- (i32.const 3)
+ (local.set $14
+ (i32.load
+ (local.get $6)
+ )
)
- )
- )
- (if
- (local.get $8)
- (block
- (local.set $16
- (i32.const -1)
+ (br $__rjto$0
+ (i32.add
+ (local.get $10)
+ (i32.const 3)
+ )
)
- (br $label$break$L1)
)
- )
- (if
- (i32.eqz
- (local.get $29)
- )
- (block
- (local.set $11
- (local.get $1)
- )
- (local.set $10
- (local.get $6)
+ (if
+ (local.get $8)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
)
- (local.set $1
- (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (local.get $29)
)
- (local.set $14
- (i32.const 0)
+ (then
+ (block
+ (local.set $11
+ (local.get $1)
+ )
+ (local.set $10
+ (local.get $6)
+ )
+ (local.set $1
+ (i32.const 0)
+ )
+ (local.set $14
+ (i32.const 0)
+ )
+ (br $do-once5)
+ )
)
- (br $do-once5)
)
- )
- (local.set $14
- (i32.load
- (local.tee $10
- (i32.and
- (i32.add
- (i32.load
- (local.get $2)
+ (local.set $14
+ (i32.load
+ (local.tee $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (local.get $2)
+ )
+ (i32.const 3)
)
- (i32.const 3)
+ (i32.const -4)
)
- (i32.const -4)
)
)
)
- )
- (i32.store
- (local.get $2)
- (i32.add
- (local.get $10)
- (i32.const 4)
+ (i32.store
+ (local.get $2)
+ (i32.add
+ (local.get $10)
+ (i32.const 4)
+ )
)
+ (local.set $8
+ (i32.const 0)
+ )
+ (local.get $6)
)
- (local.set $8
- (i32.const 0)
- )
- (local.get $6)
)
- )
- (local.set $11
- (if (result i32)
- (i32.lt_s
- (local.get $14)
- (i32.const 0)
- )
- (block (result i32)
- (local.set $14
- (i32.sub
- (i32.const 0)
- (local.get $14)
+ (local.set $11
+ (if (result i32)
+ (i32.lt_s
+ (local.get $14)
+ (i32.const 0)
+ )
+ (then
+ (block (result i32)
+ (local.set $14
+ (i32.sub
+ (i32.const 0)
+ (local.get $14)
+ )
+ )
+ (i32.or
+ (local.get $1)
+ (i32.const 8192)
+ )
)
)
- (i32.or
+ (else
(local.get $1)
- (i32.const 8192)
)
)
- (local.get $1)
)
- )
- (local.set $1
- (local.get $8)
+ (local.set $1
+ (local.get $8)
+ )
)
)
- (if
- (i32.lt_u
- (local.tee $6
- (i32.add
- (i32.shr_s
- (i32.shl
- (local.get $6)
+ (else
+ (if
+ (i32.lt_u
+ (local.tee $6
+ (i32.add
+ (i32.shr_s
+ (i32.shl
+ (local.get $6)
+ (i32.const 24)
+ )
(i32.const 24)
)
- (i32.const 24)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (block
- (local.set $11
- (i32.const 0)
- )
- (loop $while-in8
- (local.set $6
- (i32.add
- (i32.mul
- (local.get $11)
- (i32.const 10)
- )
- (local.get $6)
+ (then
+ (block
+ (local.set $11
+ (i32.const 0)
)
- )
- (if
- (i32.lt_u
- (local.tee $9
+ (loop $while-in8
+ (local.set $6
(i32.add
- (i32.load8_s
- (local.tee $10
- (i32.add
- (local.get $10)
- (i32.const 1)
+ (i32.mul
+ (local.get $11)
+ (i32.const 10)
+ )
+ (local.get $6)
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.tee $9
+ (i32.add
+ (i32.load8_s
+ (local.tee $10
+ (i32.add
+ (local.get $10)
+ (i32.const 1)
+ )
+ )
)
+ (i32.const -48)
)
)
- (i32.const -48)
+ (i32.const 10)
+ )
+ (then
+ (block
+ (local.set $11
+ (local.get $6)
+ )
+ (local.set $6
+ (local.get $9)
+ )
+ (br $while-in8)
+ )
)
)
- (i32.const 10)
)
- (block
- (local.set $11
+ (if
+ (i32.lt_s
(local.get $6)
+ (i32.const 0)
)
- (local.set $6
- (local.get $9)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
+ )
+ (else
+ (block
+ (local.set $11
+ (local.get $1)
+ )
+ (local.set $1
+ (local.get $8)
+ )
+ (local.set $14
+ (local.get $6)
+ )
+ )
)
- (br $while-in8)
)
)
)
- (if
- (i32.lt_s
- (local.get $6)
- (i32.const 0)
- )
- (block
- (local.set $16
- (i32.const -1)
- )
- (br $label$break$L1)
- )
+ (else
(block
(local.set $11
(local.get $1)
@@ -9839,22 +10318,11 @@
(local.get $8)
)
(local.set $14
- (local.get $6)
+ (i32.const 0)
)
)
)
)
- (block
- (local.set $11
- (local.get $1)
- )
- (local.set $1
- (local.get $8)
- )
- (local.set $14
- (i32.const 0)
- )
- )
)
)
)
@@ -9867,207 +10335,227 @@
)
(i32.const 46)
)
- (block (result i32)
- (if
- (i32.ne
- (local.tee $8
- (i32.load8_s
- (local.tee $6
- (i32.add
- (local.get $10)
- (i32.const 1)
+ (then
+ (block (result i32)
+ (if
+ (i32.ne
+ (local.tee $8
+ (i32.load8_s
+ (local.tee $6
+ (i32.add
+ (local.get $10)
+ (i32.const 1)
+ )
)
)
)
+ (i32.const 42)
)
- (i32.const 42)
- )
- (block
- (if
- (i32.lt_u
- (local.tee $9
- (i32.add
- (local.get $8)
- (i32.const -48)
- )
- )
- (i32.const 10)
- )
- (block
- (local.set $10
- (local.get $6)
- )
- (local.set $8
- (i32.const 0)
- )
- (local.set $6
- (local.get $9)
- )
- )
+ (then
(block
- (local.set $10
- (local.get $6)
- )
- (br $label$break$L46
- (i32.const 0)
- )
- )
- )
- (loop $while-in11
- (drop
- (br_if $label$break$L46
- (local.tee $6
- (i32.add
- (i32.mul
+ (if
+ (i32.lt_u
+ (local.tee $9
+ (i32.add
(local.get $8)
- (i32.const 10)
+ (i32.const -48)
)
- (local.get $6)
)
+ (i32.const 10)
)
- (i32.ge_u
- (local.tee $9
- (i32.add
- (i32.load8_s
- (local.tee $10
- (i32.add
- (local.get $10)
- (i32.const 1)
+ (then
+ (block
+ (local.set $10
+ (local.get $6)
+ )
+ (local.set $8
+ (i32.const 0)
+ )
+ (local.set $6
+ (local.get $9)
+ )
+ )
+ )
+ (else
+ (block
+ (local.set $10
+ (local.get $6)
+ )
+ (br $label$break$L46
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (loop $while-in11
+ (drop
+ (br_if $label$break$L46
+ (local.tee $6
+ (i32.add
+ (i32.mul
+ (local.get $8)
+ (i32.const 10)
+ )
+ (local.get $6)
+ )
+ )
+ (i32.ge_u
+ (local.tee $9
+ (i32.add
+ (i32.load8_s
+ (local.tee $10
+ (i32.add
+ (local.get $10)
+ (i32.const 1)
+ )
+ )
)
+ (i32.const -48)
)
)
- (i32.const -48)
+ (i32.const 10)
)
)
- (i32.const 10)
)
+ (local.set $8
+ (local.get $6)
+ )
+ (local.set $6
+ (local.get $9)
+ )
+ (br $while-in11)
)
)
- (local.set $8
- (local.get $6)
- )
- (local.set $6
- (local.get $9)
- )
- (br $while-in11)
)
)
- )
- (if
- (i32.lt_u
- (local.tee $8
- (i32.add
- (i32.load8_s
- (local.tee $6
- (i32.add
- (local.get $10)
- (i32.const 2)
+ (if
+ (i32.lt_u
+ (local.tee $8
+ (i32.add
+ (i32.load8_s
+ (local.tee $6
+ (i32.add
+ (local.get $10)
+ (i32.const 2)
+ )
)
)
+ (i32.const -48)
)
- (i32.const -48)
)
+ (i32.const 10)
)
- (i32.const 10)
- )
- (if
- (i32.eq
- (i32.load8_s offset=3
- (local.get $10)
- )
- (i32.const 36)
- )
- (block
- (i32.store
- (i32.add
- (local.get $4)
- (i32.shl
- (local.get $8)
- (i32.const 2)
+ (then
+ (if
+ (i32.eq
+ (i32.load8_s offset=3
+ (local.get $10)
)
+ (i32.const 36)
)
- (i32.const 10)
- )
- (drop
- (i32.load offset=4
- (local.tee $6
- (i32.add
- (local.get $3)
- (i32.shl
- (i32.add
- (i32.load8_s
- (local.get $6)
+ (then
+ (block
+ (i32.store
+ (i32.add
+ (local.get $4)
+ (i32.shl
+ (local.get $8)
+ (i32.const 2)
+ )
+ )
+ (i32.const 10)
+ )
+ (drop
+ (i32.load offset=4
+ (local.tee $6
+ (i32.add
+ (local.get $3)
+ (i32.shl
+ (i32.add
+ (i32.load8_s
+ (local.get $6)
+ )
+ (i32.const -48)
+ )
+ (i32.const 3)
+ )
)
- (i32.const -48)
)
- (i32.const 3)
+ )
+ )
+ (local.set $10
+ (i32.add
+ (local.get $10)
+ (i32.const 4)
+ )
+ )
+ (br $label$break$L46
+ (i32.load
+ (local.get $6)
)
)
)
)
)
- (local.set $10
- (i32.add
- (local.get $10)
- (i32.const 4)
- )
- )
- (br $label$break$L46
- (i32.load
- (local.get $6)
- )
- )
)
)
- )
- (if
- (local.get $1)
- (block
- (local.set $16
- (i32.const -1)
+ (if
+ (local.get $1)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
+ )
)
- (br $label$break$L1)
)
- )
- (if (result i32)
- (local.get $29)
- (block (result i32)
- (local.set $8
- (i32.load
- (local.tee $10
- (i32.and
- (i32.add
- (i32.load
- (local.get $2)
+ (if (result i32)
+ (local.get $29)
+ (then
+ (block (result i32)
+ (local.set $8
+ (i32.load
+ (local.tee $10
+ (i32.and
+ (i32.add
+ (i32.load
+ (local.get $2)
+ )
+ (i32.const 3)
+ )
+ (i32.const -4)
)
- (i32.const 3)
)
- (i32.const -4)
)
)
+ (i32.store
+ (local.get $2)
+ (i32.add
+ (local.get $10)
+ (i32.const 4)
+ )
+ )
+ (local.set $10
+ (local.get $6)
+ )
+ (local.get $8)
)
)
- (i32.store
- (local.get $2)
- (i32.add
- (local.get $10)
- (i32.const 4)
+ (else
+ (block (result i32)
+ (local.set $10
+ (local.get $6)
+ )
+ (i32.const 0)
)
)
- (local.set $10
- (local.get $6)
- )
- (local.get $8)
- )
- (block (result i32)
- (local.set $10
- (local.get $6)
- )
- (i32.const 0)
)
)
)
- (i32.const -1)
+ (else
+ (i32.const -1)
+ )
)
)
)
@@ -10090,11 +10578,13 @@
)
(i32.const 57)
)
- (block
- (local.set $16
- (i32.const -1)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (br $label$break$L1)
)
)
(local.set $10
@@ -10129,17 +10619,21 @@
)
(i32.const 8)
)
- (block
- (local.set $8
- (local.get $10)
- )
- (local.set $9
- (local.get $12)
+ (then
+ (block
+ (local.set $8
+ (local.get $10)
+ )
+ (local.set $9
+ (local.get $12)
+ )
+ (br $while-in13)
)
- (br $while-in13)
)
- (local.set $18
- (local.get $8)
+ (else
+ (local.set $18
+ (local.get $8)
+ )
)
)
)
@@ -10150,11 +10644,13 @@
(i32.const 255)
)
)
- (block
- (local.set $16
- (i32.const -1)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (br $label$break$L1)
)
)
(local.set $8
@@ -10173,74 +10669,86 @@
)
(i32.const 19)
)
- (if
- (local.get $8)
- (block
- (local.set $16
- (i32.const -1)
- )
- (br $label$break$L1)
- )
- (br $__rjti$2)
- )
- (block
+ (then
(if
(local.get $8)
- (block
- (i32.store
- (i32.add
- (local.get $4)
- (i32.shl
- (local.get $17)
- (i32.const 2)
- )
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
)
- (local.get $12)
+ (br $label$break$L1)
)
- (local.set $13
- (i32.load offset=4
- (local.tee $12
+ )
+ (else
+ (br $__rjti$2)
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (local.get $8)
+ (then
+ (block
+ (i32.store
(i32.add
- (local.get $3)
+ (local.get $4)
(i32.shl
(local.get $17)
- (i32.const 3)
+ (i32.const 2)
)
)
+ (local.get $12)
+ )
+ (local.set $13
+ (i32.load offset=4
+ (local.tee $12
+ (i32.add
+ (local.get $3)
+ (i32.shl
+ (local.get $17)
+ (i32.const 3)
+ )
+ )
+ )
+ )
+ )
+ (i32.store
+ (local.tee $8
+ (local.get $19)
+ )
+ (i32.load
+ (local.get $12)
+ )
)
+ (i32.store offset=4
+ (local.get $8)
+ (local.get $13)
+ )
+ (br $__rjti$2)
)
)
- (i32.store
- (local.tee $8
- (local.get $19)
- )
- (i32.load
- (local.get $12)
- )
+ )
+ (if
+ (i32.eqz
+ (local.get $29)
)
- (i32.store offset=4
- (local.get $8)
- (local.get $13)
+ (then
+ (block
+ (local.set $16
+ (i32.const 0)
+ )
+ (br $label$break$L1)
+ )
)
- (br $__rjti$2)
)
- )
- (if
- (i32.eqz
- (local.get $29)
- )
- (block
- (local.set $16
- (i32.const 0)
- )
- (br $label$break$L1)
+ (call $_pop_arg_336
+ (local.get $19)
+ (local.get $12)
+ (local.get $2)
)
)
- (call $_pop_arg_336
- (local.get $19)
- (local.get $12)
- (local.get $2)
- )
)
)
(br $__rjto$2)
@@ -10249,14 +10757,16 @@
(i32.eqz
(local.get $29)
)
- (block
- (local.set $5
- (local.get $10)
- )
- (local.set $10
- (local.get $7)
+ (then
+ (block
+ (local.set $5
+ (local.get $10)
+ )
+ (local.set $10
+ (local.get $7)
+ )
+ (br $label$continue$L1)
)
- (br $label$continue$L1)
)
)
)
@@ -10521,50 +11031,54 @@
)
)
)
- (local.set $8
- (local.get $26)
- )
- (block
- (local.set $5
- (local.get $7)
- )
- (local.set $7
- (local.get $8)
- )
+ (then
(local.set $8
(local.get $26)
)
- (loop $while-in32
- (i32.store8
- (local.tee $8
- (i32.add
- (local.get $8)
- (i32.const -1)
+ )
+ (else
+ (block
+ (local.set $5
+ (local.get $7)
+ )
+ (local.set $7
+ (local.get $8)
+ )
+ (local.set $8
+ (local.get $26)
+ )
+ (loop $while-in32
+ (i32.store8
+ (local.tee $8
+ (i32.add
+ (local.get $8)
+ (i32.const -1)
+ )
)
- )
- (i32.or
- (i32.and
- (local.get $5)
- (i32.const 7)
+ (i32.or
+ (i32.and
+ (local.get $5)
+ (i32.const 7)
+ )
+ (i32.const 48)
)
- (i32.const 48)
)
- )
- (br_if $while-in32
- (i32.eqz
- (i32.and
- (i32.eqz
- (local.tee $5
- (call $_bitshift64Lshr
- (local.get $5)
- (local.get $7)
- (i32.const 3)
+ (br_if $while-in32
+ (i32.eqz
+ (i32.and
+ (i32.eqz
+ (local.tee $5
+ (call $_bitshift64Lshr
+ (local.get $5)
+ (local.get $7)
+ (i32.const 3)
+ )
)
)
- )
- (i32.eqz
- (local.tee $7
- (global.get $tempRet0)
+ (i32.eqz
+ (local.tee $7
+ (global.get $tempRet0)
+ )
)
)
)
@@ -10579,35 +11093,39 @@
(local.get $11)
(i32.const 8)
)
- (block (result i32)
- (local.set $7
- (local.get $11)
- )
- (local.set $6
- (select
- (local.tee $11
- (i32.add
- (i32.sub
- (local.get $39)
- (local.get $8)
+ (then
+ (block (result i32)
+ (local.set $7
+ (local.get $11)
+ )
+ (local.set $6
+ (select
+ (local.tee $11
+ (i32.add
+ (i32.sub
+ (local.get $39)
+ (local.get $8)
+ )
+ (i32.const 1)
)
- (i32.const 1)
)
- )
- (local.get $6)
- (i32.lt_s
(local.get $6)
- (local.get $11)
+ (i32.lt_s
+ (local.get $6)
+ (local.get $11)
+ )
)
)
+ (local.get $8)
)
- (local.get $8)
)
- (block (result i32)
- (local.set $7
- (local.get $11)
+ (else
+ (block (result i32)
+ (local.set $7
+ (local.get $11)
+ )
+ (local.get $8)
)
- (local.get $8)
)
)
)
@@ -10635,33 +11153,35 @@
)
(i32.const 0)
)
- (block
- (i32.store
- (local.tee $8
- (local.get $19)
+ (then
+ (block
+ (i32.store
+ (local.tee $8
+ (local.get $19)
+ )
+ (local.tee $5
+ (call $_i64Subtract
+ (i32.const 0)
+ (i32.const 0)
+ (local.get $5)
+ (local.get $7)
+ )
+ )
)
- (local.tee $5
- (call $_i64Subtract
- (i32.const 0)
- (i32.const 0)
- (local.get $5)
- (local.get $7)
+ (i32.store offset=4
+ (local.get $8)
+ (local.tee $7
+ (global.get $tempRet0)
)
)
- )
- (i32.store offset=4
- (local.get $8)
- (local.tee $7
- (global.get $tempRet0)
+ (local.set $8
+ (i32.const 1)
)
+ (local.set $9
+ (i32.const 4091)
+ )
+ (br $__rjti$4)
)
- (local.set $8
- (i32.const 1)
- )
- (local.set $9
- (i32.const 4091)
- )
- (br $__rjti$4)
)
)
(local.set $9
@@ -10670,25 +11190,29 @@
(local.get $11)
(i32.const 2048)
)
- (block (result i32)
- (local.set $8
- (i32.const 1)
+ (then
+ (block (result i32)
+ (local.set $8
+ (i32.const 1)
+ )
+ (i32.const 4092)
)
- (i32.const 4092)
)
- (block (result i32)
- (local.set $8
- (local.tee $9
- (i32.and
- (local.get $11)
- (i32.const 1)
+ (else
+ (block (result i32)
+ (local.set $8
+ (local.tee $9
+ (i32.and
+ (local.get $11)
+ (i32.const 1)
+ )
)
)
- )
- (select
- (i32.const 4093)
- (i32.const 4091)
- (local.get $9)
+ (select
+ (i32.const 4093)
+ (i32.const 4091)
+ (local.get $9)
+ )
)
)
)
@@ -10797,24 +11321,28 @@
)
(if
(local.get $6)
- (block
- (local.set $8
- (local.get $6)
+ (then
+ (block
+ (local.set $8
+ (local.get $6)
+ )
+ (br $__rjti$6)
)
- (br $__rjti$6)
)
- (block
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (i32.const 0)
- (local.get $11)
- )
- (local.set $7
- (i32.const 0)
+ (else
+ (block
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
+ (i32.const 0)
+ (local.get $11)
+ )
+ (local.set $7
+ (i32.const 0)
+ )
+ (br $__rjti$7)
)
- (br $__rjti$7)
)
)
)
@@ -10844,41 +11372,49 @@
)
(i32.const 0)
)
- (block (result i32)
- (local.set $27
- (i32.const 1)
- )
- (local.set $15
- (f64.neg
- (local.get $15)
- )
- )
- (i32.const 4108)
- )
- (if (result i32)
- (i32.and
- (local.get $11)
- (i32.const 2048)
- )
+ (then
(block (result i32)
(local.set $27
(i32.const 1)
)
- (i32.const 4111)
+ (local.set $15
+ (f64.neg
+ (local.get $15)
+ )
+ )
+ (i32.const 4108)
)
- (block (result i32)
- (local.set $27
- (local.tee $5
- (i32.and
- (local.get $11)
+ )
+ (else
+ (if (result i32)
+ (i32.and
+ (local.get $11)
+ (i32.const 2048)
+ )
+ (then
+ (block (result i32)
+ (local.set $27
(i32.const 1)
)
+ (i32.const 4111)
)
)
- (select
- (i32.const 4114)
- (i32.const 4109)
- (local.get $5)
+ (else
+ (block (result i32)
+ (local.set $27
+ (local.tee $5
+ (i32.and
+ (local.get $11)
+ (i32.const 1)
+ )
+ )
+ )
+ (select
+ (i32.const 4114)
+ (i32.const 4109)
+ (local.get $5)
+ )
+ )
)
)
)
@@ -10916,2124 +11452,2096 @@
(i32.const 0)
)
)
- (block (result i32)
- (if
- (local.tee $5
- (f64.ne
- (local.tee $23
- (f64.mul
- (call $_frexp
- (local.get $15)
- (local.tee $5
- (local.get $20)
+ (then
+ (block (result i32)
+ (if
+ (local.tee $5
+ (f64.ne
+ (local.tee $23
+ (f64.mul
+ (call $_frexp
+ (local.get $15)
+ (local.tee $5
+ (local.get $20)
+ )
)
+ (f64.const 2)
)
- (f64.const 2)
)
+ (f64.const 0)
)
- (f64.const 0)
)
- )
- (i32.store
- (local.get $20)
- (i32.add
- (i32.load
+ (then
+ (i32.store
(local.get $20)
- )
- (i32.const -1)
- )
- )
- )
- (if
- (i32.eq
- (local.tee $24
- (i32.or
- (local.get $18)
- (i32.const 32)
- )
- )
- (i32.const 97)
- )
- (block
- (local.set $9
- (select
(i32.add
- (local.get $31)
- (i32.const 9)
- )
- (local.get $31)
- (local.tee $13
- (i32.and
- (local.get $18)
- (i32.const 32)
+ (i32.load
+ (local.get $20)
)
+ (i32.const -1)
)
)
)
- (local.set $15
- (if (result f64)
+ )
+ (if
+ (i32.eq
+ (local.tee $24
(i32.or
- (i32.gt_u
- (local.get $6)
- (i32.const 11)
- )
- (i32.eqz
- (local.tee $5
- (i32.sub
- (i32.const 12)
- (local.get $6)
- )
- )
- )
+ (local.get $18)
+ (i32.const 32)
)
- (local.get $23)
- (block (result f64)
- (local.set $15
- (f64.const 8)
- )
- (loop $while-in54
- (local.set $15
- (f64.mul
- (local.get $15)
- (f64.const 16)
- )
+ )
+ (i32.const 97)
+ )
+ (then
+ (block
+ (local.set $9
+ (select
+ (i32.add
+ (local.get $31)
+ (i32.const 9)
)
- (br_if $while-in54
- (local.tee $5
- (i32.add
- (local.get $5)
- (i32.const -1)
- )
+ (local.get $31)
+ (local.tee $13
+ (i32.and
+ (local.get $18)
+ (i32.const 32)
)
)
)
+ )
+ (local.set $15
(if (result f64)
- (i32.eq
- (i32.load8_s
- (local.get $9)
+ (i32.or
+ (i32.gt_u
+ (local.get $6)
+ (i32.const 11)
)
- (i32.const 45)
- )
- (f64.neg
- (f64.add
- (local.get $15)
- (f64.sub
- (f64.neg
- (local.get $23)
+ (i32.eqz
+ (local.tee $5
+ (i32.sub
+ (i32.const 12)
+ (local.get $6)
)
- (local.get $15)
)
)
)
- (f64.sub
- (f64.add
- (local.get $23)
- (local.get $15)
+ (then
+ (local.get $23)
+ )
+ (else
+ (block (result f64)
+ (local.set $15
+ (f64.const 8)
+ )
+ (loop $while-in54
+ (local.set $15
+ (f64.mul
+ (local.get $15)
+ (f64.const 16)
+ )
+ )
+ (br_if $while-in54
+ (local.tee $5
+ (i32.add
+ (local.get $5)
+ (i32.const -1)
+ )
+ )
+ )
+ )
+ (if (result f64)
+ (i32.eq
+ (i32.load8_s
+ (local.get $9)
+ )
+ (i32.const 45)
+ )
+ (then
+ (f64.neg
+ (f64.add
+ (local.get $15)
+ (f64.sub
+ (f64.neg
+ (local.get $23)
+ )
+ (local.get $15)
+ )
+ )
+ )
+ )
+ (else
+ (f64.sub
+ (f64.add
+ (local.get $23)
+ (local.get $15)
+ )
+ (local.get $15)
+ )
+ )
+ )
)
- (local.get $15)
)
)
)
- )
- )
- (if
- (i32.eq
- (local.tee $5
- (call $_fmt_u
+ (if
+ (i32.eq
(local.tee $5
- (select
- (i32.sub
- (i32.const 0)
- (local.tee $7
- (i32.load
- (local.get $20)
+ (call $_fmt_u
+ (local.tee $5
+ (select
+ (i32.sub
+ (i32.const 0)
+ (local.tee $7
+ (i32.load
+ (local.get $20)
+ )
+ )
+ )
+ (local.get $7)
+ (i32.lt_s
+ (local.get $7)
+ (i32.const 0)
)
)
)
- (local.get $7)
- (i32.lt_s
- (local.get $7)
- (i32.const 0)
+ (i32.shr_s
+ (i32.shl
+ (i32.lt_s
+ (local.get $5)
+ (i32.const 0)
+ )
+ (i32.const 31)
+ )
+ (i32.const 31)
)
+ (local.get $34)
)
)
- (i32.shr_s
- (i32.shl
- (i32.lt_s
- (local.get $5)
- (i32.const 0)
- )
- (i32.const 31)
+ (local.get $34)
+ )
+ (then
+ (block
+ (i32.store8
+ (local.get $42)
+ (i32.const 48)
+ )
+ (local.set $5
+ (local.get $42)
)
- (i32.const 31)
)
- (local.get $34)
)
)
- (local.get $34)
- )
- (block
+ (local.set $12
+ (i32.or
+ (local.get $27)
+ (i32.const 2)
+ )
+ )
(i32.store8
- (local.get $42)
- (i32.const 48)
+ (i32.add
+ (local.get $5)
+ (i32.const -1)
+ )
+ (i32.add
+ (i32.and
+ (i32.shr_s
+ (local.get $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
+ (i32.const 43)
+ )
)
- (local.set $5
- (local.get $42)
+ (i32.store8
+ (local.tee $8
+ (i32.add
+ (local.get $5)
+ (i32.const -2)
+ )
+ )
+ (i32.add
+ (local.get $18)
+ (i32.const 15)
+ )
)
- )
- )
- (local.set $12
- (i32.or
- (local.get $27)
- (i32.const 2)
- )
- )
- (i32.store8
- (i32.add
- (local.get $5)
- (i32.const -1)
- )
- (i32.add
- (i32.and
- (i32.shr_s
- (local.get $7)
- (i32.const 31)
+ (local.set $18
+ (i32.lt_s
+ (local.get $6)
+ (i32.const 1)
)
- (i32.const 2)
)
- (i32.const 43)
- )
- )
- (i32.store8
- (local.tee $8
- (i32.add
- (local.get $5)
- (i32.const -2)
+ (local.set $17
+ (i32.eqz
+ (i32.and
+ (local.get $11)
+ (i32.const 8)
+ )
+ )
)
- )
- (i32.add
- (local.get $18)
- (i32.const 15)
- )
- )
- (local.set $18
- (i32.lt_s
- (local.get $6)
- (i32.const 1)
- )
- )
- (local.set $17
- (i32.eqz
- (i32.and
- (local.get $11)
- (i32.const 8)
+ (local.set $5
+ (local.get $22)
)
- )
- )
- (local.set $5
- (local.get $22)
- )
- (loop $while-in56
- (i32.store8
- (local.get $5)
- (i32.or
- (i32.load8_u
- (i32.add
- (local.tee $7
- (call $f64-to-int
- (local.get $15)
+ (loop $while-in56
+ (i32.store8
+ (local.get $5)
+ (i32.or
+ (i32.load8_u
+ (i32.add
+ (local.tee $7
+ (call $f64-to-int
+ (local.get $15)
+ )
+ )
+ (i32.const 4075)
)
)
- (i32.const 4075)
+ (local.get $13)
)
)
- (local.get $13)
- )
- )
- (local.set $15
- (f64.mul
- (f64.sub
- (local.get $15)
- (f64.convert_i32_s
- (local.get $7)
+ (local.set $15
+ (f64.mul
+ (f64.sub
+ (local.get $15)
+ (f64.convert_i32_s
+ (local.get $7)
+ )
+ )
+ (f64.const 16)
)
)
- (f64.const 16)
- )
- )
- (local.set $5
- (block $do-once57 (result i32)
- (if (result i32)
- (i32.eq
- (i32.sub
- (local.tee $7
- (i32.add
- (local.get $5)
- (i32.const 1)
+ (local.set $5
+ (block $do-once57 (result i32)
+ (if (result i32)
+ (i32.eq
+ (i32.sub
+ (local.tee $7
+ (i32.add
+ (local.get $5)
+ (i32.const 1)
+ )
+ )
+ (local.get $37)
)
+ (i32.const 1)
+ )
+ (then
+ (block (result i32)
+ (drop
+ (br_if $do-once57
+ (local.get $7)
+ (i32.and
+ (local.get $17)
+ (i32.and
+ (local.get $18)
+ (f64.eq
+ (local.get $15)
+ (f64.const 0)
+ )
+ )
+ )
+ )
+ )
+ (i32.store8
+ (local.get $7)
+ (i32.const 46)
+ )
+ (i32.add
+ (local.get $5)
+ (i32.const 2)
+ )
+ )
+ )
+ (else
+ (local.get $7)
)
- (local.get $37)
)
- (i32.const 1)
)
- (block (result i32)
- (drop
- (br_if $do-once57
- (local.get $7)
+ )
+ (br_if $while-in56
+ (f64.ne
+ (local.get $15)
+ (f64.const 0)
+ )
+ )
+ )
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
+ (local.tee $7
+ (i32.add
+ (local.tee $6
+ (select
+ (i32.sub
+ (i32.add
+ (local.get $47)
+ (local.get $6)
+ )
+ (local.get $8)
+ )
+ (i32.add
+ (i32.sub
+ (local.get $45)
+ (local.get $8)
+ )
+ (local.get $5)
+ )
(i32.and
- (local.get $17)
- (i32.and
- (local.get $18)
- (f64.eq
- (local.get $15)
- (f64.const 0)
+ (i32.ne
+ (local.get $6)
+ (i32.const 0)
+ )
+ (i32.lt_s
+ (i32.add
+ (local.get $46)
+ (local.get $5)
)
+ (local.get $6)
)
)
)
)
- (i32.store8
- (local.get $7)
- (i32.const 46)
+ (local.get $12)
+ )
+ )
+ (local.get $11)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
)
- (i32.add
- (local.get $5)
- (i32.const 2)
+ (i32.const 32)
+ )
+ )
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $9)
+ (local.get $12)
+ (local.get $0)
)
)
- (local.get $7)
)
)
- )
- (br_if $while-in56
- (f64.ne
- (local.get $15)
- (f64.const 0)
+ (call $_pad
+ (local.get $0)
+ (i32.const 48)
+ (local.get $14)
+ (local.get $7)
+ (i32.xor
+ (local.get $11)
+ (i32.const 65536)
+ )
)
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.tee $7
- (i32.add
- (local.tee $6
- (select
- (i32.sub
- (i32.add
- (local.get $47)
- (local.get $6)
- )
- (local.get $8)
+ (local.set $5
+ (i32.sub
+ (local.get $5)
+ (local.get $37)
+ )
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
)
- (i32.add
- (i32.sub
- (local.get $45)
- (local.get $8)
- )
+ (i32.const 32)
+ )
+ )
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $22)
(local.get $5)
+ (local.get $0)
)
- (i32.and
- (i32.ne
- (local.get $6)
- (i32.const 0)
- )
- (i32.lt_s
- (i32.add
- (local.get $46)
- (local.get $5)
- )
- (local.get $6)
+ )
+ )
+ )
+ (call $_pad
+ (local.get $0)
+ (i32.const 48)
+ (i32.sub
+ (local.get $6)
+ (i32.add
+ (local.get $5)
+ (local.tee $5
+ (i32.sub
+ (local.get $28)
+ (local.get $8)
)
)
)
)
- (local.get $12)
+ (i32.const 0)
+ (i32.const 0)
)
- )
- (local.get $11)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
)
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $9)
- (local.get $12)
- (local.get $0)
- )
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 48)
- (local.get $14)
- (local.get $7)
- (i32.xor
- (local.get $11)
- (i32.const 65536)
- )
- )
- (local.set $5
- (i32.sub
- (local.get $5)
- (local.get $37)
- )
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $8)
+ (local.get $5)
+ (local.get $0)
+ )
+ )
)
- (i32.const 32)
)
- )
- (drop
- (call $___fwritex
- (local.get $22)
- (local.get $5)
+ (call $_pad
(local.get $0)
+ (i32.const 32)
+ (local.get $14)
+ (local.get $7)
+ (i32.xor
+ (local.get $11)
+ (i32.const 8192)
+ )
)
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 48)
- (i32.sub
- (local.get $6)
- (i32.add
- (local.get $5)
- (local.tee $5
- (i32.sub
- (local.get $28)
- (local.get $8)
+ (br $do-once49
+ (select
+ (local.get $14)
+ (local.get $7)
+ (i32.lt_s
+ (local.get $7)
+ (local.get $14)
)
)
)
)
- (i32.const 0)
- (i32.const 0)
)
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ )
+ (local.set $15
+ (if (result f64)
+ (local.get $5)
+ (then
+ (block (result f64)
+ (i32.store
+ (local.get $20)
+ (local.tee $5
+ (i32.add
+ (i32.load
+ (local.get $20)
+ )
+ (i32.const -28)
+ )
+ )
+ )
+ (f64.mul
+ (local.get $23)
+ (f64.const 268435456)
)
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $8)
- (local.get $5)
- (local.get $0)
- )
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.get $7)
- (i32.xor
- (local.get $11)
- (i32.const 8192)
- )
- )
- (br $do-once49
- (select
- (local.get $14)
- (local.get $7)
- (i32.lt_s
- (local.get $7)
- (local.get $14)
)
)
- )
- )
- )
- (local.set $15
- (if (result f64)
- (local.get $5)
- (block (result f64)
- (i32.store
- (local.get $20)
- (local.tee $5
- (i32.add
+ (else
+ (block (result f64)
+ (local.set $5
(i32.load
(local.get $20)
)
- (i32.const -28)
)
+ (local.get $23)
)
)
- (f64.mul
- (local.get $23)
- (f64.const 268435456)
- )
)
- (block (result f64)
- (local.set $5
- (i32.load
- (local.get $20)
+ )
+ (local.set $7
+ (local.tee $8
+ (select
+ (local.get $48)
+ (local.get $49)
+ (i32.lt_s
+ (local.get $5)
+ (i32.const 0)
)
)
- (local.get $23)
)
)
- )
- (local.set $7
- (local.tee $8
- (select
- (local.get $48)
- (local.get $49)
- (i32.lt_s
- (local.get $5)
- (i32.const 0)
+ (loop $while-in60
+ (i32.store
+ (local.get $7)
+ (local.tee $5
+ (call $f64-to-int
+ (local.get $15)
+ )
)
)
- )
- )
- (loop $while-in60
- (i32.store
- (local.get $7)
- (local.tee $5
- (call $f64-to-int
- (local.get $15)
+ (local.set $7
+ (i32.add
+ (local.get $7)
+ (i32.const 4)
)
)
- )
- (local.set $7
- (i32.add
- (local.get $7)
- (i32.const 4)
- )
- )
- (br_if $while-in60
- (f64.ne
- (local.tee $15
- (f64.mul
- (f64.sub
- (local.get $15)
- (f64.convert_i32_u
- (local.get $5)
+ (br_if $while-in60
+ (f64.ne
+ (local.tee $15
+ (f64.mul
+ (f64.sub
+ (local.get $15)
+ (f64.convert_i32_u
+ (local.get $5)
+ )
)
+ (f64.const 1e9)
)
- (f64.const 1e9)
)
+ (f64.const 0)
)
- (f64.const 0)
)
)
- )
- (if
- (i32.gt_s
- (local.tee $9
- (i32.load
- (local.get $20)
+ (if
+ (i32.gt_s
+ (local.tee $9
+ (i32.load
+ (local.get $20)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
- )
- (block
- (local.set $5
- (local.get $8)
- )
- (loop $while-in62
- (local.set $13
- (select
- (i32.const 29)
- (local.get $9)
- (i32.gt_s
- (local.get $9)
- (i32.const 29)
- )
+ (then
+ (block
+ (local.set $5
+ (local.get $8)
)
- )
- (block $do-once63
- (if
- (i32.ge_u
- (local.tee $9
- (i32.add
- (local.get $7)
- (i32.const -4)
+ (loop $while-in62
+ (local.set $13
+ (select
+ (i32.const 29)
+ (local.get $9)
+ (i32.gt_s
+ (local.get $9)
+ (i32.const 29)
)
)
- (local.get $5)
)
- (block
- (local.set $12
- (i32.const 0)
- )
- (loop $while-in66
- (i32.store
- (local.get $9)
- (call $___uremdi3
- (local.tee $12
- (call $_i64Add
- (call $_bitshift64Shl
- (i32.load
- (local.get $9)
+ (block $do-once63
+ (if
+ (i32.ge_u
+ (local.tee $9
+ (i32.add
+ (local.get $7)
+ (i32.const -4)
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (block
+ (local.set $12
+ (i32.const 0)
+ )
+ (loop $while-in66
+ (i32.store
+ (local.get $9)
+ (call $___uremdi3
+ (local.tee $12
+ (call $_i64Add
+ (call $_bitshift64Shl
+ (i32.load
+ (local.get $9)
+ )
+ (i32.const 0)
+ (local.get $13)
+ )
+ (global.get $tempRet0)
+ (local.get $12)
+ (i32.const 0)
+ )
)
+ (local.tee $17
+ (global.get $tempRet0)
+ )
+ (i32.const 1000000000)
(i32.const 0)
- (local.get $13)
)
- (global.get $tempRet0)
- (local.get $12)
- (i32.const 0)
+ )
+ (local.set $12
+ (call $___udivdi3
+ (local.get $12)
+ (local.get $17)
+ (i32.const 1000000000)
+ (i32.const 0)
+ )
+ )
+ (br_if $while-in66
+ (i32.ge_u
+ (local.tee $9
+ (i32.add
+ (local.get $9)
+ (i32.const -4)
+ )
+ )
+ (local.get $5)
+ )
)
)
- (local.tee $17
- (global.get $tempRet0)
+ (br_if $do-once63
+ (i32.eqz
+ (local.get $12)
+ )
)
- (i32.const 1000000000)
- (i32.const 0)
- )
- )
- (local.set $12
- (call $___udivdi3
- (local.get $12)
- (local.get $17)
- (i32.const 1000000000)
- (i32.const 0)
- )
- )
- (br_if $while-in66
- (i32.ge_u
- (local.tee $9
- (i32.add
- (local.get $9)
- (i32.const -4)
+ (i32.store
+ (local.tee $5
+ (i32.add
+ (local.get $5)
+ (i32.const -4)
+ )
)
+ (local.get $12)
)
- (local.get $5)
)
)
)
- (br_if $do-once63
- (i32.eqz
- (local.get $12)
+ )
+ (loop $while-in68
+ (if
+ (i32.gt_u
+ (local.get $7)
+ (local.get $5)
)
- )
- (i32.store
- (local.tee $5
- (i32.add
- (local.get $5)
- (i32.const -4)
+ (then
+ (if
+ (i32.eqz
+ (i32.load
+ (local.tee $9
+ (i32.add
+ (local.get $7)
+ (i32.const -4)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $7
+ (local.get $9)
+ )
+ (br $while-in68)
+ )
+ )
)
)
- (local.get $12)
)
)
- )
- )
- (loop $while-in68
- (if
- (i32.gt_u
- (local.get $7)
- (local.get $5)
- )
- (if
- (i32.eqz
- (i32.load
- (local.tee $9
- (i32.add
- (local.get $7)
- (i32.const -4)
- )
+ (i32.store
+ (local.get $20)
+ (local.tee $9
+ (i32.sub
+ (i32.load
+ (local.get $20)
)
+ (local.get $13)
)
)
- (block
- (local.set $7
- (local.get $9)
- )
- (br $while-in68)
- )
)
- )
- )
- (i32.store
- (local.get $20)
- (local.tee $9
- (i32.sub
- (i32.load
- (local.get $20)
+ (br_if $while-in62
+ (i32.gt_s
+ (local.get $9)
+ (i32.const 0)
)
- (local.get $13)
)
)
)
- (br_if $while-in62
- (i32.gt_s
- (local.get $9)
- (i32.const 0)
- )
+ )
+ (else
+ (local.set $5
+ (local.get $8)
)
)
)
- (local.set $5
- (local.get $8)
+ (local.set $17
+ (select
+ (i32.const 6)
+ (local.get $6)
+ (i32.lt_s
+ (local.get $6)
+ (i32.const 0)
+ )
+ )
)
- )
- (local.set $17
- (select
- (i32.const 6)
- (local.get $6)
+ (if
(i32.lt_s
- (local.get $6)
+ (local.get $9)
(i32.const 0)
)
- )
- )
- (if
- (i32.lt_s
- (local.get $9)
- (i32.const 0)
- )
- (block
- (local.set $21
- (i32.add
- (call $i32s-div
+ (then
+ (block
+ (local.set $21
(i32.add
- (local.get $17)
- (i32.const 25)
- )
- (i32.const 9)
- )
- (i32.const 1)
- )
- )
- (local.set $32
- (i32.eq
- (local.get $24)
- (i32.const 102)
- )
- )
- (local.set $6
- (local.get $5)
- )
- (local.set $5
- (local.get $7)
- )
- (loop $while-in70
- (local.set $13
- (select
- (i32.const 9)
- (local.tee $7
- (i32.sub
- (i32.const 0)
- (local.get $9)
+ (call $i32s-div
+ (i32.add
+ (local.get $17)
+ (i32.const 25)
+ )
+ (i32.const 9)
)
- )
- (i32.gt_s
- (local.get $7)
- (i32.const 9)
+ (i32.const 1)
)
)
- )
- (block $do-once71
- (if
- (i32.lt_u
- (local.get $6)
- (local.get $5)
+ (local.set $32
+ (i32.eq
+ (local.get $24)
+ (i32.const 102)
)
- (block
- (local.set $12
- (i32.add
- (i32.shl
- (i32.const 1)
- (local.get $13)
+ )
+ (local.set $6
+ (local.get $5)
+ )
+ (local.set $5
+ (local.get $7)
+ )
+ (loop $while-in70
+ (local.set $13
+ (select
+ (i32.const 9)
+ (local.tee $7
+ (i32.sub
+ (i32.const 0)
+ (local.get $9)
)
- (i32.const -1)
)
- )
- (local.set $38
- (i32.shr_u
- (i32.const 1000000000)
- (local.get $13)
+ (i32.gt_s
+ (local.get $7)
+ (i32.const 9)
)
)
- (local.set $9
- (i32.const 0)
- )
- (local.set $7
- (local.get $6)
- )
- (loop $while-in74
- (i32.store
- (local.get $7)
- (i32.add
- (i32.shr_u
- (local.tee $33
+ )
+ (block $do-once71
+ (if
+ (i32.lt_u
+ (local.get $6)
+ (local.get $5)
+ )
+ (then
+ (block
+ (local.set $12
+ (i32.add
+ (i32.shl
+ (i32.const 1)
+ (local.get $13)
+ )
+ (i32.const -1)
+ )
+ )
+ (local.set $38
+ (i32.shr_u
+ (i32.const 1000000000)
+ (local.get $13)
+ )
+ )
+ (local.set $9
+ (i32.const 0)
+ )
+ (local.set $7
+ (local.get $6)
+ )
+ (loop $while-in74
+ (i32.store
+ (local.get $7)
+ (i32.add
+ (i32.shr_u
+ (local.tee $33
+ (i32.load
+ (local.get $7)
+ )
+ )
+ (local.get $13)
+ )
+ (local.get $9)
+ )
+ )
+ (local.set $9
+ (i32.mul
+ (i32.and
+ (local.get $33)
+ (local.get $12)
+ )
+ (local.get $38)
+ )
+ )
+ (br_if $while-in74
+ (i32.lt_u
+ (local.tee $7
+ (i32.add
+ (local.get $7)
+ (i32.const 4)
+ )
+ )
+ (local.get $5)
+ )
+ )
+ )
+ (local.set $7
+ (select
+ (local.get $6)
+ (i32.add
+ (local.get $6)
+ (i32.const 4)
+ )
(i32.load
- (local.get $7)
+ (local.get $6)
)
)
- (local.get $13)
)
- (local.get $9)
- )
- )
- (local.set $9
- (i32.mul
- (i32.and
- (local.get $33)
- (local.get $12)
+ (br_if $do-once71
+ (i32.eqz
+ (local.get $9)
+ )
+ )
+ (i32.store
+ (local.get $5)
+ (local.get $9)
+ )
+ (local.set $5
+ (i32.add
+ (local.get $5)
+ (i32.const 4)
+ )
)
- (local.get $38)
)
)
- (br_if $while-in74
- (i32.lt_u
- (local.tee $7
+ (else
+ (local.set $7
+ (select
+ (local.get $6)
(i32.add
- (local.get $7)
+ (local.get $6)
(i32.const 4)
)
+ (i32.load
+ (local.get $6)
+ )
)
- (local.get $5)
)
)
)
- (local.set $7
- (select
- (local.get $6)
- (i32.add
- (local.get $6)
- (i32.const 4)
+ )
+ (local.set $12
+ (select
+ (i32.add
+ (local.tee $6
+ (select
+ (local.get $8)
+ (local.get $7)
+ (local.get $32)
+ )
)
- (i32.load
- (local.get $6)
+ (i32.shl
+ (local.get $21)
+ (i32.const 2)
)
)
- )
- (br_if $do-once71
- (i32.eqz
- (local.get $9)
- )
- )
- (i32.store
(local.get $5)
- (local.get $9)
- )
- (local.set $5
- (i32.add
- (local.get $5)
- (i32.const 4)
+ (i32.gt_s
+ (i32.shr_s
+ (i32.sub
+ (local.get $5)
+ (local.get $6)
+ )
+ (i32.const 2)
+ )
+ (local.get $21)
)
)
)
- (local.set $7
- (select
- (local.get $6)
+ (i32.store
+ (local.get $20)
+ (local.tee $9
(i32.add
- (local.get $6)
- (i32.const 4)
- )
- (i32.load
- (local.get $6)
+ (i32.load
+ (local.get $20)
+ )
+ (local.get $13)
)
)
)
- )
- )
- (local.set $12
- (select
- (i32.add
- (local.tee $6
- (select
- (local.get $8)
- (local.get $7)
- (local.get $32)
- )
- )
- (i32.shl
- (local.get $21)
- (i32.const 2)
+ (if
+ (i32.lt_s
+ (local.get $9)
+ (i32.const 0)
)
- )
- (local.get $5)
- (i32.gt_s
- (i32.shr_s
- (i32.sub
- (local.get $5)
- (local.get $6)
+ (then
+ (block
+ (local.set $6
+ (local.get $7)
+ )
+ (local.set $5
+ (local.get $12)
+ )
+ (br $while-in70)
)
- (i32.const 2)
)
- (local.get $21)
- )
- )
- )
- (i32.store
- (local.get $20)
- (local.tee $9
- (i32.add
- (i32.load
- (local.get $20)
+ (else
+ (block
+ (local.set $5
+ (local.get $7)
+ )
+ (local.set $9
+ (local.get $12)
+ )
+ )
)
- (local.get $13)
)
)
)
- (if
- (i32.lt_s
- (local.get $9)
- (i32.const 0)
- )
- (block
- (local.set $6
- (local.get $7)
- )
- (local.set $5
- (local.get $12)
- )
- (br $while-in70)
- )
- (block
- (local.set $5
- (local.get $7)
- )
- (local.set $9
- (local.get $12)
- )
- )
+ )
+ (else
+ (local.set $9
+ (local.get $7)
)
)
)
- (local.set $9
- (local.get $7)
+ (local.set $21
+ (local.get $8)
)
- )
- (local.set $21
- (local.get $8)
- )
- (block $do-once75
- (if
- (i32.lt_u
- (local.get $5)
- (local.get $9)
- )
- (block
- (local.set $7
- (i32.mul
- (i32.shr_s
- (i32.sub
- (local.get $21)
- (local.get $5)
+ (block $do-once75
+ (if
+ (i32.lt_u
+ (local.get $5)
+ (local.get $9)
+ )
+ (then
+ (block
+ (local.set $7
+ (i32.mul
+ (i32.shr_s
+ (i32.sub
+ (local.get $21)
+ (local.get $5)
+ )
+ (i32.const 2)
+ )
+ (i32.const 9)
)
- (i32.const 2)
)
- (i32.const 9)
- )
- )
- (br_if $do-once75
- (i32.lt_u
- (local.tee $12
- (i32.load
- (local.get $5)
+ (br_if $do-once75
+ (i32.lt_u
+ (local.tee $12
+ (i32.load
+ (local.get $5)
+ )
+ )
+ (i32.const 10)
)
)
- (i32.const 10)
- )
- )
- (local.set $6
- (i32.const 10)
- )
- (loop $while-in78
- (local.set $7
- (i32.add
- (local.get $7)
- (i32.const 1)
+ (local.set $6
+ (i32.const 10)
)
- )
- (br_if $while-in78
- (i32.ge_u
- (local.get $12)
- (local.tee $6
- (i32.mul
- (local.get $6)
- (i32.const 10)
+ (loop $while-in78
+ (local.set $7
+ (i32.add
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ (br_if $while-in78
+ (i32.ge_u
+ (local.get $12)
+ (local.tee $6
+ (i32.mul
+ (local.get $6)
+ (i32.const 10)
+ )
+ )
)
)
)
)
)
- )
- (local.set $7
- (i32.const 0)
+ (else
+ (local.set $7
+ (i32.const 0)
+ )
+ )
)
)
- )
- (local.set $5
- (if (result i32)
- (i32.lt_s
- (local.tee $6
- (i32.add
- (i32.sub
- (local.get $17)
- (select
- (local.get $7)
- (i32.const 0)
- (i32.ne
- (local.get $24)
- (i32.const 102)
+ (local.set $5
+ (if (result i32)
+ (i32.lt_s
+ (local.tee $6
+ (i32.add
+ (i32.sub
+ (local.get $17)
+ (select
+ (local.get $7)
+ (i32.const 0)
+ (i32.ne
+ (local.get $24)
+ (i32.const 102)
+ )
)
)
- )
- (i32.shr_s
- (i32.shl
- (i32.and
- (local.tee $32
- (i32.ne
- (local.get $17)
- (i32.const 0)
+ (i32.shr_s
+ (i32.shl
+ (i32.and
+ (local.tee $32
+ (i32.ne
+ (local.get $17)
+ (i32.const 0)
+ )
)
- )
- (local.tee $38
- (i32.eq
- (local.get $24)
- (i32.const 103)
+ (local.tee $38
+ (i32.eq
+ (local.get $24)
+ (i32.const 103)
+ )
)
)
+ (i32.const 31)
)
(i32.const 31)
)
- (i32.const 31)
)
)
- )
- (i32.add
- (i32.mul
- (i32.shr_s
- (i32.sub
- (local.get $9)
- (local.get $21)
- )
- (i32.const 2)
- )
- (i32.const 9)
- )
- (i32.const -9)
- )
- )
- (block (result i32)
- (local.set $13
- (call $i32s-div
- (local.tee $6
- (i32.add
- (local.get $6)
- (i32.const 9216)
+ (i32.add
+ (i32.mul
+ (i32.shr_s
+ (i32.sub
+ (local.get $9)
+ (local.get $21)
+ )
+ (i32.const 2)
)
+ (i32.const 9)
)
- (i32.const 9)
+ (i32.const -9)
)
)
- (if
- (i32.lt_s
- (local.tee $6
- (i32.add
- (if (result i32)
- (local.tee $12
- (i32.const 9)
- )
- (i32.rem_s
+ (then
+ (block (result i32)
+ (local.set $13
+ (call $i32s-div
+ (local.tee $6
+ (i32.add
(local.get $6)
- (local.get $12)
+ (i32.const 9216)
)
- (i32.const 0)
)
- (i32.const 1)
+ (i32.const 9)
)
)
- (i32.const 9)
- )
- (block
- (local.set $12
- (i32.const 10)
- )
- (loop $while-in80
- (local.set $12
- (i32.mul
- (local.get $12)
- (i32.const 10)
- )
- )
- (br_if $while-in80
- (i32.ne
- (local.tee $6
- (i32.add
- (local.get $6)
- (i32.const 1)
- )
- )
- (i32.const 9)
- )
- )
- )
- )
- (local.set $12
- (i32.const 10)
- )
- )
- (local.set $13
- (call $i32u-rem
- (local.tee $24
- (i32.load
+ (if
+ (i32.lt_s
(local.tee $6
(i32.add
- (i32.add
- (local.get $8)
- (i32.shl
- (local.get $13)
- (i32.const 2)
+ (if (result i32)
+ (local.tee $12
+ (i32.const 9)
+ )
+ (then
+ (i32.rem_s
+ (local.get $6)
+ (local.get $12)
+ )
+ )
+ (else
+ (i32.const 0)
)
)
- (i32.const -4092)
+ (i32.const 1)
)
)
+ (i32.const 9)
)
- )
- (local.get $12)
- )
- )
- (block $do-once81
- (if
- (i32.eqz
- (i32.and
- (local.tee $33
- (i32.eq
- (i32.add
- (local.get $6)
- (i32.const 4)
+ (then
+ (block
+ (local.set $12
+ (i32.const 10)
+ )
+ (loop $while-in80
+ (local.set $12
+ (i32.mul
+ (local.get $12)
+ (i32.const 10)
+ )
+ )
+ (br_if $while-in80
+ (i32.ne
+ (local.tee $6
+ (i32.add
+ (local.get $6)
+ (i32.const 1)
+ )
+ )
+ (i32.const 9)
+ )
)
- (local.get $9)
)
)
- (i32.eqz
- (local.get $13)
- )
)
- )
- (block
- (local.set $50
- (call $i32u-div
- (local.get $24)
- (local.get $12)
+ (else
+ (local.set $12
+ (i32.const 10)
)
)
- (local.set $15
- (if (result f64)
- (i32.lt_u
- (local.get $13)
- (local.tee $51
- (call $i32s-div
- (local.get $12)
- (i32.const 2)
- )
- )
- )
- (f64.const 0.5)
- (select
- (f64.const 1)
- (f64.const 1.5)
- (i32.and
- (local.get $33)
- (i32.eq
- (local.get $13)
- (local.get $51)
+ )
+ (local.set $13
+ (call $i32u-rem
+ (local.tee $24
+ (i32.load
+ (local.tee $6
+ (i32.add
+ (i32.add
+ (local.get $8)
+ (i32.shl
+ (local.get $13)
+ (i32.const 2)
+ )
+ )
+ (i32.const -4092)
)
)
)
)
+ (local.get $12)
)
- (local.set $23
- (select
- (f64.const 9007199254740994)
- (f64.const 9007199254740992)
+ )
+ (block $do-once81
+ (if
+ (i32.eqz
(i32.and
- (local.get $50)
- (i32.const 1)
+ (local.tee $33
+ (i32.eq
+ (i32.add
+ (local.get $6)
+ (i32.const 4)
+ )
+ (local.get $9)
+ )
+ )
+ (i32.eqz
+ (local.get $13)
+ )
)
)
- )
- (block $do-once83
- (if
- (local.get $27)
+ (then
(block
- (br_if $do-once83
- (i32.ne
- (i32.load8_s
- (local.get $31)
+ (local.set $50
+ (call $i32u-div
+ (local.get $24)
+ (local.get $12)
+ )
+ )
+ (local.set $15
+ (if (result f64)
+ (i32.lt_u
+ (local.get $13)
+ (local.tee $51
+ (call $i32s-div
+ (local.get $12)
+ (i32.const 2)
+ )
+ )
+ )
+ (then
+ (f64.const 0.5)
+ )
+ (else
+ (select
+ (f64.const 1)
+ (f64.const 1.5)
+ (i32.and
+ (local.get $33)
+ (i32.eq
+ (local.get $13)
+ (local.get $51)
+ )
+ )
+ )
)
- (i32.const 45)
)
)
(local.set $23
- (f64.neg
- (local.get $23)
+ (select
+ (f64.const 9007199254740994)
+ (f64.const 9007199254740992)
+ (i32.and
+ (local.get $50)
+ (i32.const 1)
+ )
)
)
- (local.set $15
- (f64.neg
- (local.get $15)
+ (block $do-once83
+ (if
+ (local.get $27)
+ (then
+ (block
+ (br_if $do-once83
+ (i32.ne
+ (i32.load8_s
+ (local.get $31)
+ )
+ (i32.const 45)
+ )
+ )
+ (local.set $23
+ (f64.neg
+ (local.get $23)
+ )
+ )
+ (local.set $15
+ (f64.neg
+ (local.get $15)
+ )
+ )
+ )
+ )
)
)
- )
- )
- )
- (i32.store
- (local.get $6)
- (local.tee $13
- (i32.sub
- (local.get $24)
- (local.get $13)
- )
- )
- )
- (br_if $do-once81
- (f64.eq
- (f64.add
- (local.get $23)
- (local.get $15)
- )
- (local.get $23)
- )
- )
- (i32.store
- (local.get $6)
- (local.tee $7
- (i32.add
- (local.get $13)
- (local.get $12)
- )
- )
- )
- (if
- (i32.gt_u
- (local.get $7)
- (i32.const 999999999)
- )
- (loop $while-in86
- (i32.store
- (local.get $6)
- (i32.const 0)
- )
- (if
- (i32.lt_u
- (local.tee $6
- (i32.add
- (local.get $6)
- (i32.const -4)
+ (i32.store
+ (local.get $6)
+ (local.tee $13
+ (i32.sub
+ (local.get $24)
+ (local.get $13)
)
)
- (local.get $5)
+ )
+ (br_if $do-once81
+ (f64.eq
+ (f64.add
+ (local.get $23)
+ (local.get $15)
+ )
+ (local.get $23)
+ )
)
(i32.store
- (local.tee $5
+ (local.get $6)
+ (local.tee $7
(i32.add
- (local.get $5)
- (i32.const -4)
+ (local.get $13)
+ (local.get $12)
)
)
- (i32.const 0)
)
- )
- (i32.store
- (local.get $6)
- (local.tee $7
- (i32.add
- (i32.load
- (local.get $6)
+ (if
+ (i32.gt_u
+ (local.get $7)
+ (i32.const 999999999)
+ )
+ (then
+ (loop $while-in86
+ (i32.store
+ (local.get $6)
+ (i32.const 0)
+ )
+ (if
+ (i32.lt_u
+ (local.tee $6
+ (i32.add
+ (local.get $6)
+ (i32.const -4)
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (i32.store
+ (local.tee $5
+ (i32.add
+ (local.get $5)
+ (i32.const -4)
+ )
+ )
+ (i32.const 0)
+ )
+ )
+ )
+ (i32.store
+ (local.get $6)
+ (local.tee $7
+ (i32.add
+ (i32.load
+ (local.get $6)
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (br_if $while-in86
+ (i32.gt_u
+ (local.get $7)
+ (i32.const 999999999)
+ )
+ )
)
- (i32.const 1)
)
)
- )
- (br_if $while-in86
- (i32.gt_u
- (local.get $7)
- (i32.const 999999999)
+ (local.set $7
+ (i32.mul
+ (i32.shr_s
+ (i32.sub
+ (local.get $21)
+ (local.get $5)
+ )
+ (i32.const 2)
+ )
+ (i32.const 9)
+ )
)
- )
- )
- )
- (local.set $7
- (i32.mul
- (i32.shr_s
- (i32.sub
- (local.get $21)
- (local.get $5)
+ (br_if $do-once81
+ (i32.lt_u
+ (local.tee $13
+ (i32.load
+ (local.get $5)
+ )
+ )
+ (i32.const 10)
+ )
)
- (i32.const 2)
- )
- (i32.const 9)
- )
- )
- (br_if $do-once81
- (i32.lt_u
- (local.tee $13
- (i32.load
- (local.get $5)
+ (local.set $12
+ (i32.const 10)
)
- )
- (i32.const 10)
- )
- )
- (local.set $12
- (i32.const 10)
- )
- (loop $while-in88
- (local.set $7
- (i32.add
- (local.get $7)
- (i32.const 1)
- )
- )
- (br_if $while-in88
- (i32.ge_u
- (local.get $13)
- (local.tee $12
- (i32.mul
- (local.get $12)
- (i32.const 10)
+ (loop $while-in88
+ (local.set $7
+ (i32.add
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ (br_if $while-in88
+ (i32.ge_u
+ (local.get $13)
+ (local.tee $12
+ (i32.mul
+ (local.get $12)
+ (i32.const 10)
+ )
+ )
+ )
)
)
)
)
)
)
+ (local.set $12
+ (local.get $5)
+ )
+ (local.set $13
+ (local.get $7)
+ )
+ (select
+ (local.tee $5
+ (i32.add
+ (local.get $6)
+ (i32.const 4)
+ )
+ )
+ (local.get $9)
+ (i32.gt_u
+ (local.get $9)
+ (local.get $5)
+ )
+ )
)
)
- (local.set $12
- (local.get $5)
- )
- (local.set $13
- (local.get $7)
- )
- (select
- (local.tee $5
- (i32.add
- (local.get $6)
- (i32.const 4)
+ (else
+ (block (result i32)
+ (local.set $12
+ (local.get $5)
+ )
+ (local.set $13
+ (local.get $7)
)
- )
- (local.get $9)
- (i32.gt_u
(local.get $9)
- (local.get $5)
)
)
)
- (block (result i32)
- (local.set $12
- (local.get $5)
- )
- (local.set $13
- (local.get $7)
- )
- (local.get $9)
- )
)
- )
- (local.set $33
- (i32.sub
- (i32.const 0)
- (local.get $13)
+ (local.set $33
+ (i32.sub
+ (i32.const 0)
+ (local.get $13)
+ )
)
- )
- (loop $while-in90
- (block $while-out89
- (if
- (i32.le_u
- (local.get $5)
- (local.get $12)
- )
- (block
- (local.set $24
- (i32.const 0)
- )
- (local.set $9
+ (loop $while-in90
+ (block $while-out89
+ (if
+ (i32.le_u
(local.get $5)
+ (local.get $12)
)
- (br $while-out89)
- )
- )
- (if
- (i32.load
- (local.tee $7
- (i32.add
- (local.get $5)
- (i32.const -4)
+ (then
+ (block
+ (local.set $24
+ (i32.const 0)
+ )
+ (local.set $9
+ (local.get $5)
+ )
+ (br $while-out89)
)
)
)
- (block
- (local.set $24
- (i32.const 1)
+ (if
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.get $5)
+ (i32.const -4)
+ )
+ )
)
- (local.set $9
- (local.get $5)
+ (then
+ (block
+ (local.set $24
+ (i32.const 1)
+ )
+ (local.set $9
+ (local.get $5)
+ )
+ )
)
- )
- (block
- (local.set $5
- (local.get $7)
+ (else
+ (block
+ (local.set $5
+ (local.get $7)
+ )
+ (br $while-in90)
+ )
)
- (br $while-in90)
)
)
)
- )
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.tee $13
- (i32.add
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
+ (local.tee $13
(i32.add
(i32.add
(i32.add
- (local.get $27)
- (i32.const 1)
- )
- (local.tee $5
- (block $do-once91 (result i32)
- (if (result i32)
- (local.get $38)
- (block (result i32)
- (local.set $7
- (if (result i32)
- (i32.and
- (i32.gt_s
- (local.tee $5
- (i32.add
- (i32.xor
- (local.get $32)
- (i32.const 1)
+ (i32.add
+ (local.get $27)
+ (i32.const 1)
+ )
+ (local.tee $5
+ (block $do-once91 (result i32)
+ (if (result i32)
+ (local.get $38)
+ (then
+ (block (result i32)
+ (local.set $7
+ (if (result i32)
+ (i32.and
+ (i32.gt_s
+ (local.tee $5
+ (i32.add
+ (i32.xor
+ (local.get $32)
+ (i32.const 1)
+ )
+ (local.get $17)
+ )
)
- (local.get $17)
+ (local.get $13)
+ )
+ (i32.gt_s
+ (local.get $13)
+ (i32.const -5)
)
)
- (local.get $13)
- )
- (i32.gt_s
- (local.get $13)
- (i32.const -5)
- )
- )
- (block (result i32)
- (local.set $17
- (i32.sub
- (i32.add
- (local.get $5)
- (i32.const -1)
+ (then
+ (block (result i32)
+ (local.set $17
+ (i32.sub
+ (i32.add
+ (local.get $5)
+ (i32.const -1)
+ )
+ (local.get $13)
+ )
+ )
+ (i32.add
+ (local.get $18)
+ (i32.const -1)
+ )
+ )
+ )
+ (else
+ (block (result i32)
+ (local.set $17
+ (i32.add
+ (local.get $5)
+ (i32.const -1)
+ )
+ )
+ (i32.add
+ (local.get $18)
+ (i32.const -2)
+ )
)
- (local.get $13)
)
- )
- (i32.add
- (local.get $18)
- (i32.const -1)
)
)
- (block (result i32)
- (local.set $17
- (i32.add
- (local.get $5)
- (i32.const -1)
+ (if
+ (local.tee $5
+ (i32.and
+ (local.get $11)
+ (i32.const 8)
)
)
- (i32.add
- (local.get $18)
- (i32.const -2)
+ (then
+ (block
+ (local.set $21
+ (local.get $5)
+ )
+ (br $do-once91
+ (local.get $17)
+ )
+ )
)
)
- )
- )
- (if
- (local.tee $5
- (i32.and
- (local.get $11)
- (i32.const 8)
- )
- )
- (block
- (local.set $21
- (local.get $5)
- )
- (br $do-once91
- (local.get $17)
- )
- )
- )
- (block $do-once93
- (if
- (local.get $24)
- (block
+ (block $do-once93
(if
- (i32.eqz
- (local.tee $18
- (i32.load
- (i32.add
- (local.get $9)
- (i32.const -4)
+ (local.get $24)
+ (then
+ (block
+ (if
+ (i32.eqz
+ (local.tee $18
+ (i32.load
+ (i32.add
+ (local.get $9)
+ (i32.const -4)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $5
+ (i32.const 9)
+ )
+ (br $do-once93)
+ )
+ )
+ )
+ (if
+ (call $i32u-rem
+ (local.get $18)
+ (i32.const 10)
+ )
+ (then
+ (block
+ (local.set $5
+ (i32.const 0)
+ )
+ (br $do-once93)
+ )
+ )
+ (else
+ (block
+ (local.set $6
+ (i32.const 10)
+ )
+ (local.set $5
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (loop $while-in96
+ (local.set $5
+ (i32.add
+ (local.get $5)
+ (i32.const 1)
+ )
+ )
+ (br_if $while-in96
+ (i32.eqz
+ (call $i32u-rem
+ (local.get $18)
+ (local.tee $6
+ (i32.mul
+ (local.get $6)
+ (i32.const 10)
+ )
+ )
+ )
+ )
)
)
)
)
- (block
+ (else
(local.set $5
(i32.const 9)
)
- (br $do-once93)
)
)
- (if
- (call $i32u-rem
- (local.get $18)
- (i32.const 10)
- )
- (block
- (local.set $5
- (i32.const 0)
+ )
+ (local.set $6
+ (i32.add
+ (i32.mul
+ (i32.shr_s
+ (i32.sub
+ (local.get $9)
+ (local.get $21)
+ )
+ (i32.const 2)
)
- (br $do-once93)
+ (i32.const 9)
)
- (block
- (local.set $6
- (i32.const 10)
- )
- (local.set $5
- (i32.const 0)
- )
+ (i32.const -9)
+ )
+ )
+ (if (result i32)
+ (i32.eq
+ (i32.or
+ (local.get $7)
+ (i32.const 32)
)
+ (i32.const 102)
)
- (loop $while-in96
- (local.set $5
- (i32.add
- (local.get $5)
- (i32.const 1)
+ (then
+ (block (result i32)
+ (local.set $21
+ (i32.const 0)
)
- )
- (br_if $while-in96
- (i32.eqz
- (call $i32u-rem
- (local.get $18)
- (local.tee $6
- (i32.mul
- (local.get $6)
- (i32.const 10)
+ (select
+ (local.get $17)
+ (local.tee $5
+ (select
+ (i32.const 0)
+ (local.tee $5
+ (i32.sub
+ (local.get $6)
+ (local.get $5)
+ )
+ )
+ (i32.lt_s
+ (local.get $5)
+ (i32.const 0)
)
)
)
- )
- )
- )
- )
- (local.set $5
- (i32.const 9)
- )
- )
- )
- (local.set $6
- (i32.add
- (i32.mul
- (i32.shr_s
- (i32.sub
- (local.get $9)
- (local.get $21)
- )
- (i32.const 2)
- )
- (i32.const 9)
- )
- (i32.const -9)
- )
- )
- (if (result i32)
- (i32.eq
- (i32.or
- (local.get $7)
- (i32.const 32)
- )
- (i32.const 102)
- )
- (block (result i32)
- (local.set $21
- (i32.const 0)
- )
- (select
- (local.get $17)
- (local.tee $5
- (select
- (i32.const 0)
- (local.tee $5
- (i32.sub
- (local.get $6)
+ (i32.lt_s
+ (local.get $17)
(local.get $5)
)
)
- (i32.lt_s
- (local.get $5)
- (i32.const 0)
- )
)
)
- (i32.lt_s
- (local.get $17)
- (local.get $5)
- )
- )
- )
- (block (result i32)
- (local.set $21
- (i32.const 0)
- )
- (select
- (local.get $17)
- (local.tee $5
- (select
- (i32.const 0)
- (local.tee $5
- (i32.sub
- (i32.add
- (local.get $6)
- (local.get $13)
+ (else
+ (block (result i32)
+ (local.set $21
+ (i32.const 0)
+ )
+ (select
+ (local.get $17)
+ (local.tee $5
+ (select
+ (i32.const 0)
+ (local.tee $5
+ (i32.sub
+ (i32.add
+ (local.get $6)
+ (local.get $13)
+ )
+ (local.get $5)
+ )
+ )
+ (i32.lt_s
+ (local.get $5)
+ (i32.const 0)
+ )
)
+ )
+ (i32.lt_s
+ (local.get $17)
(local.get $5)
)
)
- (i32.lt_s
- (local.get $5)
- (i32.const 0)
- )
)
)
- (i32.lt_s
- (local.get $17)
- (local.get $5)
- )
)
)
)
- )
- (block (result i32)
- (local.set $21
- (i32.and
- (local.get $11)
- (i32.const 8)
+ (else
+ (block (result i32)
+ (local.set $21
+ (i32.and
+ (local.get $11)
+ (i32.const 8)
+ )
+ )
+ (local.set $7
+ (local.get $18)
+ )
+ (local.get $17)
)
)
- (local.set $7
- (local.get $18)
- )
- (local.get $17)
)
)
)
)
- )
- (i32.ne
- (local.tee $32
- (i32.or
- (local.get $5)
- (local.get $21)
+ (i32.ne
+ (local.tee $32
+ (i32.or
+ (local.get $5)
+ (local.get $21)
+ )
)
+ (i32.const 0)
)
- (i32.const 0)
)
- )
- (if (result i32)
- (local.tee $17
- (i32.eq
- (i32.or
- (local.get $7)
- (i32.const 32)
+ (if (result i32)
+ (local.tee $17
+ (i32.eq
+ (i32.or
+ (local.get $7)
+ (i32.const 32)
+ )
+ (i32.const 102)
)
- (i32.const 102)
- )
- )
- (block (result i32)
- (local.set $18
- (i32.const 0)
)
- (select
- (local.get $13)
- (i32.const 0)
- (i32.gt_s
- (local.get $13)
- (i32.const 0)
+ (then
+ (block (result i32)
+ (local.set $18
+ (i32.const 0)
+ )
+ (select
+ (local.get $13)
+ (i32.const 0)
+ (i32.gt_s
+ (local.get $13)
+ (i32.const 0)
+ )
+ )
)
)
- )
- (block (result i32)
- (if
- (i32.lt_s
- (i32.sub
- (local.get $28)
- (local.tee $6
- (call $_fmt_u
+ (else
+ (block (result i32)
+ (if
+ (i32.lt_s
+ (i32.sub
+ (local.get $28)
(local.tee $6
- (select
- (local.get $33)
- (local.get $13)
- (i32.lt_s
- (local.get $13)
- (i32.const 0)
+ (call $_fmt_u
+ (local.tee $6
+ (select
+ (local.get $33)
+ (local.get $13)
+ (i32.lt_s
+ (local.get $13)
+ (i32.const 0)
+ )
+ )
)
+ (i32.shr_s
+ (i32.shl
+ (i32.lt_s
+ (local.get $6)
+ (i32.const 0)
+ )
+ (i32.const 31)
+ )
+ (i32.const 31)
+ )
+ (local.get $34)
)
)
- (i32.shr_s
- (i32.shl
- (i32.lt_s
+ )
+ (i32.const 2)
+ )
+ (then
+ (loop $while-in98
+ (i32.store8
+ (local.tee $6
+ (i32.add
(local.get $6)
- (i32.const 0)
+ (i32.const -1)
)
- (i32.const 31)
)
- (i32.const 31)
+ (i32.const 48)
+ )
+ (br_if $while-in98
+ (i32.lt_s
+ (i32.sub
+ (local.get $28)
+ (local.get $6)
+ )
+ (i32.const 2)
+ )
)
- (local.get $34)
)
)
)
- (i32.const 2)
- )
- (loop $while-in98
(i32.store8
- (local.tee $6
- (i32.add
- (local.get $6)
- (i32.const -1)
+ (i32.add
+ (local.get $6)
+ (i32.const -1)
+ )
+ (i32.add
+ (i32.and
+ (i32.shr_s
+ (local.get $13)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
+ (i32.const 43)
)
- (i32.const 48)
)
- (br_if $while-in98
- (i32.lt_s
- (i32.sub
- (local.get $28)
+ (i32.store8
+ (local.tee $6
+ (i32.add
(local.get $6)
+ (i32.const -2)
)
- (i32.const 2)
)
+ (local.get $7)
)
- )
- )
- (i32.store8
- (i32.add
- (local.get $6)
- (i32.const -1)
- )
- (i32.add
- (i32.and
- (i32.shr_s
- (local.get $13)
- (i32.const 31)
- )
- (i32.const 2)
+ (local.set $18
+ (local.get $6)
)
- (i32.const 43)
- )
- )
- (i32.store8
- (local.tee $6
- (i32.add
+ (i32.sub
+ (local.get $28)
(local.get $6)
- (i32.const -2)
)
)
- (local.get $7)
- )
- (local.set $18
- (local.get $6)
- )
- (i32.sub
- (local.get $28)
- (local.get $6)
)
)
)
)
+ (local.get $11)
)
- (local.get $11)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
)
- (i32.const 32)
)
- )
- (drop
- (call $___fwritex
- (local.get $31)
- (local.get $27)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $31)
+ (local.get $27)
+ (local.get $0)
+ )
+ )
)
)
- )
- (call $_pad
- (local.get $0)
- (i32.const 48)
- (local.get $14)
- (local.get $13)
- (i32.xor
- (local.get $11)
- (i32.const 65536)
+ (call $_pad
+ (local.get $0)
+ (i32.const 48)
+ (local.get $14)
+ (local.get $13)
+ (i32.xor
+ (local.get $11)
+ (i32.const 65536)
+ )
)
- )
- (block $do-once99
- (if
- (local.get $17)
- (block
- (local.set $6
- (local.tee $12
- (select
- (local.get $8)
- (local.get $12)
- (i32.gt_u
- (local.get $12)
- (local.get $8)
- )
- )
- )
- )
- (loop $while-in102
- (local.set $7
- (call $_fmt_u
- (i32.load
- (local.get $6)
+ (block $do-once99
+ (if
+ (local.get $17)
+ (then
+ (block
+ (local.set $6
+ (local.tee $12
+ (select
+ (local.get $8)
+ (local.get $12)
+ (i32.gt_u
+ (local.get $12)
+ (local.get $8)
+ )
+ )
)
- (i32.const 0)
- (local.get $30)
)
- )
- (block $do-once103
- (if
- (i32.eq
- (local.get $6)
- (local.get $12)
- )
- (block
- (br_if $do-once103
- (i32.ne
- (local.get $7)
- (local.get $30)
+ (loop $while-in102
+ (local.set $7
+ (call $_fmt_u
+ (i32.load
+ (local.get $6)
)
- )
- (i32.store8
- (local.get $35)
- (i32.const 48)
- )
- (local.set $7
- (local.get $35)
+ (i32.const 0)
+ (local.get $30)
)
)
- (block
- (br_if $do-once103
- (i32.le_u
- (local.get $7)
- (local.get $22)
+ (block $do-once103
+ (if
+ (i32.eq
+ (local.get $6)
+ (local.get $12)
)
- )
- (loop $while-in106
- (i32.store8
- (local.tee $7
- (i32.add
- (local.get $7)
- (i32.const -1)
+ (then
+ (block
+ (br_if $do-once103
+ (i32.ne
+ (local.get $7)
+ (local.get $30)
+ )
+ )
+ (i32.store8
+ (local.get $35)
+ (i32.const 48)
+ )
+ (local.set $7
+ (local.get $35)
)
)
- (i32.const 48)
)
- (br_if $while-in106
- (i32.gt_u
- (local.get $7)
- (local.get $22)
+ (else
+ (block
+ (br_if $do-once103
+ (i32.le_u
+ (local.get $7)
+ (local.get $22)
+ )
+ )
+ (loop $while-in106
+ (i32.store8
+ (local.tee $7
+ (i32.add
+ (local.get $7)
+ (i32.const -1)
+ )
+ )
+ (i32.const 48)
+ )
+ (br_if $while-in106
+ (i32.gt_u
+ (local.get $7)
+ (local.get $22)
+ )
+ )
+ )
)
)
)
)
- )
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
- )
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $7)
- (i32.sub
- (local.get $43)
- (local.get $7)
- )
- (local.get $0)
- )
- )
- )
- (if
- (i32.le_u
- (local.tee $7
- (i32.add
- (local.get $6)
- (i32.const 4)
- )
- )
- (local.get $8)
- )
- (block
- (local.set $6
- (local.get $7)
- )
- (br $while-in102)
- )
- )
- )
- (block $do-once107
- (if
- (local.get $32)
- (block
- (br_if $do-once107
- (i32.and
- (i32.load
- (local.get $0)
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
)
- (i32.const 32)
)
- )
- (drop
- (call $___fwritex
- (i32.const 4143)
- (i32.const 1)
- (local.get $0)
- )
- )
- )
- )
- )
- (if
- (i32.and
- (i32.gt_s
- (local.get $5)
- (i32.const 0)
- )
- (i32.lt_u
- (local.get $7)
- (local.get $9)
- )
- )
- (loop $while-in110
- (if
- (i32.gt_u
- (local.tee $6
- (call $_fmt_u
- (i32.load
+ (then
+ (drop
+ (call $___fwritex
(local.get $7)
+ (i32.sub
+ (local.get $43)
+ (local.get $7)
+ )
+ (local.get $0)
)
- (i32.const 0)
- (local.get $30)
)
)
- (local.get $22)
)
- (loop $while-in112
- (i32.store8
- (local.tee $6
+ (if
+ (i32.le_u
+ (local.tee $7
(i32.add
(local.get $6)
- (i32.const -1)
+ (i32.const 4)
)
)
- (i32.const 48)
+ (local.get $8)
)
- (br_if $while-in112
- (i32.gt_u
- (local.get $6)
- (local.get $22)
+ (then
+ (block
+ (local.set $6
+ (local.get $7)
+ )
+ (br $while-in102)
)
)
)
)
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
- )
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $6)
- (select
- (i32.const 9)
- (local.get $5)
- (i32.gt_s
- (local.get $5)
- (i32.const 9)
+ (block $do-once107
+ (if
+ (local.get $32)
+ (then
+ (block
+ (br_if $do-once107
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (drop
+ (call $___fwritex
+ (i32.const 4143)
+ (i32.const 1)
+ (local.get $0)
+ )
)
)
- (local.get $0)
)
)
)
- (local.set $6
- (i32.add
- (local.get $5)
- (i32.const -9)
- )
- )
(if
(i32.and
(i32.gt_s
(local.get $5)
- (i32.const 9)
+ (i32.const 0)
)
(i32.lt_u
- (local.tee $7
- (i32.add
- (local.get $7)
- (i32.const 4)
- )
- )
+ (local.get $7)
(local.get $9)
)
)
- (block
- (local.set $5
- (local.get $6)
- )
- (br $while-in110)
- )
- (local.set $5
- (local.get $6)
- )
- )
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 48)
- (i32.add
- (local.get $5)
- (i32.const 9)
- )
- (i32.const 9)
- (i32.const 0)
- )
- )
- (block
- (local.set $9
- (select
- (local.get $9)
- (i32.add
- (local.get $12)
- (i32.const 4)
- )
- (local.get $24)
- )
- )
- (if
- (i32.gt_s
- (local.get $5)
- (i32.const -1)
- )
- (block
- (local.set $17
- (i32.eqz
- (local.get $21)
- )
- )
- (local.set $6
- (local.get $12)
- )
- (local.set $7
- (local.get $5)
- )
- (loop $while-in114
- (if
- (i32.eq
- (local.tee $5
- (call $_fmt_u
- (i32.load
- (local.get $6)
- )
- (i32.const 0)
- (local.get $30)
- )
- )
- (local.get $30)
- )
- (block
- (i32.store8
- (local.get $35)
- (i32.const 48)
- )
- (local.set $5
- (local.get $35)
- )
- )
- )
- (block $do-once115
- (if
- (i32.eq
- (local.get $6)
- (local.get $12)
- )
- (block
- (if
- (i32.eqz
- (i32.and
+ (then
+ (loop $while-in110
+ (if
+ (i32.gt_u
+ (local.tee $6
+ (call $_fmt_u
(i32.load
- (local.get $0)
+ (local.get $7)
)
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $5)
- (i32.const 1)
- (local.get $0)
+ (i32.const 0)
+ (local.get $30)
)
)
+ (local.get $22)
)
- (local.set $5
- (i32.add
- (local.get $5)
- (i32.const 1)
- )
- )
- (br_if $do-once115
- (i32.and
- (local.get $17)
- (i32.lt_s
- (local.get $7)
- (i32.const 1)
+ (then
+ (loop $while-in112
+ (i32.store8
+ (local.tee $6
+ (i32.add
+ (local.get $6)
+ (i32.const -1)
+ )
+ )
+ (i32.const 48)
+ )
+ (br_if $while-in112
+ (i32.gt_u
+ (local.get $6)
+ (local.get $22)
+ )
)
)
)
- (br_if $do-once115
+ )
+ (if
+ (i32.eqz
(i32.and
(i32.load
(local.get $0)
@@ -13041,256 +13549,444 @@
(i32.const 32)
)
)
- (drop
- (call $___fwritex
- (i32.const 4143)
- (i32.const 1)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $6)
+ (select
+ (i32.const 9)
+ (local.get $5)
+ (i32.gt_s
+ (local.get $5)
+ (i32.const 9)
+ )
+ )
+ (local.get $0)
+ )
)
)
)
- (block
- (br_if $do-once115
- (i32.le_u
+ (local.set $6
+ (i32.add
+ (local.get $5)
+ (i32.const -9)
+ )
+ )
+ (if
+ (i32.and
+ (i32.gt_s
(local.get $5)
- (local.get $22)
+ (i32.const 9)
)
- )
- (loop $while-in118
- (i32.store8
- (local.tee $5
+ (i32.lt_u
+ (local.tee $7
(i32.add
- (local.get $5)
- (i32.const -1)
+ (local.get $7)
+ (i32.const 4)
)
)
- (i32.const 48)
+ (local.get $9)
)
- (br_if $while-in118
- (i32.gt_u
- (local.get $5)
- (local.get $22)
+ )
+ (then
+ (block
+ (local.set $5
+ (local.get $6)
)
+ (br $while-in110)
+ )
+ )
+ (else
+ (local.set $5
+ (local.get $6)
)
)
)
)
)
- (local.set $8
- (i32.sub
- (local.get $43)
- (local.get $5)
+ )
+ (call $_pad
+ (local.get $0)
+ (i32.const 48)
+ (i32.add
+ (local.get $5)
+ (i32.const 9)
+ )
+ (i32.const 9)
+ (i32.const 0)
+ )
+ )
+ )
+ (else
+ (block
+ (local.set $9
+ (select
+ (local.get $9)
+ (i32.add
+ (local.get $12)
+ (i32.const 4)
)
+ (local.get $24)
)
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ )
+ (if
+ (i32.gt_s
+ (local.get $5)
+ (i32.const -1)
+ )
+ (then
+ (block
+ (local.set $17
+ (i32.eqz
+ (local.get $21)
)
- (i32.const 32)
)
- )
- (drop
- (call $___fwritex
+ (local.set $6
+ (local.get $12)
+ )
+ (local.set $7
(local.get $5)
- (select
- (local.get $8)
- (local.get $7)
- (i32.gt_s
- (local.get $7)
- (local.get $8)
+ )
+ (loop $while-in114
+ (if
+ (i32.eq
+ (local.tee $5
+ (call $_fmt_u
+ (i32.load
+ (local.get $6)
+ )
+ (i32.const 0)
+ (local.get $30)
+ )
+ )
+ (local.get $30)
+ )
+ (then
+ (block
+ (i32.store8
+ (local.get $35)
+ (i32.const 48)
+ )
+ (local.set $5
+ (local.get $35)
+ )
+ )
)
)
- (local.get $0)
- )
- )
- )
- (br_if $while-in114
- (i32.and
- (i32.lt_u
- (local.tee $6
- (i32.add
- (local.get $6)
- (i32.const 4)
+ (block $do-once115
+ (if
+ (i32.eq
+ (local.get $6)
+ (local.get $12)
+ )
+ (then
+ (block
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $5)
+ (i32.const 1)
+ (local.get $0)
+ )
+ )
+ )
+ )
+ (local.set $5
+ (i32.add
+ (local.get $5)
+ (i32.const 1)
+ )
+ )
+ (br_if $do-once115
+ (i32.and
+ (local.get $17)
+ (i32.lt_s
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ )
+ (br_if $do-once115
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (drop
+ (call $___fwritex
+ (i32.const 4143)
+ (i32.const 1)
+ (local.get $0)
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (br_if $do-once115
+ (i32.le_u
+ (local.get $5)
+ (local.get $22)
+ )
+ )
+ (loop $while-in118
+ (i32.store8
+ (local.tee $5
+ (i32.add
+ (local.get $5)
+ (i32.const -1)
+ )
+ )
+ (i32.const 48)
+ )
+ (br_if $while-in118
+ (i32.gt_u
+ (local.get $5)
+ (local.get $22)
+ )
+ )
+ )
+ )
+ )
)
)
- (local.get $9)
- )
- (i32.gt_s
- (local.tee $7
+ (local.set $8
(i32.sub
- (local.get $7)
- (local.get $8)
+ (local.get $43)
+ (local.get $5)
)
)
- (i32.const -1)
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $5)
+ (select
+ (local.get $8)
+ (local.get $7)
+ (i32.gt_s
+ (local.get $7)
+ (local.get $8)
+ )
+ )
+ (local.get $0)
+ )
+ )
+ )
+ )
+ (br_if $while-in114
+ (i32.and
+ (i32.lt_u
+ (local.tee $6
+ (i32.add
+ (local.get $6)
+ (i32.const 4)
+ )
+ )
+ (local.get $9)
+ )
+ (i32.gt_s
+ (local.tee $7
+ (i32.sub
+ (local.get $7)
+ (local.get $8)
+ )
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (local.set $5
+ (local.get $7)
+ )
)
)
)
- (local.set $5
- (local.get $7)
- )
)
- )
- )
- (call $_pad
- (local.get $0)
- (i32.const 48)
- (i32.add
- (local.get $5)
- (i32.const 18)
- )
- (i32.const 18)
- (i32.const 0)
- )
- (br_if $do-once99
- (i32.and
- (i32.load
+ (call $_pad
(local.get $0)
+ (i32.const 48)
+ (i32.add
+ (local.get $5)
+ (i32.const 18)
+ )
+ (i32.const 18)
+ (i32.const 0)
)
- (i32.const 32)
- )
- )
- (drop
- (call $___fwritex
- (local.get $18)
- (i32.sub
- (local.get $28)
- (local.get $18)
+ (br_if $do-once99
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (drop
+ (call $___fwritex
+ (local.get $18)
+ (i32.sub
+ (local.get $28)
+ (local.get $18)
+ )
+ (local.get $0)
+ )
)
- (local.get $0)
)
)
)
)
- )
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.get $13)
- (i32.xor
- (local.get $11)
- (i32.const 8192)
- )
- )
- (select
- (local.get $14)
- (local.get $13)
- (i32.lt_s
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
(local.get $13)
+ (i32.xor
+ (local.get $11)
+ (i32.const 8192)
+ )
+ )
+ (select
(local.get $14)
+ (local.get $13)
+ (i32.lt_s
+ (local.get $13)
+ (local.get $14)
+ )
)
)
)
- (block (result i32)
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.tee $7
- (i32.add
- (local.tee $9
- (select
- (i32.const 0)
- (local.get $27)
- (local.tee $6
- (i32.or
- (f64.ne
- (local.get $15)
- (local.get $15)
+ (else
+ (block (result i32)
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
+ (local.tee $7
+ (i32.add
+ (local.tee $9
+ (select
+ (i32.const 0)
+ (local.get $27)
+ (local.tee $6
+ (i32.or
+ (f64.ne
+ (local.get $15)
+ (local.get $15)
+ )
+ (i32.const 0)
)
- (i32.const 0)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
+ (local.get $8)
)
- (local.get $8)
- )
- (if
- (i32.eqz
- (i32.and
- (local.tee $5
- (i32.load
- (local.get $0)
+ (if
+ (i32.eqz
+ (i32.and
+ (local.tee $5
+ (i32.load
+ (local.get $0)
+ )
)
- )
- (i32.const 32)
- )
- )
- (block
- (drop
- (call $___fwritex
- (local.get $31)
- (local.get $9)
- (local.get $0)
+ (i32.const 32)
)
)
- (local.set $5
- (i32.load
- (local.get $0)
+ (then
+ (block
+ (drop
+ (call $___fwritex
+ (local.get $31)
+ (local.get $9)
+ (local.get $0)
+ )
+ )
+ (local.set $5
+ (i32.load
+ (local.get $0)
+ )
+ )
)
)
)
- )
- (local.set $6
- (select
+ (local.set $6
(select
- (i32.const 4135)
- (i32.const 4139)
- (local.tee $8
- (i32.ne
- (i32.and
- (local.get $18)
- (i32.const 32)
+ (select
+ (i32.const 4135)
+ (i32.const 4139)
+ (local.tee $8
+ (i32.ne
+ (i32.and
+ (local.get $18)
+ (i32.const 32)
+ )
+ (i32.const 0)
)
- (i32.const 0)
)
)
+ (select
+ (i32.const 4127)
+ (i32.const 4131)
+ (local.get $8)
+ )
+ (local.get $6)
)
- (select
- (i32.const 4127)
- (i32.const 4131)
- (local.get $8)
- )
- (local.get $6)
)
- )
- (if
- (i32.eqz
- (i32.and
- (local.get $5)
- (i32.const 32)
+ (if
+ (i32.eqz
+ (i32.and
+ (local.get $5)
+ (i32.const 32)
+ )
)
- )
- (drop
- (call $___fwritex
- (local.get $6)
- (i32.const 3)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $6)
+ (i32.const 3)
+ (local.get $0)
+ )
+ )
)
)
- )
- (call $_pad
- (local.get $0)
- (i32.const 32)
- (local.get $14)
- (local.get $7)
- (i32.xor
- (local.get $11)
- (i32.const 8192)
- )
- )
- (select
- (local.get $14)
- (local.get $7)
- (i32.lt_s
+ (call $_pad
+ (local.get $0)
+ (i32.const 32)
+ (local.get $14)
(local.get $7)
+ (i32.xor
+ (local.get $11)
+ (i32.const 8192)
+ )
+ )
+ (select
(local.get $14)
+ (local.get $7)
+ (i32.lt_s
+ (local.get $7)
+ (local.get $14)
+ )
)
)
)
@@ -13346,115 +14042,123 @@
)
)
)
- (block
- (local.set $5
- (local.get $26)
- )
- (local.set $8
- (i32.const 0)
- )
- (local.set $9
- (i32.const 4091)
+ (then
+ (block
+ (local.set $5
+ (local.get $26)
+ )
+ (local.set $8
+ (i32.const 0)
+ )
+ (local.set $9
+ (i32.const 4091)
+ )
+ (br $__rjti$8)
)
- (br $__rjti$8)
)
- (block
- (local.set $5
- (local.get $8)
- )
- (local.set $8
- (local.get $26)
- )
- (loop $while-in123
- (i32.store8
- (local.tee $8
- (i32.add
- (local.get $8)
- (i32.const -1)
- )
- )
- (i32.or
- (i32.load8_u
+ (else
+ (block
+ (local.set $5
+ (local.get $8)
+ )
+ (local.set $8
+ (local.get $26)
+ )
+ (loop $while-in123
+ (i32.store8
+ (local.tee $8
(i32.add
- (i32.and
- (local.get $5)
- (i32.const 15)
- )
- (i32.const 4075)
+ (local.get $8)
+ (i32.const -1)
)
)
- (local.get $9)
- )
- )
- (br_if $while-in123
- (i32.eqz
- (i32.and
- (i32.eqz
- (local.tee $5
- (call $_bitshift64Lshr
+ (i32.or
+ (i32.load8_u
+ (i32.add
+ (i32.and
(local.get $5)
- (local.get $11)
- (i32.const 4)
+ (i32.const 15)
)
+ (i32.const 4075)
)
)
- (i32.eqz
- (local.tee $11
- (global.get $tempRet0)
- )
- )
+ (local.get $9)
)
)
- )
- (local.set $5
- (local.get $8)
- )
- )
- (local.set $8
- (if (result i32)
- (i32.or
+ (br_if $while-in123
(i32.eqz
(i32.and
- (local.get $7)
- (i32.const 8)
- )
- )
- (i32.and
- (i32.eqz
- (i32.load
+ (i32.eqz
+ (local.tee $5
+ (call $_bitshift64Lshr
+ (local.get $5)
+ (local.get $11)
+ (i32.const 4)
+ )
+ )
+ )
+ (i32.eqz
(local.tee $11
- (local.get $19)
+ (global.get $tempRet0)
)
)
)
+ )
+ )
+ (local.set $5
+ (local.get $8)
+ )
+ )
+ (local.set $8
+ (if (result i32)
+ (i32.or
(i32.eqz
- (i32.load offset=4
- (local.get $11)
+ (i32.and
+ (local.get $7)
+ (i32.const 8)
+ )
+ )
+ (i32.and
+ (i32.eqz
+ (i32.load
+ (local.tee $11
+ (local.get $19)
+ )
+ )
+ )
+ (i32.eqz
+ (i32.load offset=4
+ (local.get $11)
+ )
)
)
)
- )
- (block (result i32)
- (local.set $9
- (i32.const 4091)
+ (then
+ (block (result i32)
+ (local.set $9
+ (i32.const 4091)
+ )
+ (i32.const 0)
+ )
)
- (i32.const 0)
- )
- (block (result i32)
- (local.set $9
- (i32.add
- (i32.shr_s
- (local.get $18)
- (i32.const 4)
+ (else
+ (block (result i32)
+ (local.set $9
+ (i32.add
+ (i32.shr_s
+ (local.get $18)
+ (i32.const 4)
+ )
+ (i32.const 4091)
+ )
)
- (i32.const 4091)
+ (i32.const 2)
)
)
- (i32.const 2)
)
)
+ (br $__rjti$8)
)
- (br $__rjti$8)
)
)
)
@@ -13580,11 +14284,13 @@
(local.get $7)
(i32.const 0)
)
- (block
- (local.set $16
- (i32.const -1)
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L1)
)
- (br $label$break$L1)
)
)
(call $_pad
@@ -13596,89 +14302,99 @@
)
(if
(local.get $5)
- (block
- (local.set $6
- (i32.const 0)
- )
- (local.set $7
- (i32.load
- (local.get $19)
+ (then
+ (block
+ (local.set $6
+ (i32.const 0)
)
- )
- (loop $while-in127
- (if
- (i32.eqz
- (local.tee $8
- (i32.load
- (local.get $7)
+ (local.set $7
+ (i32.load
+ (local.get $19)
+ )
+ )
+ (loop $while-in127
+ (if
+ (i32.eqz
+ (local.tee $8
+ (i32.load
+ (local.get $7)
+ )
)
)
- )
- (block
- (local.set $7
- (local.get $5)
+ (then
+ (block
+ (local.set $7
+ (local.get $5)
+ )
+ (br $__rjti$7)
+ )
)
- (br $__rjti$7)
)
- )
- (if
- (i32.gt_s
- (local.tee $6
- (i32.add
- (local.tee $8
- (call $_wctomb
- (local.get $36)
- (local.get $8)
+ (if
+ (i32.gt_s
+ (local.tee $6
+ (i32.add
+ (local.tee $8
+ (call $_wctomb
+ (local.get $36)
+ (local.get $8)
+ )
)
+ (local.get $6)
)
- (local.get $6)
)
- )
- (local.get $5)
- )
- (block
- (local.set $7
(local.get $5)
)
- (br $__rjti$7)
+ (then
+ (block
+ (local.set $7
+ (local.get $5)
+ )
+ (br $__rjti$7)
+ )
+ )
)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load
- (local.get $0)
+ (if
+ (i32.eqz
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 32)
+ )
+ )
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $36)
+ (local.get $8)
+ (local.get $0)
+ )
)
- (i32.const 32)
)
)
- (drop
- (call $___fwritex
- (local.get $36)
- (local.get $8)
- (local.get $0)
+ (local.set $7
+ (i32.add
+ (local.get $7)
+ (i32.const 4)
)
)
- )
- (local.set $7
- (i32.add
- (local.get $7)
- (i32.const 4)
+ (br_if $while-in127
+ (i32.lt_u
+ (local.get $6)
+ (local.get $5)
+ )
)
- )
- (br_if $while-in127
- (i32.lt_u
- (local.get $6)
+ (local.set $7
(local.get $5)
)
)
- (local.set $7
- (local.get $5)
- )
)
)
- (local.set $7
- (i32.const 0)
+ (else
+ (local.set $7
+ (i32.const 0)
+ )
)
)
)
@@ -13743,38 +14459,42 @@
)
)
)
- (block (result i32)
- (local.set $7
- (local.get $5)
- )
- (select
- (local.get $6)
- (local.tee $5
- (i32.add
- (i32.xor
- (i32.and
- (local.get $12)
+ (then
+ (block (result i32)
+ (local.set $7
+ (local.get $5)
+ )
+ (select
+ (local.get $6)
+ (local.tee $5
+ (i32.add
+ (i32.xor
+ (i32.and
+ (local.get $12)
+ (i32.const 1)
+ )
(i32.const 1)
)
- (i32.const 1)
- )
- (i32.sub
- (local.get $39)
- (local.get $5)
+ (i32.sub
+ (local.get $39)
+ (local.get $5)
+ )
)
)
- )
- (i32.gt_s
- (local.get $6)
- (local.get $5)
+ (i32.gt_s
+ (local.get $6)
+ (local.get $5)
+ )
)
)
)
- (block (result i32)
- (local.set $7
- (local.get $26)
+ (else
+ (block (result i32)
+ (local.set $7
+ (local.get $26)
+ )
+ (i32.const 0)
)
- (i32.const 0)
)
)
)
@@ -13825,11 +14545,13 @@
(i32.const 32)
)
)
- (drop
- (call $___fwritex
- (local.get $9)
- (local.get $8)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $9)
+ (local.get $8)
+ (local.get $0)
+ )
)
)
)
@@ -13859,11 +14581,13 @@
(i32.const 32)
)
)
- (drop
- (call $___fwritex
- (local.get $7)
- (local.get $13)
- (local.get $0)
+ (then
+ (drop
+ (call $___fwritex
+ (local.get $7)
+ (local.get $13)
+ (local.get $0)
+ )
)
)
)
@@ -13892,101 +14616,115 @@
(i32.eqz
(local.get $0)
)
- (if
- (local.get $1)
- (block
- (local.set $0
- (i32.const 1)
- )
- (loop $while-in130
- (if
- (local.tee $1
- (i32.load
- (i32.add
- (local.get $4)
- (i32.shl
- (local.get $0)
- (i32.const 2)
- )
- )
- )
+ (then
+ (if
+ (local.get $1)
+ (then
+ (block
+ (local.set $0
+ (i32.const 1)
)
- (block
- (call $_pop_arg_336
- (i32.add
- (local.get $3)
- (i32.shl
- (local.get $0)
- (i32.const 3)
+ (loop $while-in130
+ (if
+ (local.tee $1
+ (i32.load
+ (i32.add
+ (local.get $4)
+ (i32.shl
+ (local.get $0)
+ (i32.const 2)
+ )
+ )
)
)
- (local.get $1)
- (local.get $2)
- )
- (br_if $while-in130
- (i32.lt_s
- (local.tee $0
- (i32.add
- (local.get $0)
+ (then
+ (block
+ (call $_pop_arg_336
+ (i32.add
+ (local.get $3)
+ (i32.shl
+ (local.get $0)
+ (i32.const 3)
+ )
+ )
+ (local.get $1)
+ (local.get $2)
+ )
+ (br_if $while-in130
+ (i32.lt_s
+ (local.tee $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
+ )
+ (i32.const 10)
+ )
+ )
+ (local.set $16
(i32.const 1)
)
+ (br $label$break$L343)
)
- (i32.const 10)
)
)
- (local.set $16
- (i32.const 1)
- )
- (br $label$break$L343)
)
- )
- )
- (if
- (i32.lt_s
- (local.get $0)
- (i32.const 10)
- )
- (loop $while-in132
(if
- (i32.load
- (i32.add
- (local.get $4)
- (i32.shl
- (local.get $0)
- (i32.const 2)
+ (i32.lt_s
+ (local.get $0)
+ (i32.const 10)
+ )
+ (then
+ (loop $while-in132
+ (if
+ (i32.load
+ (i32.add
+ (local.get $4)
+ (i32.shl
+ (local.get $0)
+ (i32.const 2)
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $16
+ (i32.const -1)
+ )
+ (br $label$break$L343)
+ )
+ )
+ )
+ (br_if $while-in132
+ (i32.lt_s
+ (local.tee $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
+ )
+ (i32.const 10)
+ )
+ )
+ (local.set $16
+ (i32.const 1)
)
)
)
- (block
+ (else
(local.set $16
- (i32.const -1)
- )
- (br $label$break$L343)
- )
- )
- (br_if $while-in132
- (i32.lt_s
- (local.tee $0
- (i32.add
- (local.get $0)
- (i32.const 1)
- )
+ (i32.const 1)
)
- (i32.const 10)
)
)
- (local.set $16
- (i32.const 1)
- )
)
+ )
+ (else
(local.set $16
- (i32.const 1)
+ (i32.const 0)
)
)
)
- (local.set $16
- (i32.const 0)
- )
)
)
)
@@ -14005,27 +14743,56 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (i32.const 20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $switch-default
- ;; CHECK-NEXT: (block $switch-case9
- ;; CHECK-NEXT: (block $switch-case8
- ;; CHECK-NEXT: (block $switch-case7
- ;; CHECK-NEXT: (block $switch-case6
- ;; CHECK-NEXT: (block $switch-case5
- ;; CHECK-NEXT: (block $switch-case4
- ;; CHECK-NEXT: (block $switch-case3
- ;; CHECK-NEXT: (block $switch-case2
- ;; CHECK-NEXT: (block $switch-case1
- ;; CHECK-NEXT: (block $switch-case
- ;; CHECK-NEXT: (br_table $switch-case $switch-case1 $switch-case2 $switch-case3 $switch-case4 $switch-case5 $switch-case6 $switch-case7 $switch-case8 $switch-case9 $switch-default
- ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (block $switch-default
+ ;; CHECK-NEXT: (block $switch-case9
+ ;; CHECK-NEXT: (block $switch-case8
+ ;; CHECK-NEXT: (block $switch-case7
+ ;; CHECK-NEXT: (block $switch-case6
+ ;; CHECK-NEXT: (block $switch-case5
+ ;; CHECK-NEXT: (block $switch-case4
+ ;; CHECK-NEXT: (block $switch-case3
+ ;; CHECK-NEXT: (block $switch-case2
+ ;; CHECK-NEXT: (block $switch-case1
+ ;; CHECK-NEXT: (block $switch-case
+ ;; CHECK-NEXT: (br_table $switch-case $switch-case1 $switch-case2 $switch-case3 $switch-case4 $switch-case5 $switch-case6 $switch-case7 $switch-case8 $switch-case9 $switch-default
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (local.tee $3
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.load
@@ -14041,19 +14808,32 @@
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (local.tee $1
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.load
@@ -14069,97 +14849,108 @@
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 65535)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
@@ -14187,31 +14978,14 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 65535)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 65535)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
@@ -14239,14 +15013,31 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 65535)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 255)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 24)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 24)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.shr_s
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.lt_s
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
@@ -14274,45 +15065,28 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 255)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 24)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 24)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 255)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.shr_s
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.lt_s
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (f64.load
;; CHECK-NEXT: (local.tee $1
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -4)
+ ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -14321,19 +15095,12 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 255)
+ ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=4
+ ;; CHECK-NEXT: (f64.store
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L1)
;; CHECK-NEXT: )
@@ -14363,33 +15130,6 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (f64.load
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (f64.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -14405,27 +15145,56 @@
(local.get $1)
(i32.const 20)
)
- (block $switch-default
- (block $switch-case9
- (block $switch-case8
- (block $switch-case7
- (block $switch-case6
- (block $switch-case5
- (block $switch-case4
- (block $switch-case3
- (block $switch-case2
- (block $switch-case1
- (block $switch-case
- (br_table $switch-case $switch-case1 $switch-case2 $switch-case3 $switch-case4 $switch-case5 $switch-case6 $switch-case7 $switch-case8 $switch-case9 $switch-default
- (i32.sub
+ (then
+ (block $switch-default
+ (block $switch-case9
+ (block $switch-case8
+ (block $switch-case7
+ (block $switch-case6
+ (block $switch-case5
+ (block $switch-case4
+ (block $switch-case3
+ (block $switch-case2
+ (block $switch-case1
+ (block $switch-case
+ (br_table $switch-case $switch-case1 $switch-case2 $switch-case3 $switch-case4 $switch-case5 $switch-case6 $switch-case7 $switch-case8 $switch-case9 $switch-default
+ (i32.sub
+ (local.get $1)
+ (i32.const 9)
+ )
+ )
+ )
+ (local.set $3
+ (i32.load
+ (local.tee $1
+ (i32.and
+ (i32.add
+ (i32.load
+ (local.get $2)
+ )
+ (i32.const 3)
+ )
+ (i32.const -4)
+ )
+ )
+ )
+ )
+ (i32.store
+ (local.get $2)
+ (i32.add
(local.get $1)
- (i32.const 9)
+ (i32.const 4)
)
)
+ (i32.store
+ (local.get $0)
+ (local.get $3)
+ )
+ (br $label$break$L1)
)
- (local.set $3
+ (local.set $1
(i32.load
- (local.tee $1
+ (local.tee $3
(i32.and
(i32.add
(i32.load
@@ -14441,19 +15210,32 @@
(i32.store
(local.get $2)
(i32.add
- (local.get $1)
+ (local.get $3)
(i32.const 4)
)
)
(i32.store
(local.get $0)
- (local.get $3)
+ (local.get $1)
+ )
+ (i32.store offset=4
+ (local.get $0)
+ (i32.shr_s
+ (i32.shl
+ (i32.lt_s
+ (local.get $1)
+ (i32.const 0)
+ )
+ (i32.const 31)
+ )
+ (i32.const 31)
+ )
)
(br $label$break$L1)
)
- (local.set $1
+ (local.set $3
(i32.load
- (local.tee $3
+ (local.tee $1
(i32.and
(i32.add
(i32.load
@@ -14469,97 +15251,108 @@
(i32.store
(local.get $2)
(i32.add
- (local.get $3)
+ (local.get $1)
(i32.const 4)
)
)
(i32.store
(local.get $0)
- (local.get $1)
+ (local.get $3)
)
(i32.store offset=4
(local.get $0)
- (i32.shr_s
- (i32.shl
- (i32.lt_s
- (local.get $1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.const 31)
- )
+ (i32.const 0)
)
(br $label$break$L1)
)
- (local.set $3
+ (local.set $5
(i32.load
- (local.tee $1
- (i32.and
- (i32.add
- (i32.load
- (local.get $2)
+ (local.tee $3
+ (local.tee $1
+ (i32.and
+ (i32.add
+ (i32.load
+ (local.get $2)
+ )
+ (i32.const 7)
)
- (i32.const 3)
+ (i32.const -8)
)
- (i32.const -4)
)
)
)
)
+ (local.set $3
+ (i32.load offset=4
+ (local.get $3)
+ )
+ )
(i32.store
(local.get $2)
(i32.add
(local.get $1)
- (i32.const 4)
+ (i32.const 8)
)
)
(i32.store
(local.get $0)
- (local.get $3)
+ (local.get $5)
)
(i32.store offset=4
(local.get $0)
- (i32.const 0)
+ (local.get $3)
)
(br $label$break$L1)
)
- (local.set $5
+ (local.set $3
(i32.load
- (local.tee $3
- (local.tee $1
- (i32.and
- (i32.add
- (i32.load
- (local.get $2)
- )
- (i32.const 7)
+ (local.tee $1
+ (i32.and
+ (i32.add
+ (i32.load
+ (local.get $2)
)
- (i32.const -8)
+ (i32.const 3)
)
+ (i32.const -4)
)
)
)
)
- (local.set $3
- (i32.load offset=4
- (local.get $3)
- )
- )
(i32.store
(local.get $2)
(i32.add
(local.get $1)
- (i32.const 8)
+ (i32.const 4)
)
)
(i32.store
(local.get $0)
- (local.get $5)
+ (local.tee $1
+ (i32.shr_s
+ (i32.shl
+ (i32.and
+ (local.get $3)
+ (i32.const 65535)
+ )
+ (i32.const 16)
+ )
+ (i32.const 16)
+ )
+ )
)
(i32.store offset=4
(local.get $0)
- (local.get $3)
+ (i32.shr_s
+ (i32.shl
+ (i32.lt_s
+ (local.get $1)
+ (i32.const 0)
+ )
+ (i32.const 31)
+ )
+ (i32.const 31)
+ )
)
(br $label$break$L1)
)
@@ -14587,31 +15380,14 @@
)
(i32.store
(local.get $0)
- (local.tee $1
- (i32.shr_s
- (i32.shl
- (i32.and
- (local.get $3)
- (i32.const 65535)
- )
- (i32.const 16)
- )
- (i32.const 16)
- )
+ (i32.and
+ (local.get $3)
+ (i32.const 65535)
)
)
(i32.store offset=4
(local.get $0)
- (i32.shr_s
- (i32.shl
- (i32.lt_s
- (local.get $1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.const 31)
- )
+ (i32.const 0)
)
(br $label$break$L1)
)
@@ -14639,14 +15415,31 @@
)
(i32.store
(local.get $0)
- (i32.and
- (local.get $3)
- (i32.const 65535)
+ (local.tee $1
+ (i32.shr_s
+ (i32.shl
+ (i32.and
+ (local.get $3)
+ (i32.const 255)
+ )
+ (i32.const 24)
+ )
+ (i32.const 24)
+ )
)
)
(i32.store offset=4
(local.get $0)
- (i32.const 0)
+ (i32.shr_s
+ (i32.shl
+ (i32.lt_s
+ (local.get $1)
+ (i32.const 0)
+ )
+ (i32.const 31)
+ )
+ (i32.const 31)
+ )
)
(br $label$break$L1)
)
@@ -14674,45 +15467,28 @@
)
(i32.store
(local.get $0)
- (local.tee $1
- (i32.shr_s
- (i32.shl
- (i32.and
- (local.get $3)
- (i32.const 255)
- )
- (i32.const 24)
- )
- (i32.const 24)
- )
+ (i32.and
+ (local.get $3)
+ (i32.const 255)
)
)
(i32.store offset=4
(local.get $0)
- (i32.shr_s
- (i32.shl
- (i32.lt_s
- (local.get $1)
- (i32.const 0)
- )
- (i32.const 31)
- )
- (i32.const 31)
- )
+ (i32.const 0)
)
(br $label$break$L1)
)
- (local.set $3
- (i32.load
+ (local.set $4
+ (f64.load
(local.tee $1
(i32.and
(i32.add
(i32.load
(local.get $2)
)
- (i32.const 3)
+ (i32.const 7)
)
- (i32.const -4)
+ (i32.const -8)
)
)
)
@@ -14721,19 +15497,12 @@
(local.get $2)
(i32.add
(local.get $1)
- (i32.const 4)
- )
- )
- (i32.store
- (local.get $0)
- (i32.and
- (local.get $3)
- (i32.const 255)
+ (i32.const 8)
)
)
- (i32.store offset=4
+ (f64.store
(local.get $0)
- (i32.const 0)
+ (local.get $4)
)
(br $label$break$L1)
)
@@ -14763,33 +15532,6 @@
(local.get $0)
(local.get $4)
)
- (br $label$break$L1)
- )
- (local.set $4
- (f64.load
- (local.tee $1
- (i32.and
- (i32.add
- (i32.load
- (local.get $2)
- )
- (i32.const 7)
- )
- (i32.const -8)
- )
- )
- )
- )
- (i32.store
- (local.get $2)
- (i32.add
- (local.get $1)
- (i32.const 8)
- )
- )
- (f64.store
- (local.get $0)
- (local.get $4)
)
)
)
@@ -14798,81 +15540,85 @@
;; CHECK: (func $_fmt_u (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (loop $while-in
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (call $___uremdi3
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (call $___uremdi3
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (call $___udivmoddi4
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (call $___udivmoddi4
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (global.get $tempRet0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (global.get $tempRet0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (loop $while-in1
- ;; CHECK-NEXT: (i32.store8
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (loop $while-in1
+ ;; CHECK-NEXT: (i32.store8
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.rem_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 48)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.rem_u
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (i32.div_u
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 48)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (i32.div_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -14898,103 +15644,113 @@
)
)
)
- (loop $while-in
- (i32.store8
- (local.tee $2
- (i32.add
- (local.get $2)
- (i32.const -1)
+ (then
+ (loop $while-in
+ (i32.store8
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.const -1)
+ )
)
- )
- (i32.or
- (local.tee $3
- (call $___uremdi3
- (local.get $0)
- (local.get $1)
- (i32.const 10)
- (i32.const 0)
+ (i32.or
+ (local.tee $3
+ (call $___uremdi3
+ (local.get $0)
+ (local.get $1)
+ (i32.const 10)
+ (i32.const 0)
+ )
)
+ (i32.const 48)
)
- (i32.const 48)
)
- )
- (local.set $3
- (call $___udivdi3
- (local.get $0)
- (local.get $1)
- (i32.const 10)
- (i32.const 0)
- )
- )
- (local.set $4
- (global.get $tempRet0)
- )
- (if
- (i32.or
- (i32.gt_u
+ (local.set $3
+ (call $___udivdi3
+ (local.get $0)
(local.get $1)
- (i32.const 9)
+ (i32.const 10)
+ (i32.const 0)
)
- (i32.and
- (i32.eq
+ )
+ (local.set $4
+ (global.get $tempRet0)
+ )
+ (if
+ (i32.or
+ (i32.gt_u
(local.get $1)
(i32.const 9)
)
- (i32.gt_u
- (local.get $0)
- (i32.const -1)
+ (i32.and
+ (i32.eq
+ (local.get $1)
+ (i32.const 9)
+ )
+ (i32.gt_u
+ (local.get $0)
+ (i32.const -1)
+ )
)
)
- )
- (block
- (local.set $0
- (local.get $3)
+ (then
+ (block
+ (local.set $0
+ (local.get $3)
+ )
+ (local.set $1
+ (local.get $4)
+ )
+ (br $while-in)
+ )
)
- (local.set $1
- (local.get $4)
+ (else
+ (local.set $0
+ (local.get $3)
+ )
)
- (br $while-in)
- )
- (local.set $0
- (local.get $3)
)
)
)
)
(if
(local.get $0)
- (loop $while-in1
- (i32.store8
- (local.tee $2
- (i32.add
- (local.get $2)
- (i32.const -1)
+ (then
+ (loop $while-in1
+ (i32.store8
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.const -1)
+ )
+ )
+ (i32.or
+ (call $i32u-rem
+ (local.get $0)
+ (i32.const 10)
+ )
+ (i32.const 48)
)
)
- (i32.or
- (call $i32u-rem
+ (local.set $1
+ (call $i32u-div
(local.get $0)
(i32.const 10)
)
- (i32.const 48)
)
- )
- (local.set $1
- (call $i32u-div
- (local.get $0)
- (i32.const 10)
- )
- )
- (if
- (i32.ge_u
- (local.get $0)
- (i32.const 10)
- )
- (block
- (local.set $0
- (local.get $1)
+ (if
+ (i32.ge_u
+ (local.get $0)
+ (i32.const 10)
+ )
+ (then
+ (block
+ (local.set $0
+ (local.get $1)
+ )
+ (br $while-in1)
+ )
)
- (br $while-in1)
)
)
)
@@ -15019,7 +15775,9 @@
;; CHECK-NEXT: (global.get $STACKTOP)
;; CHECK-NEXT: (global.get $STACK_MAX)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (local.get $7)
@@ -15038,7 +15796,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (call $_memset
;; CHECK-NEXT: (local.get $6)
@@ -15075,11 +15833,11 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 255)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (loop $while-in
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (call $___fwritex
;; CHECK-NEXT: (local.get $6)
@@ -15129,9 +15887,11 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (br_if $do-once
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -15167,7 +15927,9 @@
(global.get $STACKTOP)
(global.get $STACK_MAX)
)
- (call $abort)
+ (then
+ (call $abort)
+ )
)
(local.set $6
(local.get $7)
@@ -15186,110 +15948,118 @@
)
)
)
- (block
- (drop
- (call $_memset
- (local.get $6)
- (local.get $1)
- (select
- (i32.const 256)
- (local.tee $5
- (i32.sub
- (local.get $2)
- (local.get $3)
- )
- )
- (i32.gt_u
- (local.get $5)
+ (then
+ (block
+ (drop
+ (call $_memset
+ (local.get $6)
+ (local.get $1)
+ (select
(i32.const 256)
+ (local.tee $5
+ (i32.sub
+ (local.get $2)
+ (local.get $3)
+ )
+ )
+ (i32.gt_u
+ (local.get $5)
+ (i32.const 256)
+ )
)
)
)
- )
- (local.set $4
- (i32.eqz
- (i32.and
- (local.tee $1
- (i32.load
- (local.get $0)
+ (local.set $4
+ (i32.eqz
+ (i32.and
+ (local.tee $1
+ (i32.load
+ (local.get $0)
+ )
)
+ (i32.const 32)
)
- (i32.const 32)
)
)
- )
- (if
- (i32.gt_u
- (local.get $5)
- (i32.const 255)
- )
- (block
- (loop $while-in
- (if
- (local.get $4)
- (block
- (drop
- (call $___fwritex
- (local.get $6)
- (i32.const 256)
- (local.get $0)
+ (if
+ (i32.gt_u
+ (local.get $5)
+ (i32.const 255)
+ )
+ (then
+ (block
+ (loop $while-in
+ (if
+ (local.get $4)
+ (then
+ (block
+ (drop
+ (call $___fwritex
+ (local.get $6)
+ (i32.const 256)
+ (local.get $0)
+ )
+ )
+ (local.set $1
+ (i32.load
+ (local.get $0)
+ )
+ )
+ )
)
)
- (local.set $1
- (i32.load
- (local.get $0)
+ (local.set $4
+ (i32.eqz
+ (i32.and
+ (local.get $1)
+ (i32.const 32)
+ )
+ )
+ )
+ (br_if $while-in
+ (i32.gt_u
+ (local.tee $5
+ (i32.add
+ (local.get $5)
+ (i32.const -256)
+ )
+ )
+ (i32.const 255)
)
)
)
- )
- (local.set $4
- (i32.eqz
- (i32.and
- (local.get $1)
- (i32.const 32)
+ (br_if $do-once
+ (i32.eqz
+ (local.get $4)
)
)
- )
- (br_if $while-in
- (i32.gt_u
- (local.tee $5
- (i32.add
- (local.get $5)
- (i32.const -256)
+ (local.set $5
+ (i32.and
+ (i32.sub
+ (local.get $2)
+ (local.get $3)
)
+ (i32.const 255)
)
- (i32.const 255)
)
)
)
- (br_if $do-once
- (i32.eqz
- (local.get $4)
- )
- )
- (local.set $5
- (i32.and
- (i32.sub
- (local.get $2)
- (local.get $3)
+ (else
+ (br_if $do-once
+ (i32.eqz
+ (local.get $4)
)
- (i32.const 255)
)
)
)
- (br_if $do-once
- (i32.eqz
- (local.get $4)
+ (drop
+ (call $___fwritex
+ (local.get $6)
+ (local.get $5)
+ (local.get $0)
)
)
)
- (drop
- (call $___fwritex
- (local.get $6)
- (local.get $5)
- (local.get $0)
- )
- )
)
)
)
@@ -15323,7 +16093,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 245)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.tee $5
@@ -15358,7 +16128,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $10
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.tee $1
@@ -15402,20 +16172,22 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 176)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 176)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $10)
@@ -15423,7 +16195,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -15437,7 +16211,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $2)
@@ -15447,7 +16221,9 @@
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -15494,10 +16270,10 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $10
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.shr_u
@@ -15641,7 +16417,7 @@
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.and
@@ -15659,7 +16435,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $9)
@@ -15667,7 +16443,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -15681,7 +16459,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $10)
@@ -15696,7 +16474,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -15736,7 +16516,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $12
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 196)
@@ -15770,33 +16550,37 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.or
@@ -15852,7 +16636,7 @@
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.shr_u
@@ -15977,22 +16761,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load offset=20
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load offset=20
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $10
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $10
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-out)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-out)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16041,7 +16827,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ge_u
@@ -16053,7 +16841,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (i32.load offset=24
@@ -16070,7 +16860,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.tee $1
@@ -16084,24 +16874,26 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16117,7 +16909,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
@@ -16138,7 +16930,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
@@ -16154,8 +16946,10 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 0)
@@ -16166,7 +16960,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.tee $7
@@ -16176,7 +16970,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -16190,7 +16986,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -16204,7 +17002,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $0)
@@ -16217,7 +17015,9 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16225,7 +17025,7 @@
;; CHECK-NEXT: (block $do-once8
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $5)
@@ -16245,7 +17045,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $9)
@@ -16254,7 +17054,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.and
@@ -16274,7 +17074,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $8)
@@ -16282,7 +17082,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -16296,13 +17098,17 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br_if $do-once8
@@ -16321,7 +17127,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=24
;; CHECK-NEXT: (local.get $9)
@@ -16333,20 +17141,24 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=16
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=16
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16357,22 +17169,26 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16385,7 +17201,7 @@
;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.or
@@ -16416,7 +17232,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.or
@@ -16444,7 +17260,7 @@
;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $4
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 196)
@@ -16478,33 +17294,37 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.or
@@ -16558,252 +17378,270 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const -65)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const -65)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $18
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 180)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $18
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 180)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $14
;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 16777215)
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.gt_u
;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 14)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: (i32.const 16777215)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 14)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 520192)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 520192)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 245760)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 245760)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 15)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 15)
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $__rjto$3
- ;; CHECK-NEXT: (block $__rjti$3
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load offset=480
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (block $__rjto$3
+ ;; CHECK-NEXT: (block $__rjti$3
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load offset=480
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 25)
- ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 25)
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $14)
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in14
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.tee $9
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (loop $while-in14
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.tee $9
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjti$3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $__rjti$3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.load offset=20
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.load offset=20
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.tee $9
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.tee $9
+ ;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 16)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16811,134 +17649,148 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $8
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $8
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in14)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in14)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $18)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $18)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (local.get $14)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (i32.load offset=480
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (i32.load offset=480
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.tee $1
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.shr_u
;; CHECK-NEXT: (local.tee $4
;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 5)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.tee $1
;; CHECK-NEXT: (i32.and
@@ -16949,9 +17801,9 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -16966,887 +17818,814 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $__rjti$3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjti$3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $__rjto$3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjto$3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in16
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (loop $while-in16
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.load offset=16
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (select
;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.load offset=16
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-in16
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.load offset=20
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (br_if $while-in16
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.load offset=20
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 184)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.tee $12
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.tee $6
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.tee $12
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.load offset=24
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once17
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load offset=12
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.tee $6
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.load offset=24
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (block $do-once17
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.const 20)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load offset=12
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.const 20)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once17)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once17)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (loop $while-in20
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 20)
+ ;; CHECK-NEXT: (loop $while-in20
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 20)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $10)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in20)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $10
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in20)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $11
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in20)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (i32.load offset=8
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (i32.const 12)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $10)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $10
- ;; CHECK-NEXT: (i32.load offset=8
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: (i32.const 12)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.set $11
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $10)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $11
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once21
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (block $do-once21
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load offset=28
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load offset=28
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 480)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 480)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 180)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 180)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (br $do-once21)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br_if $do-once21
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once21)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load offset=16
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=16
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $do-once21
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load offset=20
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (block $do-once25
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load offset=16
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=16
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load offset=20
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $do-once25
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 16)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.store offset=4
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 256)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 216)
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 176)
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 256)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 216)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 176)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $13
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $13
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 176)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $13
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 176)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $13)
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $13
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=12
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $5
+ ;; CHECK-NEXT: (i32.store offset=8
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=12
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once25)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $13)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=12
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=8
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=12
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once25)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 16777215)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (local.tee $0
;; CHECK-NEXT: (i32.shr_u
;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 14)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 16777215)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 14)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (i32.const 520192)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 520192)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 245760)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 245760)
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (i32.const 15)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 15)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 480)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 480)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=28
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.store offset=28
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eqz
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 180)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 180)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=12
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=8
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once25)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 25)
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block $__rjto$1
- ;; CHECK-NEXT: (block $__rjti$1
- ;; CHECK-NEXT: (loop $while-in28
- ;; CHECK-NEXT: (br_if $__rjti$1
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eqz
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $7
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 16)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 180)
+ ;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-in28)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=24
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=12
;; CHECK-NEXT: (local.get $6)
@@ -17859,79 +18638,194 @@
;; CHECK-NEXT: (br $do-once25)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjto$1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 8)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 25)
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 31)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=12
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=8
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=12
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (block $__rjto$1
+ ;; CHECK-NEXT: (block $__rjti$1
+ ;; CHECK-NEXT: (loop $while-in28
+ ;; CHECK-NEXT: (br_if $__rjti$1
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $7
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-in28)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=12
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=8
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once25)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $__rjto$1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.ge_u
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store offset=12
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=8
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=12
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (return
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $0
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -17946,7 +18840,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 196)
@@ -17962,7 +18856,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 15)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: (local.tee $1
@@ -17998,7 +18892,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: (i32.const 0)
@@ -18057,54 +18951,58 @@
;; CHECK-NEXT: (i32.const 648)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (call $_sysconf
- ;; CHECK-NEXT: (i32.const 30)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (call $_sysconf
+ ;; CHECK-NEXT: (i32.const 30)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 656)
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 652)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 660)
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 664)
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 668)
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 620)
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 648)
- ;; CHECK-NEXT: (i32.xor
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (call $_time
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 656)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 652)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 660)
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 664)
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 668)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 620)
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 648)
+ ;; CHECK-NEXT: (i32.xor
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (call $_time
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -16)
+ ;; CHECK-NEXT: (i32.const 1431655768)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1431655768)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18139,8 +19037,10 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
@@ -18149,29 +19049,33 @@
;; CHECK-NEXT: (i32.const 616)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 608)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.le_u
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 608)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $11
@@ -18191,7 +19095,7 @@
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (block $label$break$L279
;; CHECK-NEXT: (block $__rjti$5
;; CHECK-NEXT: (block $__rjti$4
@@ -18218,26 +19122,28 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $while-out33)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $while-out33)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18266,33 +19172,37 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 2147483647)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (call $_sbrk
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (call $_sbrk
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $__rjti$13
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br_if $__rjti$13
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $__rjti$5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $__rjti$5)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18307,7 +19217,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (if (result i32)
;; CHECK-NEXT: (i32.and
@@ -18325,23 +19235,27 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $9
@@ -18365,22 +19279,24 @@
;; CHECK-NEXT: (i32.const 2147483647)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.tee $2
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (i32.const 616)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $label$break$L279
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.le_u
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $9)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br_if $label$break$L279
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.le_u
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18428,65 +19344,75 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $8)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 656)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $8)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 656)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 2147483647)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2147483647)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.eq
- ;; CHECK-NEXT: (call $_sbrk
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (drop
- ;; CHECK-NEXT: (call $_sbrk
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.eq
+ ;; CHECK-NEXT: (call $_sbrk
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (drop
+ ;; CHECK-NEXT: (call $_sbrk
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $label$break$L279)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $label$break$L279)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
@@ -18510,42 +19436,46 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 2147483647)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (call $_sbrk
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (call $_sbrk
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (call $_sbrk
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (call $_sbrk
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ne
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const -1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $__rjti$13
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.ne
;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const -1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.ne
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const -1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 40)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br_if $__rjti$13
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 40)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18571,9 +19501,11 @@
;; CHECK-NEXT: (i32.const 612)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 612)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 612)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (block $do-once40
@@ -18583,7 +19515,7 @@
;; CHECK-NEXT: (i32.const 200)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.const 624)
;; CHECK-NEXT: )
@@ -18631,91 +19563,93 @@
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.ge_u
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $11)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.ge_u
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (select
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (local.get $11)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (select
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $1
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 188)
+ ;; CHECK-NEXT: (local.set $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 188)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 200)
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 188)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 200)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 188)
;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=4
- ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.store offset=4
;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 40)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 204)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 664)
+ ;; CHECK-NEXT: (i32.store offset=4
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 40)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 204)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 664)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once40)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once40)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -18729,7 +19663,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: (local.get $1)
@@ -18758,7 +19692,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
@@ -18785,10 +19719,12 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (i32.const 624)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (i32.const 624)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $1)
@@ -18881,7 +19817,7 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 188)
;; CHECK-NEXT: (local.tee $0
@@ -18905,7 +19841,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $5)
@@ -18913,7 +19849,7 @@
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: (local.tee $0
@@ -18962,7 +19898,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $11
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $0)
@@ -18981,7 +19917,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.load offset=12
;; CHECK-NEXT: (local.get $5)
@@ -19005,13 +19941,15 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br_if $do-once51
;; CHECK-NEXT: (i32.eq
@@ -19030,7 +19968,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.and
@@ -19055,19 +19993,23 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $15
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $15
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -19081,7 +20023,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $15
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
@@ -19101,7 +20043,7 @@
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (i32.load offset=24
;; CHECK-NEXT: (local.get $5)
@@ -19117,7 +20059,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.tee $1
@@ -19136,20 +20078,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $12
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $12
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once55)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once55)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -19165,7 +20111,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
@@ -19186,7 +20132,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
@@ -19202,8 +20148,10 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 0)
@@ -19214,7 +20162,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.tee $2
@@ -19224,7 +20172,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -19238,7 +20188,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -19252,7 +20204,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (local.get $0)
@@ -19265,7 +20217,9 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -19295,7 +20249,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $12)
@@ -19320,7 +20274,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (br $label$break$L331)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $6)
@@ -19328,7 +20282,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -19342,13 +20298,17 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br_if $label$break$L331
@@ -19368,7 +20328,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=24
;; CHECK-NEXT: (local.get $12)
@@ -19385,20 +20347,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=16
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=16
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -19419,8 +20385,10 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store offset=20
;; CHECK-NEXT: (local.get $12)
;; CHECK-NEXT: (local.get $0)
@@ -19445,7 +20413,9 @@
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 4)
@@ -19483,7 +20453,7 @@
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.shl
@@ -19508,7 +20478,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ge_u
;; CHECK-NEXT: (local.tee $0
@@ -19525,7 +20495,7 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $16
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -19537,7 +20507,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.or
@@ -19588,7 +20558,7 @@
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block (result i32)
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (br_if $do-once65
;; CHECK-NEXT: (i32.const 31)
@@ -19678,7 +20648,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -19720,7 +20692,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.or
@@ -19811,7 +20783,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
@@ -19829,8 +20801,10 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $8)
@@ -19876,7 +20850,7 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store offset=12
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $8)
@@ -19898,7 +20872,9 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -19924,17 +20900,19 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br_if $while-out69
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.load offset=4
- ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (br_if $while-out69
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.load offset=4
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -20136,7 +21114,7 @@
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (i32.and
@@ -20173,7 +21151,7 @@
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.shl
@@ -20197,33 +21175,37 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $17
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $7
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $17
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $7
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.or
@@ -20272,93 +21254,101 @@
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.const 16777215)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (i32.const 16777215)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 14)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.tee $2
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 14)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.tee $2
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 520192)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 520192)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $2)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 245760)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 245760)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 15)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 15)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 2)
@@ -20394,7 +21384,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.or
@@ -20485,7 +21475,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $4
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
@@ -20503,8 +21493,10 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $6)
@@ -20550,7 +21542,7 @@
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store offset=12
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $6)
@@ -20572,13 +21564,15 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (i32.eqz
@@ -20593,9 +21587,11 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
@@ -20802,198 +21798,220 @@
(local.get $0)
(i32.const 245)
)
- (block
- (if
- (i32.and
- (local.tee $5
- (i32.shr_u
- (local.tee $11
- (i32.load
- (i32.const 176)
+ (then
+ (block
+ (if
+ (i32.and
+ (local.tee $5
+ (i32.shr_u
+ (local.tee $11
+ (i32.load
+ (i32.const 176)
+ )
)
- )
- (local.tee $13
- (i32.shr_u
- (local.tee $4
- (select
- (i32.const 16)
- (i32.and
- (i32.add
+ (local.tee $13
+ (i32.shr_u
+ (local.tee $4
+ (select
+ (i32.const 16)
+ (i32.and
+ (i32.add
+ (local.get $0)
+ (i32.const 11)
+ )
+ (i32.const -8)
+ )
+ (i32.lt_u
(local.get $0)
(i32.const 11)
)
- (i32.const -8)
- )
- (i32.lt_u
- (local.get $0)
- (i32.const 11)
)
)
+ (i32.const 3)
)
- (i32.const 3)
)
)
)
+ (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (local.set $10
- (i32.load
- (local.tee $1
- (i32.add
- (local.tee $7
- (i32.load
- (local.tee $3
- (i32.add
- (local.tee $2
+ (then
+ (block
+ (local.set $10
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.tee $7
+ (i32.load
+ (local.tee $3
(i32.add
- (i32.shl
- (local.tee $4
- (i32.add
- (i32.xor
- (i32.and
- (local.get $5)
- (i32.const 1)
+ (local.tee $2
+ (i32.add
+ (i32.shl
+ (local.tee $4
+ (i32.add
+ (i32.xor
+ (i32.and
+ (local.get $5)
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
+ (local.get $13)
)
- (i32.const 1)
)
- (local.get $13)
+ (i32.const 3)
)
+ (i32.const 216)
)
- (i32.const 3)
)
- (i32.const 216)
+ (i32.const 8)
)
)
- (i32.const 8)
)
)
+ (i32.const 8)
)
)
- (i32.const 8)
- )
- )
- )
- )
- (if
- (i32.eq
- (local.get $2)
- (local.get $10)
- )
- (i32.store
- (i32.const 176)
- (i32.and
- (local.get $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $4)
- )
- (i32.const -1)
)
)
- )
- (block
(if
- (i32.lt_u
+ (i32.eq
+ (local.get $2)
(local.get $10)
- (i32.load
- (i32.const 192)
- )
)
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $10)
- (i32.const 12)
+ (then
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (local.get $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $4)
+ )
+ (i32.const -1)
)
)
)
- (local.get $7)
)
- (block
- (i32.store
- (local.get $0)
- (local.get $2)
- )
- (i32.store
- (local.get $3)
- (local.get $10)
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $10)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (local.get $7)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $2)
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $10)
+ )
+ )
+ )
+ (else
+ (call $_abort)
+ )
+ )
)
)
- (call $_abort)
)
- )
- )
- (i32.store offset=4
- (local.get $7)
- (i32.or
- (local.tee $0
- (i32.shl
- (local.get $4)
+ (i32.store offset=4
+ (local.get $7)
+ (i32.or
+ (local.tee $0
+ (i32.shl
+ (local.get $4)
+ (i32.const 3)
+ )
+ )
(i32.const 3)
)
)
- (i32.const 3)
- )
- )
- (i32.store
- (local.tee $0
- (i32.add
- (i32.add
- (local.get $7)
- (local.get $0)
+ (i32.store
+ (local.tee $0
+ (i32.add
+ (i32.add
+ (local.get $7)
+ (local.get $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 1)
)
- (i32.const 4)
)
- )
- (i32.or
- (i32.load
- (local.get $0)
+ (return
+ (local.get $1)
)
- (i32.const 1)
)
)
- (return
- (local.get $1)
- )
)
- )
- (if
- (i32.gt_u
- (local.get $4)
- (local.tee $0
- (i32.load
- (i32.const 184)
+ (if
+ (i32.gt_u
+ (local.get $4)
+ (local.tee $0
+ (i32.load
+ (i32.const 184)
+ )
)
)
- )
- (block
- (if
- (local.get $5)
+ (then
(block
- (local.set $10
- (i32.and
- (i32.shr_u
- (local.tee $3
- (i32.add
- (i32.and
+ (if
+ (local.get $5)
+ (then
+ (block
+ (local.set $10
+ (i32.and
+ (i32.shr_u
(local.tee $3
- (i32.and
- (i32.shl
- (local.get $5)
- (local.get $13)
- )
- (i32.or
+ (i32.add
+ (i32.and
(local.tee $3
- (i32.shl
- (i32.const 2)
- (local.get $13)
+ (i32.and
+ (i32.shl
+ (local.get $5)
+ (local.get $13)
+ )
+ (i32.or
+ (local.tee $3
+ (i32.shl
+ (i32.const 2)
+ (local.get $13)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
+ (local.get $3)
+ )
+ )
)
)
(i32.sub
@@ -21001,2416 +22019,2652 @@
(local.get $3)
)
)
+ (i32.const -1)
)
)
- (i32.sub
- (i32.const 0)
- (local.get $3)
- )
+ (i32.const 12)
)
- (i32.const -1)
+ (i32.const 16)
)
)
- (i32.const 12)
- )
- (i32.const 16)
- )
- )
- (local.set $9
- (i32.load
- (local.tee $7
- (i32.add
- (local.tee $12
- (i32.load
- (local.tee $3
- (i32.add
- (local.tee $10
- (i32.add
- (i32.shl
- (local.tee $5
+ (local.set $9
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.tee $12
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.tee $10
(i32.add
- (i32.or
- (i32.or
- (i32.or
+ (i32.shl
+ (local.tee $5
+ (i32.add
(i32.or
- (local.tee $3
- (i32.and
- (i32.shr_u
- (local.tee $7
+ (i32.or
+ (i32.or
+ (i32.or
+ (local.tee $3
+ (i32.and
+ (i32.shr_u
+ (local.tee $7
+ (i32.shr_u
+ (local.get $3)
+ (local.get $10)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (local.get $10)
+ )
+ (local.tee $3
+ (i32.and
(i32.shr_u
- (local.get $3)
- (local.get $10)
+ (local.tee $7
+ (i32.shr_u
+ (local.get $7)
+ (local.get $3)
+ )
+ )
+ (i32.const 2)
)
+ (i32.const 4)
)
- (i32.const 5)
)
- (i32.const 8)
)
- )
- (local.get $10)
- )
- (local.tee $3
- (i32.and
- (i32.shr_u
- (local.tee $7
+ (local.tee $3
+ (i32.and
(i32.shr_u
- (local.get $7)
- (local.get $3)
+ (local.tee $7
+ (i32.shr_u
+ (local.get $7)
+ (local.get $3)
+ )
+ )
+ (i32.const 1)
)
+ (i32.const 2)
)
- (i32.const 2)
)
- (i32.const 4)
)
- )
- )
- (local.tee $3
- (i32.and
- (i32.shr_u
- (local.tee $7
+ (local.tee $3
+ (i32.and
(i32.shr_u
- (local.get $7)
- (local.get $3)
+ (local.tee $7
+ (i32.shr_u
+ (local.get $7)
+ (local.get $3)
+ )
+ )
+ (i32.const 1)
)
+ (i32.const 1)
)
- (i32.const 1)
)
- (i32.const 2)
)
- )
- )
- (local.tee $3
- (i32.and
(i32.shr_u
- (local.tee $7
- (i32.shr_u
- (local.get $7)
- (local.get $3)
- )
- )
- (i32.const 1)
+ (local.get $7)
+ (local.get $3)
)
- (i32.const 1)
)
)
+ (i32.const 3)
)
- (i32.shr_u
- (local.get $7)
- (local.get $3)
- )
+ (i32.const 216)
)
)
- (i32.const 3)
+ (i32.const 8)
)
- (i32.const 216)
)
)
- (i32.const 8)
)
+ (i32.const 8)
)
)
)
- (i32.const 8)
- )
- )
- )
- )
- (if
- (i32.eq
- (local.get $10)
- (local.get $9)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (local.get $11)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $5)
- )
- (i32.const -1)
- )
- )
- )
- (local.set $8
- (local.get $0)
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $9)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $9)
- (i32.const 12)
- )
- )
- )
- (local.get $12)
)
- (block
- (i32.store
- (local.get $0)
+ (if
+ (i32.eq
(local.get $10)
- )
- (i32.store
- (local.get $3)
(local.get $9)
)
- (local.set $8
- (i32.load
- (i32.const 184)
- )
- )
- )
- (call $_abort)
- )
- )
- )
- (i32.store offset=4
- (local.get $12)
- (i32.or
- (local.get $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (local.tee $10
- (i32.add
- (local.get $12)
- (local.get $4)
- )
- )
- (i32.or
- (local.tee $5
- (i32.sub
- (i32.shl
- (local.get $5)
- (i32.const 3)
- )
- (local.get $4)
- )
- )
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $10)
- (local.get $5)
- )
- (local.get $5)
- )
- (if
- (local.get $8)
- (block
- (local.set $12
- (i32.load
- (i32.const 196)
- )
- )
- (local.set $4
- (i32.add
- (i32.shl
- (local.tee $0
- (i32.shr_u
- (local.get $8)
- (i32.const 3)
+ (then
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (local.get $11)
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $5)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (local.set $8
+ (local.get $0)
)
- )
- (i32.const 3)
- )
- (i32.const 216)
- )
- )
- (if
- (i32.and
- (local.tee $3
- (i32.load
- (i32.const 176)
- )
- )
- (local.tee $0
- (i32.shl
- (i32.const 1)
- (local.get $0)
)
)
- )
- (if
- (i32.lt_u
- (local.tee $0
- (i32.load
- (local.tee $3
- (i32.add
- (local.get $4)
- (i32.const 8)
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $9)
+ (i32.load
+ (i32.const 192)
)
)
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $9)
+ (i32.const 12)
+ )
+ )
+ )
+ (local.get $12)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $10)
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $9)
+ )
+ (local.set $8
+ (i32.load
+ (i32.const 184)
+ )
+ )
+ )
+ )
+ (else
+ (call $_abort)
+ )
)
- )
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (local.set $2
- (local.get $3)
- )
- (local.set $1
- (local.get $0)
)
)
)
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (local.get $3)
- (local.get $0)
- )
+ (i32.store offset=4
+ (local.get $12)
+ (i32.or
+ (local.get $4)
+ (i32.const 3)
)
- (local.set $2
+ )
+ (i32.store offset=4
+ (local.tee $10
(i32.add
+ (local.get $12)
(local.get $4)
- (i32.const 8)
)
)
- (local.set $1
- (local.get $4)
- )
- )
- )
- (i32.store
- (local.get $2)
- (local.get $12)
- )
- (i32.store offset=12
- (local.get $1)
- (local.get $12)
- )
- (i32.store offset=8
- (local.get $12)
- (local.get $1)
- )
- (i32.store offset=12
- (local.get $12)
- (local.get $4)
- )
- )
- )
- (i32.store
- (i32.const 184)
- (local.get $5)
- )
- (i32.store
- (i32.const 196)
- (local.get $10)
- )
- (return
- (local.get $7)
- )
- )
- )
- (if
- (local.tee $0
- (i32.load
- (i32.const 180)
- )
- )
- (block
- (local.set $2
- (i32.and
- (i32.shr_u
- (local.tee $0
- (i32.add
- (i32.and
- (local.get $0)
+ (i32.or
+ (local.tee $5
(i32.sub
- (i32.const 0)
- (local.get $0)
+ (i32.shl
+ (local.get $5)
+ (i32.const 3)
+ )
+ (local.get $4)
)
)
- (i32.const -1)
+ (i32.const 1)
)
)
- (i32.const 12)
- )
- (i32.const 16)
- )
- )
- (local.set $7
- (i32.sub
- (i32.and
- (i32.load offset=4
- (local.tee $0
- (i32.load offset=480
- (i32.shl
+ (i32.store
+ (i32.add
+ (local.get $10)
+ (local.get $5)
+ )
+ (local.get $5)
+ )
+ (if
+ (local.get $8)
+ (then
+ (block
+ (local.set $12
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (local.set $4
(i32.add
- (i32.or
- (i32.or
- (i32.or
- (i32.or
- (local.tee $0
- (i32.and
- (i32.shr_u
- (local.tee $1
- (i32.shr_u
- (local.get $0)
- (local.get $2)
- )
- )
- (i32.const 5)
- )
- (i32.const 8)
- )
- )
- (local.get $2)
- )
- (local.tee $0
- (i32.and
- (i32.shr_u
- (local.tee $1
- (i32.shr_u
- (local.get $1)
- (local.get $0)
- )
- )
- (i32.const 2)
- )
- (i32.const 4)
- )
- )
+ (i32.shl
+ (local.tee $0
+ (i32.shr_u
+ (local.get $8)
+ (i32.const 3)
)
+ )
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ (if
+ (i32.and
+ (local.tee $3
+ (i32.load
+ (i32.const 176)
+ )
+ )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $0)
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
(local.tee $0
- (i32.and
- (i32.shr_u
- (local.tee $1
- (i32.shr_u
- (local.get $1)
- (local.get $0)
- )
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
)
- (i32.const 1)
)
- (i32.const 2)
)
)
+ (i32.load
+ (i32.const 192)
+ )
)
- (local.tee $0
- (i32.and
- (i32.shr_u
- (local.tee $1
- (i32.shr_u
- (local.get $1)
- (local.get $0)
- )
- )
- (i32.const 1)
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (local.set $2
+ (local.get $3)
+ )
+ (local.set $1
+ (local.get $0)
)
- (i32.const 1)
)
)
)
- (i32.shr_u
- (local.get $1)
- (local.get $0)
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (local.get $3)
+ (local.get $0)
+ )
+ )
+ (local.set $2
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
+ )
+ )
+ (local.set $1
+ (local.get $4)
+ )
)
)
- (i32.const 2)
)
- )
- )
- )
- (i32.const -8)
- )
- (local.get $4)
- )
- )
- (local.set $1
- (local.get $0)
- )
- (local.set $2
- (local.get $0)
- )
- (loop $while-in
- (block $while-out
- (if
- (i32.eqz
- (local.tee $0
- (i32.load offset=16
- (local.get $1)
- )
- )
- )
- (if
- (i32.eqz
- (local.tee $0
- (i32.load offset=20
+ (i32.store
+ (local.get $2)
+ (local.get $12)
+ )
+ (i32.store offset=12
(local.get $1)
+ (local.get $12)
)
- )
- )
- (block
- (local.set $10
- (local.get $7)
- )
- (local.set $5
- (local.get $2)
- )
- (br $while-out)
- )
- )
- )
- (local.set $10
- (i32.lt_u
- (local.tee $1
- (i32.sub
- (i32.and
- (i32.load offset=4
- (local.get $0)
- )
- (i32.const -8)
+ (i32.store offset=8
+ (local.get $12)
+ (local.get $1)
+ )
+ (i32.store offset=12
+ (local.get $12)
+ (local.get $4)
)
- (local.get $4)
)
)
- (local.get $7)
)
- )
- (local.set $7
- (select
- (local.get $1)
- (local.get $7)
- (local.get $10)
+ (i32.store
+ (i32.const 184)
+ (local.get $5)
)
- )
- (local.set $1
- (local.get $0)
- )
- (local.set $2
- (select
- (local.get $0)
- (local.get $2)
+ (i32.store
+ (i32.const 196)
(local.get $10)
)
- )
- (br $while-in)
- )
- )
- (if
- (i32.lt_u
- (local.get $5)
- (local.tee $12
- (i32.load
- (i32.const 192)
+ (return
+ (local.get $7)
)
)
)
- (call $_abort)
)
(if
- (i32.ge_u
- (local.get $5)
- (local.tee $11
- (i32.add
- (local.get $5)
- (local.get $4)
- )
+ (local.tee $0
+ (i32.load
+ (i32.const 180)
)
)
- (call $_abort)
- )
- (local.set $8
- (i32.load offset=24
- (local.get $5)
- )
- )
- (block $do-once4
- (if
- (i32.eq
- (local.tee $0
- (i32.load offset=12
- (local.get $5)
- )
- )
- (local.get $5)
- )
+ (then
(block
- (if
- (i32.eqz
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $5)
- (i32.const 20)
+ (local.set $2
+ (i32.and
+ (i32.shr_u
+ (local.tee $0
+ (i32.add
+ (i32.and
+ (local.get $0)
+ (i32.sub
+ (i32.const 0)
+ (local.get $0)
+ )
)
+ (i32.const -1)
)
)
+ (i32.const 12)
)
+ (i32.const 16)
)
- (if
- (i32.eqz
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $5)
- (i32.const 16)
+ )
+ (local.set $7
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (local.tee $0
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
+ (i32.or
+ (i32.or
+ (i32.or
+ (i32.or
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (local.tee $1
+ (i32.shr_u
+ (local.get $0)
+ (local.get $2)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (local.get $2)
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (local.tee $1
+ (i32.shr_u
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (local.tee $1
+ (i32.shr_u
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 1)
+ )
+ (i32.const 2)
+ )
+ )
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (local.tee $1
+ (i32.shr_u
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (i32.shr_u
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 2)
)
)
)
)
+ (i32.const -8)
)
- (block
- (local.set $9
- (i32.const 0)
- )
- (br $do-once4)
- )
+ (local.get $4)
)
)
- (loop $while-in7
- (if
- (local.tee $2
- (i32.load
- (local.tee $7
- (i32.add
+ (local.set $1
+ (local.get $0)
+ )
+ (local.set $2
+ (local.get $0)
+ )
+ (loop $while-in
+ (block $while-out
+ (if
+ (i32.eqz
+ (local.tee $0
+ (i32.load offset=16
(local.get $1)
- (i32.const 20)
)
)
)
- )
- (block
- (local.set $1
- (local.get $2)
- )
- (local.set $0
- (local.get $7)
+ (then
+ (if
+ (i32.eqz
+ (local.tee $0
+ (i32.load offset=20
+ (local.get $1)
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $10
+ (local.get $7)
+ )
+ (local.set $5
+ (local.get $2)
+ )
+ (br $while-out)
+ )
+ )
+ )
)
- (br $while-in7)
)
- )
- (if
- (local.tee $2
- (i32.load
- (local.tee $7
- (i32.add
- (local.get $1)
- (i32.const 16)
+ (local.set $10
+ (i32.lt_u
+ (local.tee $1
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (local.get $0)
+ )
+ (i32.const -8)
+ )
+ (local.get $4)
)
)
+ (local.get $7)
)
)
- (block
- (local.set $1
- (local.get $2)
- )
- (local.set $0
+ (local.set $7
+ (select
+ (local.get $1)
(local.get $7)
+ (local.get $10)
)
- (br $while-in7)
)
- )
- )
- (if
- (i32.lt_u
- (local.get $0)
- (local.get $12)
- )
- (call $_abort)
- (block
- (i32.store
+ (local.set $1
(local.get $0)
- (i32.const 0)
)
- (local.set $9
- (local.get $1)
+ (local.set $2
+ (select
+ (local.get $0)
+ (local.get $2)
+ (local.get $10)
+ )
)
+ (br $while-in)
)
)
- )
- (block
(if
(i32.lt_u
- (local.tee $7
- (i32.load offset=8
- (local.get $5)
+ (local.get $5)
+ (local.tee $12
+ (i32.load
+ (i32.const 192)
)
)
- (local.get $12)
)
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (local.tee $2
- (i32.add
- (local.get $7)
- (i32.const 12)
- )
- )
- )
- (local.get $5)
+ (then
+ (call $_abort)
)
- (call $_abort)
)
(if
- (i32.eq
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $0)
- (i32.const 8)
- )
+ (i32.ge_u
+ (local.get $5)
+ (local.tee $11
+ (i32.add
+ (local.get $5)
+ (local.get $4)
)
)
- (local.get $5)
)
- (block
- (i32.store
- (local.get $2)
- (local.get $0)
- )
- (i32.store
- (local.get $1)
- (local.get $7)
- )
- (local.set $9
- (local.get $0)
- )
+ (then
+ (call $_abort)
)
- (call $_abort)
)
- )
- )
- )
- (block $do-once8
- (if
- (local.get $8)
- (block
- (if
- (i32.eq
+ (local.set $8
+ (i32.load offset=24
(local.get $5)
- (i32.load
+ )
+ )
+ (block $do-once4
+ (if
+ (i32.eq
(local.tee $0
- (i32.add
- (i32.shl
+ (i32.load offset=12
+ (local.get $5)
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (block
+ (if
+ (i32.eqz
(local.tee $1
- (i32.load offset=28
- (local.get $5)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $5)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (i32.eqz
+ (local.tee $1
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $5)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $9
+ (i32.const 0)
+ )
+ (br $do-once4)
+ )
+ )
+ )
+ )
+ )
+ (loop $while-in7
+ (if
+ (local.tee $2
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.get $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $2)
+ )
+ (local.set $0
+ (local.get $7)
+ )
+ (br $while-in7)
+ )
+ )
+ )
+ (if
+ (local.tee $2
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.get $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $2)
+ )
+ (local.set $0
+ (local.get $7)
+ )
+ (br $while-in7)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (local.get $12)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.const 0)
+ )
+ (local.set $9
+ (local.get $1)
)
)
- (i32.const 2)
)
- (i32.const 480)
)
)
)
- )
- (block
- (i32.store
- (local.get $0)
- (local.get $9)
- )
- (if
- (i32.eqz
- (local.get $9)
- )
+ (else
(block
- (i32.store
- (i32.const 180)
- (i32.and
+ (if
+ (i32.lt_u
+ (local.tee $7
+ (i32.load offset=8
+ (local.get $5)
+ )
+ )
+ (local.get $12)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.ne
(i32.load
- (i32.const 180)
+ (local.tee $2
+ (i32.add
+ (local.get $7)
+ (i32.const 12)
+ )
+ )
)
- (i32.xor
- (i32.shl
- (i32.const 1)
+ (local.get $5)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $2)
+ (local.get $0)
+ )
+ (i32.store
(local.get $1)
+ (local.get $7)
+ )
+ (local.set $9
+ (local.get $0)
)
- (i32.const -1)
)
)
+ (else
+ (call $_abort)
+ )
)
- (br $do-once8)
)
)
)
- (block
- (if
- (i32.lt_u
- (local.get $8)
- (i32.load
- (i32.const 192)
+ )
+ (block $do-once8
+ (if
+ (local.get $8)
+ (then
+ (block
+ (if
+ (i32.eq
+ (local.get $5)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.tee $1
+ (i32.load offset=28
+ (local.get $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $9)
+ )
+ (if
+ (i32.eqz
+ (local.get $9)
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $1)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once8)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $8)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $8)
+ (i32.const 16)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (i32.store
+ (local.get $0)
+ (local.get $9)
+ )
+ )
+ (else
+ (i32.store offset=20
+ (local.get $8)
+ (local.get $9)
+ )
+ )
+ )
+ (br_if $do-once8
+ (i32.eqz
+ (local.get $9)
+ )
+ )
+ )
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
+ (if
+ (i32.lt_u
+ (local.get $9)
+ (local.tee $0
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (i32.store offset=24
+ (local.get $9)
+ (local.get $8)
+ )
+ (if
+ (local.tee $1
+ (i32.load offset=16
+ (local.get $5)
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $1)
+ (local.get $0)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=16
+ (local.get $9)
+ (local.get $1)
+ )
+ (i32.store offset=24
+ (local.get $1)
+ (local.get $9)
+ )
+ )
+ )
+ )
+ )
+ )
+ (if
(local.tee $0
- (i32.add
- (local.get $8)
- (i32.const 16)
+ (i32.load offset=20
+ (local.get $5)
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=20
+ (local.get $9)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $0)
+ (local.get $9)
+ )
+ )
+ )
)
)
)
- (local.get $5)
- )
- (i32.store
- (local.get $0)
- (local.get $9)
- )
- (i32.store offset=20
- (local.get $8)
- (local.get $9)
- )
- )
- (br_if $do-once8
- (i32.eqz
- (local.get $9)
)
)
)
)
(if
(i32.lt_u
- (local.get $9)
- (local.tee $0
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (local.get $9)
- (local.get $8)
- )
- (if
- (local.tee $1
- (i32.load offset=16
- (local.get $5)
- )
- )
- (if
- (i32.lt_u
- (local.get $1)
- (local.get $0)
- )
- (call $_abort)
- (block
- (i32.store offset=16
- (local.get $9)
- (local.get $1)
- )
- (i32.store offset=24
- (local.get $1)
- (local.get $9)
- )
- )
- )
- )
- (if
- (local.tee $0
- (i32.load offset=20
- (local.get $5)
- )
+ (local.get $10)
+ (i32.const 16)
)
- (if
- (i32.lt_u
- (local.get $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (then
(block
- (i32.store offset=20
- (local.get $9)
- (local.get $0)
- )
- (i32.store offset=24
- (local.get $0)
- (local.get $9)
+ (i32.store offset=4
+ (local.get $5)
+ (i32.or
+ (local.tee $0
+ (i32.add
+ (local.get $10)
+ (local.get $4)
+ )
+ )
+ (i32.const 3)
+ )
)
- )
- )
- )
- )
- )
- )
- (if
- (i32.lt_u
- (local.get $10)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (local.get $5)
- (i32.or
- (local.tee $0
- (i32.add
- (local.get $10)
- (local.get $4)
- )
- )
- (i32.const 3)
- )
- )
- (i32.store
- (local.tee $0
- (i32.add
- (i32.add
- (local.get $5)
- (local.get $0)
- )
- (i32.const 4)
- )
- )
- (i32.or
- (i32.load
- (local.get $0)
- )
- (i32.const 1)
- )
- )
- )
- (block
- (i32.store offset=4
- (local.get $5)
- (i32.or
- (local.get $4)
- (i32.const 3)
- )
- )
- (i32.store offset=4
- (local.get $11)
- (i32.or
- (local.get $10)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $11)
- (local.get $10)
- )
- (local.get $10)
- )
- (if
- (local.tee $0
- (i32.load
- (i32.const 184)
- )
- )
- (block
- (local.set $4
- (i32.load
- (i32.const 196)
- )
- )
- (local.set $2
- (i32.add
- (i32.shl
+ (i32.store
(local.tee $0
- (i32.shr_u
+ (i32.add
+ (i32.add
+ (local.get $5)
+ (local.get $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
(local.get $0)
- (i32.const 3)
)
+ (i32.const 1)
)
- (i32.const 3)
)
- (i32.const 216)
)
)
- (if
- (i32.and
- (local.tee $1
- (i32.load
- (i32.const 176)
+ (else
+ (block
+ (i32.store offset=4
+ (local.get $5)
+ (i32.or
+ (local.get $4)
+ (i32.const 3)
)
)
- (local.tee $0
- (i32.shl
+ (i32.store offset=4
+ (local.get $11)
+ (i32.or
+ (local.get $10)
(i32.const 1)
- (local.get $0)
)
)
- )
- (if
- (i32.lt_u
+ (i32.store
+ (i32.add
+ (local.get $11)
+ (local.get $10)
+ )
+ (local.get $10)
+ )
+ (if
(local.tee $0
(i32.load
- (local.tee $1
+ (i32.const 184)
+ )
+ )
+ (then
+ (block
+ (local.set $4
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (local.set $2
(i32.add
- (local.get $2)
- (i32.const 8)
+ (i32.shl
+ (local.tee $0
+ (i32.shr_u
+ (local.get $0)
+ (i32.const 3)
+ )
+ )
+ (i32.const 3)
+ )
+ (i32.const 216)
)
)
+ (if
+ (i32.and
+ (local.tee $1
+ (i32.load
+ (i32.const 176)
+ )
+ )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $0)
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.tee $0
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (local.set $6
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (local.set $6
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ (local.set $3
+ (local.get $2)
+ )
+ )
+ )
+ )
+ (i32.store
+ (local.get $6)
+ (local.get $4)
+ )
+ (i32.store offset=12
+ (local.get $3)
+ (local.get $4)
+ )
+ (i32.store offset=8
+ (local.get $4)
+ (local.get $3)
+ )
+ (i32.store offset=12
+ (local.get $4)
+ (local.get $2)
+ )
)
)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (local.set $6
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
- )
)
- )
- (block
(i32.store
- (i32.const 176)
- (i32.or
- (local.get $1)
- (local.get $0)
- )
- )
- (local.set $6
- (i32.add
- (local.get $2)
- (i32.const 8)
- )
+ (i32.const 184)
+ (local.get $10)
)
- (local.set $3
- (local.get $2)
+ (i32.store
+ (i32.const 196)
+ (local.get $11)
)
)
)
- (i32.store
- (local.get $6)
- (local.get $4)
- )
- (i32.store offset=12
- (local.get $3)
- (local.get $4)
- )
- (i32.store offset=8
- (local.get $4)
- (local.get $3)
- )
- (i32.store offset=12
- (local.get $4)
- (local.get $2)
+ )
+ (return
+ (i32.add
+ (local.get $5)
+ (i32.const 8)
)
)
)
- (i32.store
- (i32.const 184)
- (local.get $10)
- )
- (i32.store
- (i32.const 196)
- (local.get $11)
- )
)
- )
- (return
- (i32.add
- (local.get $5)
- (i32.const 8)
+ (else
+ (local.set $0
+ (local.get $4)
+ )
)
)
)
+ )
+ (else
(local.set $0
(local.get $4)
)
)
)
- (local.set $0
- (local.get $4)
- )
)
)
- (if
- (i32.gt_u
- (local.get $0)
- (i32.const -65)
- )
- (local.set $0
- (i32.const -1)
- )
- (block
- (local.set $2
- (i32.and
- (local.tee $0
- (i32.add
- (local.get $0)
- (i32.const 11)
- )
- )
- (i32.const -8)
- )
+ (else
+ (if
+ (i32.gt_u
+ (local.get $0)
+ (i32.const -65)
)
- (if
- (local.tee $18
- (i32.load
- (i32.const 180)
- )
+ (then
+ (local.set $0
+ (i32.const -1)
)
+ )
+ (else
(block
- (local.set $14
- (if (result i32)
+ (local.set $2
+ (i32.and
(local.tee $0
- (i32.shr_u
+ (i32.add
(local.get $0)
- (i32.const 8)
+ (i32.const 11)
)
)
- (if (result i32)
- (i32.gt_u
- (local.get $2)
- (i32.const 16777215)
- )
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $2)
- (i32.add
- (local.tee $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
- (i32.or
+ (i32.const -8)
+ )
+ )
+ (if
+ (local.tee $18
+ (i32.load
+ (i32.const 180)
+ )
+ )
+ (then
+ (block
+ (local.set $14
+ (if (result i32)
+ (local.tee $0
+ (i32.shr_u
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ (then
+ (if (result i32)
+ (i32.gt_u
+ (local.get $2)
+ (i32.const 16777215)
+ )
+ (then
+ (i32.const 31)
+ )
+ (else
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $2)
+ (i32.add
(local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $0)
- (local.tee $3
- (i32.and
- (i32.shr_u
- (i32.add
+ (i32.add
+ (i32.sub
+ (i32.const 14)
+ (i32.or
+ (i32.or
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $0)
+ (local.tee $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.get $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
+ )
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.const 520192)
+ )
+ (i32.const 16)
+ )
+ (i32.const 4)
+ )
+ )
+ (local.get $3)
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $1)
(local.get $0)
- (i32.const 1048320)
)
- (i32.const 16)
)
- (i32.const 8)
+ (i32.const 245760)
)
+ (i32.const 16)
)
+ (i32.const 2)
)
)
- (i32.const 520192)
)
- (i32.const 16)
)
- (i32.const 4)
- )
- )
- (local.get $3)
- )
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
+ (i32.shr_u
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
)
- (i32.const 245760)
+ (i32.const 15)
)
- (i32.const 16)
)
- (i32.const 2)
)
+ (i32.const 7)
)
)
+ (i32.const 1)
)
- (i32.shr_u
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- (i32.const 15)
+ (i32.shl
+ (local.get $0)
+ (i32.const 1)
)
)
)
- (i32.const 7)
)
)
- (i32.const 1)
- )
- (i32.shl
- (local.get $0)
- (i32.const 1)
- )
- )
- )
- (i32.const 0)
- )
- )
- (local.set $3
- (i32.sub
- (i32.const 0)
- (local.get $2)
- )
- )
- (block $__rjto$3
- (block $__rjti$3
- (if
- (local.tee $0
- (i32.load offset=480
- (i32.shl
- (local.get $14)
- (i32.const 2)
+ (else
+ (i32.const 0)
)
)
)
- (block
- (local.set $6
- (i32.const 0)
- )
- (local.set $8
- (i32.shl
- (local.get $2)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (local.get $14)
- (i32.const 1)
- )
- )
- (i32.eq
- (local.get $14)
- (i32.const 31)
- )
- )
- )
- )
- (local.set $1
+ (local.set $3
+ (i32.sub
(i32.const 0)
+ (local.get $2)
)
- (loop $while-in14
+ )
+ (block $__rjto$3
+ (block $__rjti$3
(if
- (i32.lt_u
- (local.tee $4
- (i32.sub
- (local.tee $9
- (i32.and
- (i32.load offset=4
- (local.get $0)
- )
- (i32.const -8)
- )
- )
- (local.get $2)
+ (local.tee $0
+ (i32.load offset=480
+ (i32.shl
+ (local.get $14)
+ (i32.const 2)
)
)
- (local.get $3)
)
- (if
- (i32.eq
- (local.get $9)
- (local.get $2)
- )
+ (then
(block
- (local.set $1
- (local.get $4)
- )
- (local.set $3
- (local.get $0)
- )
- (br $__rjti$3)
- )
- (block
- (local.set $3
- (local.get $4)
- )
- (local.set $1
- (local.get $0)
- )
- )
- )
- )
- (local.set $0
- (select
- (local.get $6)
- (local.tee $4
- (i32.load offset=20
- (local.get $0)
- )
- )
- (i32.or
- (i32.eqz
- (local.get $4)
+ (local.set $6
+ (i32.const 0)
)
- (i32.eq
- (local.get $4)
- (local.tee $9
- (i32.load
- (i32.add
- (i32.add
- (local.get $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (local.get $8)
- (i32.const 31)
- )
- (i32.const 2)
+ (local.set $8
+ (i32.shl
+ (local.get $2)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (local.get $14)
+ (i32.const 1)
)
)
+ (i32.eq
+ (local.get $14)
+ (i32.const 31)
+ )
)
)
)
- )
- )
- )
- (local.set $4
- (i32.shl
- (local.get $8)
- (i32.xor
- (local.tee $6
- (i32.eqz
- (local.get $9)
- )
- )
- (i32.const 1)
- )
- )
- )
- (if
- (local.get $6)
- (block
- (local.set $4
- (local.get $0)
- )
- (local.set $0
- (local.get $1)
- )
- )
- (block
- (local.set $6
- (local.get $0)
- )
- (local.set $8
- (local.get $4)
- )
- (local.set $0
- (local.get $9)
- )
- (br $while-in14)
- )
- )
- )
- )
- (block
- (local.set $4
- (i32.const 0)
- )
- (local.set $0
- (i32.const 0)
- )
- )
- )
- (if
- (i32.and
- (i32.eqz
- (local.get $4)
- )
- (i32.eqz
- (local.get $0)
- )
- )
- (block
- (if
- (i32.eqz
- (local.tee $1
- (i32.and
- (local.get $18)
- (i32.or
- (local.tee $1
- (i32.shl
- (i32.const 2)
- (local.get $14)
- )
- )
- (i32.sub
- (i32.const 0)
- (local.get $1)
- )
- )
- )
- )
- )
- (block
- (local.set $0
- (local.get $2)
- )
- (br $do-once)
- )
- )
- (local.set $9
- (i32.and
- (i32.shr_u
- (local.tee $1
- (i32.add
- (i32.and
- (local.get $1)
- (i32.sub
- (i32.const 0)
- (local.get $1)
- )
- )
- (i32.const -1)
+ (local.set $1
+ (i32.const 0)
)
- )
- (i32.const 12)
- )
- (i32.const 16)
- )
- )
- (local.set $4
- (i32.load offset=480
- (i32.shl
- (i32.add
- (i32.or
- (i32.or
- (i32.or
- (i32.or
- (local.tee $1
- (i32.and
- (i32.shr_u
- (local.tee $4
- (i32.shr_u
- (local.get $1)
- (local.get $9)
- )
+ (loop $while-in14
+ (if
+ (i32.lt_u
+ (local.tee $4
+ (i32.sub
+ (local.tee $9
+ (i32.and
+ (i32.load offset=4
+ (local.get $0)
)
- (i32.const 5)
+ (i32.const -8)
)
- (i32.const 8)
)
+ (local.get $2)
)
- (local.get $9)
)
- (local.tee $1
- (i32.and
- (i32.shr_u
- (local.tee $4
- (i32.shr_u
- (local.get $4)
- (local.get $1)
- )
+ (local.get $3)
+ )
+ (then
+ (if
+ (i32.eq
+ (local.get $9)
+ (local.get $2)
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $4)
)
- (i32.const 2)
+ (local.set $3
+ (local.get $0)
+ )
+ (br $__rjti$3)
)
- (i32.const 4)
)
- )
- )
- (local.tee $1
- (i32.and
- (i32.shr_u
- (local.tee $4
- (i32.shr_u
+ (else
+ (block
+ (local.set $3
(local.get $4)
- (local.get $1)
+ )
+ (local.set $1
+ (local.get $0)
)
)
- (i32.const 1)
)
- (i32.const 2)
)
)
)
- (local.tee $1
- (i32.and
- (i32.shr_u
- (local.tee $4
- (i32.shr_u
- (local.get $4)
- (local.get $1)
- )
+ (local.set $0
+ (select
+ (local.get $6)
+ (local.tee $4
+ (i32.load offset=20
+ (local.get $0)
)
- (i32.const 1)
)
- (i32.const 1)
- )
- )
- )
- (i32.shr_u
- (local.get $4)
- (local.get $1)
- )
- )
- (i32.const 2)
- )
- )
- )
- )
- )
- (if
- (local.get $4)
- (block
- (local.set $1
- (local.get $3)
- )
- (local.set $3
- (local.get $4)
- )
- (br $__rjti$3)
- )
- (local.set $4
- (local.get $0)
- )
- )
- (br $__rjto$3)
- )
- (loop $while-in16
- (local.set $9
- (i32.lt_u
- (local.tee $4
- (i32.sub
- (i32.and
- (i32.load offset=4
- (local.get $3)
- )
- (i32.const -8)
- )
- (local.get $2)
- )
- )
- (local.get $1)
- )
- )
- (local.set $1
- (select
- (local.get $4)
- (local.get $1)
- (local.get $9)
- )
- )
- (local.set $0
- (select
- (local.get $3)
- (local.get $0)
- (local.get $9)
- )
- )
- (if
- (local.tee $4
- (i32.load offset=16
- (local.get $3)
- )
- )
- (block
- (local.set $3
- (local.get $4)
- )
- (br $while-in16)
- )
- )
- (br_if $while-in16
- (local.tee $3
- (i32.load offset=20
- (local.get $3)
- )
- )
- )
- (local.set $3
- (local.get $1)
- )
- (local.set $4
- (local.get $0)
- )
- )
- )
- (if
- (local.get $4)
- (if
- (i32.lt_u
- (local.get $3)
- (i32.sub
- (i32.load
- (i32.const 184)
- )
- (local.get $2)
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $4)
- (local.tee $12
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (if
- (i32.ge_u
- (local.get $4)
- (local.tee $6
- (i32.add
- (local.get $4)
- (local.get $2)
- )
- )
- )
- (call $_abort)
- )
- (local.set $9
- (i32.load offset=24
- (local.get $4)
- )
- )
- (block $do-once17
- (if
- (i32.eq
- (local.tee $0
- (i32.load offset=12
- (local.get $4)
- )
- )
- (local.get $4)
- )
- (block
- (if
- (i32.eqz
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $4)
- (i32.const 20)
+ (i32.or
+ (i32.eqz
+ (local.get $4)
+ )
+ (i32.eq
+ (local.get $4)
+ (local.tee $9
+ (i32.load
+ (i32.add
+ (i32.add
+ (local.get $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (local.get $8)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ )
)
)
)
- )
- )
- (if
- (i32.eqz
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $4)
- (i32.const 16)
+ (local.set $4
+ (i32.shl
+ (local.get $8)
+ (i32.xor
+ (local.tee $6
+ (i32.eqz
+ (local.get $9)
+ )
)
+ (i32.const 1)
)
)
)
- )
- (block
- (local.set $11
- (i32.const 0)
- )
- (br $do-once17)
- )
- )
- )
- (loop $while-in20
- (if
- (local.tee $7
- (i32.load
- (local.tee $10
- (i32.add
- (local.get $1)
- (i32.const 20)
+ (if
+ (local.get $6)
+ (then
+ (block
+ (local.set $4
+ (local.get $0)
+ )
+ (local.set $0
+ (local.get $1)
+ )
)
)
- )
- )
- (block
- (local.set $1
- (local.get $7)
- )
- (local.set $0
- (local.get $10)
- )
- (br $while-in20)
- )
- )
- (if
- (local.tee $7
- (i32.load
- (local.tee $10
- (i32.add
- (local.get $1)
- (i32.const 16)
+ (else
+ (block
+ (local.set $6
+ (local.get $0)
+ )
+ (local.set $8
+ (local.get $4)
+ )
+ (local.set $0
+ (local.get $9)
+ )
+ (br $while-in14)
)
)
)
)
- (block
- (local.set $1
- (local.get $7)
- )
- (local.set $0
- (local.get $10)
- )
- (br $while-in20)
- )
)
)
- (if
- (i32.lt_u
- (local.get $0)
- (local.get $12)
- )
- (call $_abort)
+ (else
(block
- (i32.store
- (local.get $0)
+ (local.set $4
(i32.const 0)
)
- (local.set $11
- (local.get $1)
+ (local.set $0
+ (i32.const 0)
)
)
)
)
- (block
- (if
- (i32.lt_u
- (local.tee $10
- (i32.load offset=8
- (local.get $4)
- )
- )
- (local.get $12)
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (local.tee $7
- (i32.add
- (local.get $10)
- (i32.const 12)
- )
- )
- )
- (local.get $4)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $0)
- (i32.const 8)
- )
- )
- )
+ (if
+ (i32.and
+ (i32.eqz
(local.get $4)
)
- (block
- (i32.store
- (local.get $7)
- (local.get $0)
- )
- (i32.store
- (local.get $1)
- (local.get $10)
- )
- (local.set $11
- (local.get $0)
- )
+ (i32.eqz
+ (local.get $0)
)
- (call $_abort)
)
- )
- )
- )
- (block $do-once21
- (if
- (local.get $9)
- (block
- (if
- (i32.eq
- (local.get $4)
- (i32.load
- (local.tee $0
- (i32.add
- (i32.shl
- (local.tee $1
- (i32.load offset=28
- (local.get $4)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- )
- )
+ (then
(block
- (i32.store
- (local.get $0)
- (local.get $11)
- )
(if
(i32.eqz
- (local.get $11)
- )
- (block
- (i32.store
- (i32.const 180)
+ (local.tee $1
(i32.and
- (i32.load
- (i32.const 180)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
+ (local.get $18)
+ (i32.or
+ (local.tee $1
+ (i32.shl
+ (i32.const 2)
+ (local.get $14)
+ )
+ )
+ (i32.sub
+ (i32.const 0)
(local.get $1)
)
- (i32.const -1)
)
)
)
- (br $do-once21)
)
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $9)
- (i32.load
- (i32.const 192)
+ (then
+ (block
+ (local.set $0
+ (local.get $2)
+ )
+ (br $do-once)
)
)
- (call $_abort)
)
- (if
- (i32.eq
- (i32.load
- (local.tee $0
+ (local.set $9
+ (i32.and
+ (i32.shr_u
+ (local.tee $1
(i32.add
- (local.get $9)
- (i32.const 16)
+ (i32.and
+ (local.get $1)
+ (i32.sub
+ (i32.const 0)
+ (local.get $1)
+ )
+ )
+ (i32.const -1)
)
)
+ (i32.const 12)
)
- (local.get $4)
- )
- (i32.store
- (local.get $0)
- (local.get $11)
- )
- (i32.store offset=20
- (local.get $9)
- (local.get $11)
+ (i32.const 16)
)
)
- (br_if $do-once21
- (i32.eqz
- (local.get $11)
+ (local.set $4
+ (i32.load offset=480
+ (i32.shl
+ (i32.add
+ (i32.or
+ (i32.or
+ (i32.or
+ (i32.or
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (local.tee $4
+ (i32.shr_u
+ (local.get $1)
+ (local.get $9)
+ )
+ )
+ (i32.const 5)
+ )
+ (i32.const 8)
+ )
+ )
+ (local.get $9)
+ )
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (local.tee $4
+ (i32.shr_u
+ (local.get $4)
+ (local.get $1)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (local.tee $4
+ (i32.shr_u
+ (local.get $4)
+ (local.get $1)
+ )
+ )
+ (i32.const 1)
+ )
+ (i32.const 2)
+ )
+ )
+ )
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (local.tee $4
+ (i32.shr_u
+ (local.get $4)
+ (local.get $1)
+ )
+ )
+ (i32.const 1)
+ )
+ (i32.const 1)
+ )
+ )
+ )
+ (i32.shr_u
+ (local.get $4)
+ (local.get $1)
+ )
+ )
+ (i32.const 2)
+ )
)
)
)
)
- (if
- (i32.lt_u
- (local.get $11)
- (local.tee $0
- (i32.load
- (i32.const 192)
- )
+ )
+ (if
+ (local.get $4)
+ (then
+ (block
+ (local.set $1
+ (local.get $3)
)
- )
- (call $_abort)
- )
- (i32.store offset=24
- (local.get $11)
- (local.get $9)
- )
- (if
- (local.tee $1
- (i32.load offset=16
+ (local.set $3
(local.get $4)
)
- )
- (if
- (i32.lt_u
- (local.get $1)
- (local.get $0)
- )
- (call $_abort)
- (block
- (i32.store offset=16
- (local.get $11)
- (local.get $1)
- )
- (i32.store offset=24
- (local.get $1)
- (local.get $11)
- )
- )
+ (br $__rjti$3)
)
)
- (if
- (local.tee $0
- (i32.load offset=20
- (local.get $4)
- )
- )
- (if
- (i32.lt_u
- (local.get $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (local.get $11)
- (local.get $0)
- )
- (i32.store offset=24
- (local.get $0)
- (local.get $11)
- )
- )
+ (else
+ (local.set $4
+ (local.get $0)
)
)
)
+ (br $__rjto$3)
)
- )
- (block $do-once25
- (if
- (i32.lt_u
- (local.get $3)
- (i32.const 16)
- )
- (block
- (i32.store offset=4
- (local.get $4)
- (i32.or
- (local.tee $0
- (i32.add
- (local.get $3)
- (local.get $2)
- )
- )
- (i32.const 3)
- )
- )
- (i32.store
- (local.tee $0
- (i32.add
- (i32.add
- (local.get $4)
- (local.get $0)
+ (loop $while-in16
+ (local.set $9
+ (i32.lt_u
+ (local.tee $4
+ (i32.sub
+ (i32.and
+ (i32.load offset=4
+ (local.get $3)
+ )
+ (i32.const -8)
)
- (i32.const 4)
+ (local.get $2)
)
)
- (i32.or
- (i32.load
- (local.get $0)
- )
- (i32.const 1)
- )
+ (local.get $1)
)
)
- (block
- (i32.store offset=4
+ (local.set $1
+ (select
(local.get $4)
- (i32.or
- (local.get $2)
- (i32.const 3)
- )
+ (local.get $1)
+ (local.get $9)
)
- (i32.store offset=4
- (local.get $6)
- (i32.or
+ )
+ (local.set $0
+ (select
+ (local.get $3)
+ (local.get $0)
+ (local.get $9)
+ )
+ )
+ (if
+ (local.tee $4
+ (i32.load offset=16
(local.get $3)
- (i32.const 1)
)
)
- (i32.store
- (i32.add
- (local.get $6)
- (local.get $3)
+ (then
+ (block
+ (local.set $3
+ (local.get $4)
+ )
+ (br $while-in16)
)
- (local.get $3)
)
- (local.set $0
- (i32.shr_u
+ )
+ (br_if $while-in16
+ (local.tee $3
+ (i32.load offset=20
(local.get $3)
- (i32.const 3)
)
)
- (if
- (i32.lt_u
- (local.get $3)
- (i32.const 256)
+ )
+ (local.set $3
+ (local.get $1)
+ )
+ (local.set $4
+ (local.get $0)
+ )
+ )
+ )
+ (if
+ (local.get $4)
+ (then
+ (if
+ (i32.lt_u
+ (local.get $3)
+ (i32.sub
+ (i32.load
+ (i32.const 184)
+ )
+ (local.get $2)
)
+ )
+ (then
(block
- (local.set $3
- (i32.add
- (i32.shl
- (local.get $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
- )
(if
- (i32.and
- (local.tee $1
+ (i32.lt_u
+ (local.get $4)
+ (local.tee $12
(i32.load
- (i32.const 176)
+ (i32.const 192)
)
)
- (local.tee $0
- (i32.shl
- (i32.const 1)
- (local.get $0)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.ge_u
+ (local.get $4)
+ (local.tee $6
+ (i32.add
+ (local.get $4)
+ (local.get $2)
)
)
)
+ (then
+ (call $_abort)
+ )
+ )
+ (local.set $9
+ (i32.load offset=24
+ (local.get $4)
+ )
+ )
+ (block $do-once17
(if
- (i32.lt_u
+ (i32.eq
(local.tee $0
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $3)
- (i32.const 8)
+ (i32.load offset=12
+ (local.get $4)
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (block
+ (if
+ (i32.eqz
+ (local.tee $1
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $4)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (i32.eqz
+ (local.tee $1
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $4)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $11
+ (i32.const 0)
+ )
+ (br $do-once17)
+ )
+ )
+ )
+ )
+ )
+ (loop $while-in20
+ (if
+ (local.tee $7
+ (i32.load
+ (local.tee $10
+ (i32.add
+ (local.get $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $7)
+ )
+ (local.set $0
+ (local.get $10)
+ )
+ (br $while-in20)
+ )
+ )
+ )
+ (if
+ (local.tee $7
+ (i32.load
+ (local.tee $10
+ (i32.add
+ (local.get $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $7)
+ )
+ (local.set $0
+ (local.get $10)
+ )
+ (br $while-in20)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (local.get $12)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.const 0)
+ )
+ (local.set $11
+ (local.get $1)
+ )
)
)
)
- )
- (i32.load
- (i32.const 192)
)
)
- (call $_abort)
- (block
- (local.set $13
- (local.get $1)
- )
- (local.set $5
- (local.get $0)
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.tee $10
+ (i32.load offset=8
+ (local.get $4)
+ )
+ )
+ (local.get $12)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.ne
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.get $10)
+ (i32.const 12)
+ )
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $7)
+ (local.get $0)
+ )
+ (i32.store
+ (local.get $1)
+ (local.get $10)
+ )
+ (local.set $11
+ (local.get $0)
+ )
+ )
+ )
+ (else
+ (call $_abort)
+ )
+ )
)
)
)
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (local.get $1)
- (local.get $0)
- )
- )
- (local.set $13
- (i32.add
- (local.get $3)
- (i32.const 8)
+ )
+ (block $do-once21
+ (if
+ (local.get $9)
+ (then
+ (block
+ (if
+ (i32.eq
+ (local.get $4)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.tee $1
+ (i32.load offset=28
+ (local.get $4)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $11)
+ )
+ (if
+ (i32.eqz
+ (local.get $11)
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $1)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once21)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $9)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $9)
+ (i32.const 16)
+ )
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (i32.store
+ (local.get $0)
+ (local.get $11)
+ )
+ )
+ (else
+ (i32.store offset=20
+ (local.get $9)
+ (local.get $11)
+ )
+ )
+ )
+ (br_if $do-once21
+ (i32.eqz
+ (local.get $11)
+ )
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $11)
+ (local.tee $0
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (i32.store offset=24
+ (local.get $11)
+ (local.get $9)
+ )
+ (if
+ (local.tee $1
+ (i32.load offset=16
+ (local.get $4)
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $1)
+ (local.get $0)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=16
+ (local.get $11)
+ (local.get $1)
+ )
+ (i32.store offset=24
+ (local.get $1)
+ (local.get $11)
+ )
+ )
+ )
+ )
+ )
+ )
+ (if
+ (local.tee $0
+ (i32.load offset=20
+ (local.get $4)
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=20
+ (local.get $11)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $0)
+ (local.get $11)
+ )
+ )
+ )
+ )
+ )
+ )
)
)
- (local.set $5
- (local.get $3)
- )
)
)
- (i32.store
- (local.get $13)
- (local.get $6)
- )
- (i32.store offset=12
- (local.get $5)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $5)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $3)
- )
- (br $do-once25)
- )
- )
- (local.set $2
- (i32.add
- (i32.shl
- (local.tee $7
- (if (result i32)
- (local.tee $0
- (i32.shr_u
- (local.get $3)
- (i32.const 8)
+ (block $do-once25
+ (if
+ (i32.lt_u
+ (local.get $3)
+ (i32.const 16)
+ )
+ (then
+ (block
+ (i32.store offset=4
+ (local.get $4)
+ (i32.or
+ (local.tee $0
+ (i32.add
+ (local.get $3)
+ (local.get $2)
+ )
+ )
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (local.tee $0
+ (i32.add
+ (i32.add
+ (local.get $4)
+ (local.get $0)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 1)
+ )
)
)
- (if (result i32)
- (i32.gt_u
+ )
+ (else
+ (block
+ (i32.store offset=4
+ (local.get $4)
+ (i32.or
+ (local.get $2)
+ (i32.const 3)
+ )
+ )
+ (i32.store offset=4
+ (local.get $6)
+ (i32.or
+ (local.get $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (local.get $6)
+ (local.get $3)
+ )
(local.get $3)
- (i32.const 16777215)
)
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $3)
- (i32.add
- (local.tee $0
- (i32.add
- (i32.sub
- (i32.const 14)
+ (local.set $0
+ (i32.shr_u
+ (local.get $3)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $3)
+ (i32.const 256)
+ )
+ (then
+ (block
+ (local.set $3
+ (i32.add
+ (i32.shl
+ (local.get $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ (if
+ (i32.and
+ (local.tee $1
+ (i32.load
+ (i32.const 176)
+ )
+ )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $0)
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.tee $0
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $3)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (local.set $13
+ (local.get $1)
+ )
+ (local.set $5
+ (local.get $0)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
(i32.or
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (local.set $13
+ (i32.add
+ (local.get $3)
+ (i32.const 8)
+ )
+ )
+ (local.set $5
+ (local.get $3)
+ )
+ )
+ )
+ )
+ (i32.store
+ (local.get $13)
+ (local.get $6)
+ )
+ (i32.store offset=12
+ (local.get $5)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $5)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $3)
+ )
+ (br $do-once25)
+ )
+ )
+ )
+ (local.set $2
+ (i32.add
+ (i32.shl
+ (local.tee $7
+ (if (result i32)
+ (local.tee $0
+ (i32.shr_u
+ (local.get $3)
+ (i32.const 8)
+ )
+ )
+ (then
+ (if (result i32)
+ (i32.gt_u
+ (local.get $3)
+ (i32.const 16777215)
+ )
+ (then
+ (i32.const 31)
+ )
+ (else
(i32.or
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $0)
- (local.tee $2
- (i32.and
- (i32.shr_u
- (i32.add
- (local.get $0)
- (i32.const 1048320)
+ (i32.and
+ (i32.shr_u
+ (local.get $3)
+ (i32.add
+ (local.tee $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
+ (i32.or
+ (i32.or
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $0)
+ (local.tee $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.get $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
+ )
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.const 520192)
+ )
+ (i32.const 16)
+ )
+ (i32.const 4)
)
- (i32.const 16)
)
- (i32.const 8)
+ (local.get $2)
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 245760)
+ )
+ (i32.const 16)
+ )
+ (i32.const 2)
+ )
)
)
)
+ (i32.shr_u
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
+ )
+ (i32.const 15)
+ )
)
- (i32.const 520192)
)
- (i32.const 16)
+ (i32.const 7)
)
- (i32.const 4)
)
+ (i32.const 1)
)
- (local.get $2)
- )
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- )
- (i32.const 245760)
- )
- (i32.const 16)
- )
- (i32.const 2)
+ (i32.shl
+ (local.get $0)
+ (i32.const 1)
)
)
)
)
- (i32.shr_u
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- (i32.const 15)
- )
+ )
+ (else
+ (i32.const 0)
)
)
- (i32.const 7)
)
+ (i32.const 2)
)
- (i32.const 1)
- )
- (i32.shl
- (local.get $0)
- (i32.const 1)
+ (i32.const 480)
)
)
- )
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (local.get $6)
- (local.get $7)
- )
- (i32.store offset=4
- (local.tee $0
- (i32.add
- (local.get $6)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (local.get $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (local.tee $1
- (i32.load
- (i32.const 180)
- )
- )
- (local.tee $0
- (i32.shl
- (i32.const 1)
- (local.get $7)
- )
- )
- )
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (local.get $1)
- (local.get $0)
- )
- )
- (i32.store
- (local.get $2)
- (local.get $6)
- )
- (i32.store offset=24
- (local.get $6)
- (local.get $2)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $6)
- )
- (br $do-once25)
- )
- )
- (local.set $7
- (i32.shl
- (local.get $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (local.get $7)
- (i32.const 1)
- )
- )
- (i32.eq
- (local.get $7)
- (i32.const 31)
- )
- )
- )
- )
- (local.set $0
- (i32.load
- (local.get $2)
- )
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in28
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (local.get $0)
+ (i32.store offset=28
+ (local.get $6)
+ (local.get $7)
)
- (i32.const -8)
- )
- (local.get $3)
- )
- )
- (local.set $2
- (i32.shl
- (local.get $7)
- (i32.const 1)
- )
- )
- (if
- (local.tee $1
- (i32.load
- (local.tee $7
- (i32.add
+ (i32.store offset=4
+ (local.tee $0
(i32.add
- (local.get $0)
+ (local.get $6)
(i32.const 16)
)
- (i32.shl
- (i32.shr_u
+ )
+ (i32.const 0)
+ )
+ (i32.store
+ (local.get $0)
+ (i32.const 0)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (local.tee $1
+ (i32.load
+ (i32.const 180)
+ )
+ )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $7)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.store
+ (local.get $2)
+ (local.get $6)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (local.get $2)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $6)
+ )
+ (br $do-once25)
+ )
+ )
+ )
+ (local.set $7
+ (i32.shl
+ (local.get $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(local.get $7)
(i32.const 31)
)
- (i32.const 2)
)
)
)
- )
- )
- (block
- (local.set $7
- (local.get $2)
- )
- (local.set $0
- (local.get $1)
- )
- (br $while-in28)
- )
- )
- )
- (if
- (i32.lt_u
- (local.get $7)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store
- (local.get $7)
- (local.get $6)
- )
- (i32.store offset=24
- (local.get $6)
- (local.get $0)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $6)
- )
- (br $do-once25)
- )
- )
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (local.tee $2
- (i32.load
- (local.tee $3
- (i32.add
- (local.get $0)
- (i32.const 8)
+ (local.set $0
+ (i32.load
+ (local.get $2)
+ )
+ )
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in28
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (local.get $0)
+ )
+ (i32.const -8)
+ )
+ (local.get $3)
+ )
+ )
+ (local.set $2
+ (i32.shl
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (i32.add
+ (local.get $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (local.get $7)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $7
+ (local.get $2)
+ )
+ (local.set $0
+ (local.get $1)
+ )
+ (br $while-in28)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $7)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $7)
+ (local.get $6)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (local.get $0)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $6)
+ )
+ (br $do-once25)
+ )
+ )
+ )
+ (br $__rjto$1)
+ )
+ (if
+ (i32.and
+ (i32.ge_u
+ (local.tee $2
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (local.tee $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (local.get $0)
+ (local.get $1)
+ )
+ )
+ (then
+ (block
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $6)
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $2)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (i32.const 0)
+ )
+ )
+ )
+ (else
+ (call $_abort)
+ )
)
)
)
)
- (local.tee $1
- (i32.load
- (i32.const 192)
- )
- )
- )
- (i32.ge_u
- (local.get $0)
- (local.get $1)
)
)
- (block
- (i32.store offset=12
- (local.get $2)
- (local.get $6)
- )
- (i32.store
- (local.get $3)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $2)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $0)
- )
- (i32.store offset=24
- (local.get $6)
- (i32.const 0)
+ (return
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
)
)
- (call $_abort)
+ )
+ )
+ (else
+ (local.set $0
+ (local.get $2)
)
)
)
)
- )
- (return
- (i32.add
- (local.get $4)
- (i32.const 8)
+ (else
+ (local.set $0
+ (local.get $2)
+ )
)
)
)
+ )
+ (else
(local.set $0
(local.get $2)
)
)
- (local.set $0
- (local.get $2)
- )
)
)
- (local.set $0
- (local.get $2)
- )
)
)
)
@@ -23425,97 +24679,103 @@
)
(local.get $0)
)
- (block
- (local.set $2
- (i32.load
- (i32.const 196)
- )
- )
- (if
- (i32.gt_u
- (local.tee $3
- (i32.sub
- (local.get $1)
- (local.get $0)
- )
+ (then
+ (block
+ (local.set $2
+ (i32.load
+ (i32.const 196)
)
- (i32.const 15)
)
- (block
- (i32.store
- (i32.const 196)
- (local.tee $1
- (i32.add
- (local.get $2)
+ (if
+ (i32.gt_u
+ (local.tee $3
+ (i32.sub
+ (local.get $1)
(local.get $0)
)
)
+ (i32.const 15)
)
- (i32.store
- (i32.const 184)
- (local.get $3)
- )
- (i32.store offset=4
- (local.get $1)
- (i32.or
- (local.get $3)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $1)
- (local.get $3)
- )
- (local.get $3)
- )
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $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
- (local.get $2)
- (i32.or
- (local.get $1)
- (i32.const 3)
- )
- )
- (i32.store
- (local.tee $0
- (i32.add
+ (then
+ (block
+ (i32.store
+ (i32.const 196)
+ (local.tee $1
+ (i32.add
+ (local.get $2)
+ (local.get $0)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 184)
+ (local.get $3)
+ )
+ (i32.store offset=4
+ (local.get $1)
+ (i32.or
+ (local.get $3)
+ (i32.const 1)
+ )
+ )
+ (i32.store
(i32.add
- (local.get $2)
(local.get $1)
+ (local.get $3)
+ )
+ (local.get $3)
+ )
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
+ (local.get $0)
+ (i32.const 3)
)
- (i32.const 4)
)
)
- (i32.or
- (i32.load
- (local.get $0)
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
+ )
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
+ (local.get $1)
+ (i32.const 3)
+ )
+ )
+ (i32.store
+ (local.tee $0
+ (i32.add
+ (i32.add
+ (local.get $2)
+ (local.get $1)
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.or
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const 1)
+ )
)
- (i32.const 1)
)
)
)
- )
- (return
- (i32.add
- (local.get $2)
- (i32.const 8)
+ (return
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
)
)
)
@@ -23536,54 +24796,60 @@
(i32.const 648)
)
)
- (if
- (i32.and
- (i32.add
- (local.tee $1
- (call $_sysconf
- (i32.const 30)
+ (then
+ (if
+ (i32.and
+ (i32.add
+ (local.tee $1
+ (call $_sysconf
+ (i32.const 30)
+ )
)
+ (i32.const -1)
)
- (i32.const -1)
- )
- (local.get $1)
- )
- (call $_abort)
- (block
- (i32.store
- (i32.const 656)
- (local.get $1)
- )
- (i32.store
- (i32.const 652)
(local.get $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)
+ (then
+ (call $_abort)
)
- (i32.store
- (i32.const 648)
- (i32.xor
- (i32.and
- (call $_time
- (i32.const 0)
+ (else
+ (block
+ (i32.store
+ (i32.const 656)
+ (local.get $1)
+ )
+ (i32.store
+ (i32.const 652)
+ (local.get $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 1431655768)
)
- (i32.const -16)
)
- (i32.const 1431655768)
)
)
)
@@ -23618,8 +24884,10 @@
)
(local.get $0)
)
- (return
- (i32.const 0)
+ (then
+ (return
+ (i32.const 0)
+ )
)
)
(if
@@ -23628,29 +24896,33 @@
(i32.const 616)
)
)
- (if
- (i32.or
- (i32.le_u
- (local.tee $1
- (i32.add
- (local.tee $3
- (i32.load
- (i32.const 608)
+ (then
+ (if
+ (i32.or
+ (i32.le_u
+ (local.tee $1
+ (i32.add
+ (local.tee $3
+ (i32.load
+ (i32.const 608)
+ )
)
+ (local.get $5)
)
- (local.get $5)
)
+ (local.get $3)
+ )
+ (i32.gt_u
+ (local.get $1)
+ (local.get $2)
)
- (local.get $3)
)
- (i32.gt_u
- (local.get $1)
- (local.get $2)
+ (then
+ (return
+ (i32.const 0)
+ )
)
)
- (return
- (i32.const 0)
- )
)
)
(local.set $11
@@ -23670,316 +24942,352 @@
(i32.const 4)
)
)
- (block
- (block $label$break$L279
- (block $__rjti$5
- (block $__rjti$4
- (br_if $__rjti$4
- (i32.eqz
- (local.tee $4
- (i32.load
- (i32.const 200)
+ (then
+ (block
+ (block $label$break$L279
+ (block $__rjti$5
+ (block $__rjti$4
+ (br_if $__rjti$4
+ (i32.eqz
+ (local.tee $4
+ (i32.load
+ (i32.const 200)
+ )
)
)
)
- )
- (local.set $1
- (i32.const 624)
- )
- (loop $while-in34
- (block $while-out33
- (if
- (i32.le_u
- (local.tee $3
- (i32.load
- (local.get $1)
- )
- )
- (local.get $4)
- )
+ (local.set $1
+ (i32.const 624)
+ )
+ (loop $while-in34
+ (block $while-out33
(if
- (i32.gt_u
- (i32.add
- (local.get $3)
+ (i32.le_u
+ (local.tee $3
(i32.load
- (local.tee $2
- (i32.add
+ (local.get $1)
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (if
+ (i32.gt_u
+ (i32.add
+ (local.get $3)
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (local.get $1)
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (block
+ (local.set $4
(local.get $1)
- (i32.const 4)
)
+ (br $while-out33)
)
)
)
- (local.get $4)
)
- (block
- (local.set $4
+ )
+ (br_if $while-in34
+ (local.tee $1
+ (i32.load offset=8
(local.get $1)
)
- (br $while-out33)
)
)
+ (br $__rjti$4)
)
- (br_if $while-in34
- (local.tee $1
- (i32.load offset=8
- (local.get $1)
+ )
+ (if
+ (i32.lt_u
+ (local.tee $3
+ (i32.and
+ (i32.sub
+ (local.get $6)
+ (i32.load
+ (i32.const 188)
+ )
+ )
+ (local.get $9)
+ )
+ )
+ (i32.const 2147483647)
+ )
+ (then
+ (if
+ (i32.eq
+ (local.tee $1
+ (call $_sbrk
+ (local.get $3)
+ )
+ )
+ (i32.add
+ (i32.load
+ (local.get $4)
+ )
+ (i32.load
+ (local.get $2)
+ )
+ )
+ )
+ (then
+ (br_if $__rjti$13
+ (i32.ne
+ (local.get $1)
+ (i32.const -1)
+ )
+ )
+ )
+ (else
+ (block
+ (local.set $2
+ (local.get $1)
+ )
+ (br $__rjti$5)
+ )
)
)
)
- (br $__rjti$4)
)
+ (br $label$break$L279)
)
(if
- (i32.lt_u
- (local.tee $3
- (i32.and
- (i32.sub
- (local.get $6)
- (i32.load
- (i32.const 188)
- )
- )
- (local.get $9)
+ (i32.ne
+ (local.tee $1
+ (call $_sbrk
+ (i32.const 0)
)
)
- (i32.const 2147483647)
+ (i32.const -1)
)
- (if
- (i32.eq
- (local.tee $1
- (call $_sbrk
+ (then
+ (block
+ (local.set $3
+ (if (result i32)
+ (i32.and
+ (local.tee $2
+ (i32.add
+ (local.tee $4
+ (i32.load
+ (i32.const 652)
+ )
+ )
+ (i32.const -1)
+ )
+ )
+ (local.tee $3
+ (local.get $1)
+ )
+ )
+ (then
+ (i32.add
+ (i32.sub
+ (local.get $5)
+ (local.get $3)
+ )
+ (i32.and
+ (i32.add
+ (local.get $2)
+ (local.get $3)
+ )
+ (i32.sub
+ (i32.const 0)
+ (local.get $4)
+ )
+ )
+ )
+ )
+ (else
+ (local.get $5)
+ )
+ )
+ )
+ (local.set $9
+ (i32.add
+ (local.tee $4
+ (i32.load
+ (i32.const 608)
+ )
+ )
(local.get $3)
)
)
- (i32.add
- (i32.load
- (local.get $4)
+ (if
+ (i32.and
+ (i32.gt_u
+ (local.get $3)
+ (local.get $0)
+ )
+ (i32.lt_u
+ (local.get $3)
+ (i32.const 2147483647)
+ )
)
- (i32.load
- (local.get $2)
+ (then
+ (block
+ (if
+ (local.tee $2
+ (i32.load
+ (i32.const 616)
+ )
+ )
+ (then
+ (br_if $label$break$L279
+ (i32.or
+ (i32.le_u
+ (local.get $9)
+ (local.get $4)
+ )
+ (i32.gt_u
+ (local.get $9)
+ (local.get $2)
+ )
+ )
+ )
+ )
+ )
+ (br_if $__rjti$13
+ (i32.eq
+ (local.tee $2
+ (call $_sbrk
+ (local.get $3)
+ )
+ )
+ (local.get $1)
+ )
+ )
+ (br $__rjti$5)
+ )
)
)
)
- (br_if $__rjti$13
- (i32.ne
- (local.get $1)
- (i32.const -1)
- )
- )
- (block
- (local.set $2
- (local.get $1)
- )
- (br $__rjti$5)
- )
)
)
(br $label$break$L279)
)
+ (local.set $1
+ (local.get $3)
+ )
+ (local.set $4
+ (i32.sub
+ (i32.const 0)
+ (local.get $1)
+ )
+ )
(if
- (i32.ne
- (local.tee $1
- (call $_sbrk
- (i32.const 0)
+ (i32.and
+ (i32.gt_u
+ (local.get $11)
+ (local.get $1)
+ )
+ (i32.and
+ (i32.lt_u
+ (local.get $1)
+ (i32.const 2147483647)
+ )
+ (i32.ne
+ (local.get $2)
+ (i32.const -1)
)
)
- (i32.const -1)
)
- (block
- (local.set $3
- (if (result i32)
- (i32.and
- (local.tee $2
+ (then
+ (if
+ (i32.lt_u
+ (local.tee $3
+ (i32.and
(i32.add
- (local.tee $4
+ (i32.sub
+ (local.get $8)
+ (local.get $1)
+ )
+ (local.tee $3
(i32.load
- (i32.const 652)
+ (i32.const 656)
)
)
- (i32.const -1)
- )
- )
- (local.tee $3
- (local.get $1)
- )
- )
- (i32.add
- (i32.sub
- (local.get $5)
- (local.get $3)
- )
- (i32.and
- (i32.add
- (local.get $2)
- (local.get $3)
)
(i32.sub
(i32.const 0)
- (local.get $4)
+ (local.get $3)
)
)
)
- (local.get $5)
- )
- )
- (local.set $9
- (i32.add
- (local.tee $4
- (i32.load
- (i32.const 608)
- )
- )
- (local.get $3)
- )
- )
- (if
- (i32.and
- (i32.gt_u
- (local.get $3)
- (local.get $0)
- )
- (i32.lt_u
- (local.get $3)
- (i32.const 2147483647)
- )
+ (i32.const 2147483647)
)
- (block
+ (then
(if
- (local.tee $2
- (i32.load
- (i32.const 616)
+ (i32.eq
+ (call $_sbrk
+ (local.get $3)
)
+ (i32.const -1)
)
- (br_if $label$break$L279
- (i32.or
- (i32.le_u
- (local.get $9)
- (local.get $4)
- )
- (i32.gt_u
- (local.get $9)
- (local.get $2)
+ (then
+ (block
+ (drop
+ (call $_sbrk
+ (local.get $4)
+ )
)
+ (br $label$break$L279)
)
)
- )
- (br_if $__rjti$13
- (i32.eq
- (local.tee $2
- (call $_sbrk
+ (else
+ (local.set $3
+ (i32.add
(local.get $3)
+ (local.get $1)
)
)
- (local.get $1)
)
)
- (br $__rjti$5)
+ )
+ (else
+ (local.set $3
+ (local.get $1)
+ )
)
)
)
- )
- (br $label$break$L279)
- )
- (local.set $1
- (local.get $3)
- )
- (local.set $4
- (i32.sub
- (i32.const 0)
- (local.get $1)
- )
- )
- (if
- (i32.and
- (i32.gt_u
- (local.get $11)
- (local.get $1)
- )
- (i32.and
- (i32.lt_u
+ (else
+ (local.set $3
(local.get $1)
- (i32.const 2147483647)
- )
- (i32.ne
- (local.get $2)
- (i32.const -1)
)
)
)
(if
- (i32.lt_u
- (local.tee $3
- (i32.and
- (i32.add
- (i32.sub
- (local.get $8)
- (local.get $1)
- )
- (local.tee $3
- (i32.load
- (i32.const 656)
- )
- )
- )
- (i32.sub
- (i32.const 0)
- (local.get $3)
- )
- )
- )
- (i32.const 2147483647)
+ (i32.ne
+ (local.get $2)
+ (i32.const -1)
)
- (if
- (i32.eq
- (call $_sbrk
- (local.get $3)
- )
- (i32.const -1)
- )
+ (then
(block
- (drop
- (call $_sbrk
- (local.get $4)
- )
- )
- (br $label$break$L279)
- )
- (local.set $3
- (i32.add
- (local.get $3)
- (local.get $1)
+ (local.set $1
+ (local.get $2)
)
+ (br $__rjti$13)
)
)
- (local.set $3
- (local.get $1)
- )
- )
- (local.set $3
- (local.get $1)
)
)
- (if
- (i32.ne
- (local.get $2)
- (i32.const -1)
- )
- (block
- (local.set $1
- (local.get $2)
+ (i32.store
+ (i32.const 620)
+ (i32.or
+ (i32.load
+ (i32.const 620)
)
- (br $__rjti$13)
- )
- )
- )
- (i32.store
- (i32.const 620)
- (i32.or
- (i32.load
- (i32.const 620)
+ (i32.const 4)
)
- (i32.const 4)
)
)
)
@@ -23989,42 +25297,46 @@
(local.get $5)
(i32.const 2147483647)
)
- (if
- (i32.and
- (i32.lt_u
- (local.tee $1
- (call $_sbrk
- (local.get $5)
+ (then
+ (if
+ (i32.and
+ (i32.lt_u
+ (local.tee $1
+ (call $_sbrk
+ (local.get $5)
+ )
)
- )
- (local.tee $3
- (call $_sbrk
- (i32.const 0)
+ (local.tee $3
+ (call $_sbrk
+ (i32.const 0)
+ )
)
)
- )
- (i32.and
- (i32.ne
- (local.get $1)
- (i32.const -1)
- )
- (i32.ne
- (local.get $3)
- (i32.const -1)
- )
- )
- )
- (br_if $__rjti$13
- (i32.gt_u
- (local.tee $3
- (i32.sub
- (local.get $3)
+ (i32.and
+ (i32.ne
(local.get $1)
+ (i32.const -1)
+ )
+ (i32.ne
+ (local.get $3)
+ (i32.const -1)
)
)
- (i32.add
- (local.get $0)
- (i32.const 40)
+ )
+ (then
+ (br_if $__rjti$13
+ (i32.gt_u
+ (local.tee $3
+ (i32.sub
+ (local.get $3)
+ (local.get $1)
+ )
+ )
+ (i32.add
+ (local.get $0)
+ (i32.const 40)
+ )
+ )
)
)
)
@@ -24050,9 +25362,11 @@
(i32.const 612)
)
)
- (i32.store
- (i32.const 612)
- (local.get $2)
+ (then
+ (i32.store
+ (i32.const 612)
+ (local.get $2)
+ )
)
)
(block $do-once40
@@ -24062,2134 +25376,2286 @@
(i32.const 200)
)
)
- (block
- (local.set $2
- (i32.const 624)
- )
- (block $__rjto$10
- (block $__rjti$10
- (loop $while-in45
- (br_if $__rjti$10
- (i32.eq
- (local.get $1)
- (i32.add
- (local.tee $11
- (i32.load
- (local.get $2)
+ (then
+ (block
+ (local.set $2
+ (i32.const 624)
+ )
+ (block $__rjto$10
+ (block $__rjti$10
+ (loop $while-in45
+ (br_if $__rjti$10
+ (i32.eq
+ (local.get $1)
+ (i32.add
+ (local.tee $11
+ (i32.load
+ (local.get $2)
+ )
)
- )
- (local.tee $5
- (i32.load
- (local.tee $4
- (i32.add
- (local.get $2)
- (i32.const 4)
+ (local.tee $5
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (local.get $2)
+ (i32.const 4)
+ )
)
)
)
)
)
)
- )
- (br_if $while-in45
- (local.tee $2
- (i32.load offset=8
- (local.get $2)
+ (br_if $while-in45
+ (local.tee $2
+ (i32.load offset=8
+ (local.get $2)
+ )
)
)
)
- )
- (br $__rjto$10)
- )
- (if
- (i32.eqz
- (i32.and
- (i32.load offset=12
- (local.get $2)
- )
- (i32.const 8)
- )
+ (br $__rjto$10)
)
(if
- (i32.and
- (i32.lt_u
- (local.get $6)
- (local.get $1)
- )
- (i32.ge_u
- (local.get $6)
- (local.get $11)
+ (i32.eqz
+ (i32.and
+ (i32.load offset=12
+ (local.get $2)
+ )
+ (i32.const 8)
)
)
- (block
- (i32.store
- (local.get $4)
- (i32.add
- (local.get $5)
- (local.get $3)
+ (then
+ (if
+ (i32.and
+ (i32.lt_u
+ (local.get $6)
+ (local.get $1)
+ )
+ (i32.ge_u
+ (local.get $6)
+ (local.get $11)
+ )
)
- )
- (local.set $2
- (i32.add
- (local.get $6)
- (local.tee $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (local.tee $1
- (i32.add
- (local.get $6)
- (i32.const 8)
+ (then
+ (block
+ (i32.store
+ (local.get $4)
+ (i32.add
+ (local.get $5)
+ (local.get $3)
+ )
+ )
+ (local.set $2
+ (i32.add
+ (local.get $6)
+ (local.tee $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.tee $1
+ (i32.add
+ (local.get $6)
+ (i32.const 8)
+ )
+ )
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (local.get $1)
+ (i32.const 7)
)
)
)
- (i32.const 7)
)
- (i32.const 0)
- (i32.and
+ )
+ (local.set $1
+ (i32.add
+ (i32.sub
+ (local.get $3)
+ (local.get $1)
+ )
+ (i32.load
+ (i32.const 188)
+ )
+ )
+ )
+ (i32.store
+ (i32.const 200)
+ (local.get $2)
+ )
+ (i32.store
+ (i32.const 188)
+ (local.get $1)
+ )
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
(local.get $1)
- (i32.const 7)
+ (i32.const 1)
)
)
+ (i32.store offset=4
+ (i32.add
+ (local.get $2)
+ (local.get $1)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
+ )
+ (br $do-once40)
)
)
)
- (local.set $1
- (i32.add
- (i32.sub
- (local.get $3)
- (local.get $1)
- )
- (i32.load
- (i32.const 188)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (local.get $2)
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $1)
+ (local.tee $4
+ (i32.load
+ (i32.const 192)
)
+ )
+ )
+ (then
+ (block
(i32.store
- (i32.const 188)
+ (i32.const 192)
(local.get $1)
)
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $1)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (i32.add
- (local.get $2)
- (local.get $1)
- )
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
- )
+ (local.set $4
+ (local.get $1)
)
- (br $do-once40)
)
)
)
- )
- (if
- (i32.lt_u
- (local.get $1)
- (local.tee $4
- (i32.load
- (i32.const 192)
- )
- )
- )
- (block
- (i32.store
- (i32.const 192)
- (local.get $1)
- )
- (local.set $4
+ (local.set $11
+ (i32.add
(local.get $1)
+ (local.get $3)
)
)
- )
- (local.set $11
- (i32.add
- (local.get $1)
- (local.get $3)
+ (local.set $2
+ (i32.const 624)
)
- )
- (local.set $2
- (i32.const 624)
- )
- (block $__rjto$11
- (block $__rjti$11
- (loop $while-in47
- (if
- (i32.eq
- (i32.load
- (local.get $2)
+ (block $__rjto$11
+ (block $__rjti$11
+ (loop $while-in47
+ (if
+ (i32.eq
+ (i32.load
+ (local.get $2)
+ )
+ (local.get $11)
)
- (local.get $11)
- )
- (block
- (local.set $5
- (local.get $2)
+ (then
+ (block
+ (local.set $5
+ (local.get $2)
+ )
+ (br $__rjti$11)
+ )
)
- (br $__rjti$11)
)
- )
- (br_if $while-in47
- (local.tee $2
- (i32.load offset=8
- (local.get $2)
+ (br_if $while-in47
+ (local.tee $2
+ (i32.load offset=8
+ (local.get $2)
+ )
)
)
+ (local.set $4
+ (i32.const 624)
+ )
)
- (local.set $4
- (i32.const 624)
- )
+ (br $__rjto$11)
)
- (br $__rjto$11)
- )
- (if
- (i32.and
- (i32.load offset=12
- (local.get $2)
+ (if
+ (i32.and
+ (i32.load offset=12
+ (local.get $2)
+ )
+ (i32.const 8)
)
- (i32.const 8)
- )
- (local.set $4
- (i32.const 624)
- )
- (block
- (i32.store
- (local.get $5)
- (local.get $1)
+ (then
+ (local.set $4
+ (i32.const 624)
+ )
)
- (i32.store
- (local.tee $2
- (i32.add
- (local.get $2)
- (i32.const 4)
+ (else
+ (block
+ (i32.store
+ (local.get $5)
+ (local.get $1)
)
- )
- (i32.add
- (i32.load
- (local.get $2)
+ (i32.store
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.const 4)
+ )
+ )
+ (i32.add
+ (i32.load
+ (local.get $2)
+ )
+ (local.get $3)
+ )
)
- (local.get $3)
- )
- )
- (local.set $8
- (i32.add
- (local.tee $9
+ (local.set $8
(i32.add
- (local.get $1)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (local.tee $1
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (local.tee $9
+ (i32.add
+ (local.get $1)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.tee $1
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (local.get $1)
+ (i32.const 7)
)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (local.get $1)
- (i32.const 7)
)
)
+ (local.get $0)
)
)
- (local.get $0)
- )
- )
- (local.set $7
- (i32.sub
- (i32.sub
- (local.tee $5
- (i32.add
- (local.get $11)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (local.tee $1
- (i32.add
- (local.get $11)
- (i32.const 8)
+ (local.set $7
+ (i32.sub
+ (i32.sub
+ (local.tee $5
+ (i32.add
+ (local.get $11)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.tee $1
+ (i32.add
+ (local.get $11)
+ (i32.const 8)
+ )
+ )
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (local.get $1)
+ (i32.const 7)
)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (local.get $1)
- (i32.const 7)
)
)
+ (local.get $9)
)
+ (local.get $0)
)
- (local.get $9)
)
- (local.get $0)
- )
- )
- (i32.store offset=4
- (local.get $9)
- (i32.or
- (local.get $0)
- (i32.const 3)
- )
- )
- (block $do-once48
- (if
- (i32.eq
- (local.get $5)
- (local.get $6)
- )
- (block
- (i32.store
- (i32.const 188)
- (local.tee $0
- (i32.add
- (i32.load
- (i32.const 188)
- )
- (local.get $7)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (local.get $8)
- )
- (i32.store offset=4
- (local.get $8)
- (i32.or
- (local.get $0)
- (i32.const 1)
- )
+ (i32.store offset=4
+ (local.get $9)
+ (i32.or
+ (local.get $0)
+ (i32.const 3)
)
)
- (block
+ (block $do-once48
(if
(i32.eq
(local.get $5)
- (i32.load
- (i32.const 196)
- )
+ (local.get $6)
)
- (block
- (i32.store
- (i32.const 184)
- (local.tee $0
- (i32.add
- (i32.load
- (i32.const 184)
+ (then
+ (block
+ (i32.store
+ (i32.const 188)
+ (local.tee $0
+ (i32.add
+ (i32.load
+ (i32.const 188)
+ )
+ (local.get $7)
)
- (local.get $7)
)
)
- )
- (i32.store
- (i32.const 196)
- (local.get $8)
- )
- (i32.store offset=4
- (local.get $8)
- (i32.or
- (local.get $0)
- (i32.const 1)
+ (i32.store
+ (i32.const 200)
+ (local.get $8)
)
- )
- (i32.store
- (i32.add
+ (i32.store offset=4
(local.get $8)
- (local.get $0)
+ (i32.or
+ (local.get $0)
+ (i32.const 1)
+ )
)
- (local.get $0)
)
- (br $do-once48)
)
- )
- (i32.store
- (local.tee $0
- (i32.add
- (local.tee $0
- (if (result i32)
- (i32.eq
- (i32.and
+ (else
+ (block
+ (if
+ (i32.eq
+ (local.get $5)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 184)
(local.tee $0
- (i32.load offset=4
- (local.get $5)
+ (i32.add
+ (i32.load
+ (i32.const 184)
+ )
+ (local.get $7)
)
)
- (i32.const 3)
)
- (i32.const 1)
- )
- (block (result i32)
- (local.set $11
- (i32.and
+ (i32.store
+ (i32.const 196)
+ (local.get $8)
+ )
+ (i32.store offset=4
+ (local.get $8)
+ (i32.or
(local.get $0)
- (i32.const -8)
+ (i32.const 1)
)
)
- (local.set $1
- (i32.shr_u
+ (i32.store
+ (i32.add
+ (local.get $8)
(local.get $0)
- (i32.const 3)
)
+ (local.get $0)
)
- (block $label$break$L331
- (if
- (i32.lt_u
- (local.get $0)
- (i32.const 256)
- )
- (block
- (local.set $2
- (i32.load offset=12
- (local.get $5)
- )
- )
- (block $do-once51
- (if
- (i32.ne
- (local.tee $3
- (i32.load offset=8
- (local.get $5)
- )
- )
- (local.tee $0
- (i32.add
- (i32.shl
- (local.get $1)
- (i32.const 3)
- )
- (i32.const 216)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $3)
- (local.get $4)
- )
- (call $_abort)
- )
- (br_if $do-once51
- (i32.eq
- (i32.load offset=12
- (local.get $3)
- )
- (local.get $5)
- )
- )
- (call $_abort)
+ (br $do-once48)
+ )
+ )
+ )
+ (i32.store
+ (local.tee $0
+ (i32.add
+ (local.tee $0
+ (if (result i32)
+ (i32.eq
+ (i32.and
+ (local.tee $0
+ (i32.load offset=4
+ (local.get $5)
)
)
+ (i32.const 3)
)
- (if
- (i32.eq
- (local.get $2)
- (local.get $3)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $1)
- )
- (i32.const -1)
- )
- )
+ (i32.const 1)
+ )
+ (then
+ (block (result i32)
+ (local.set $11
+ (i32.and
+ (local.get $0)
+ (i32.const -8)
)
- (br $label$break$L331)
)
- )
- (block $do-once53
- (if
- (i32.eq
- (local.get $2)
+ (local.set $1
+ (i32.shr_u
(local.get $0)
+ (i32.const 3)
)
- (local.set $15
- (i32.add
- (local.get $2)
- (i32.const 8)
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $2)
- (local.get $4)
- )
- (call $_abort)
+ )
+ (block $label$break$L331
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (i32.const 256)
)
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $2)
- (i32.const 8)
- )
- )
- )
- (local.get $5)
- )
+ (then
(block
- (local.set $15
- (local.get $0)
+ (local.set $2
+ (i32.load offset=12
+ (local.get $5)
+ )
)
- (br $do-once53)
- )
- )
- (call $_abort)
- )
- )
- )
- (i32.store offset=12
- (local.get $3)
- (local.get $2)
- )
- (i32.store
- (local.get $15)
- (local.get $3)
- )
- )
- (block
- (local.set $6
- (i32.load offset=24
- (local.get $5)
- )
- )
- (block $do-once55
- (if
- (i32.eq
- (local.tee $0
- (i32.load offset=12
- (local.get $5)
- )
- )
- (local.get $5)
- )
- (block
- (if
- (i32.eqz
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
- (local.tee $3
- (i32.add
+ (block $do-once51
+ (if
+ (i32.ne
+ (local.tee $3
+ (i32.load offset=8
+ (local.get $5)
+ )
+ )
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.get $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ )
+ (then
+ (block
+ (if
+ (i32.lt_u
+ (local.get $3)
+ (local.get $4)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (br_if $do-once51
+ (i32.eq
+ (i32.load offset=12
+ (local.get $3)
+ )
(local.get $5)
- (i32.const 16)
)
)
- (i32.const 4)
+ (call $_abort)
)
)
)
)
- )
- (if
- (local.tee $1
- (i32.load
+ (if
+ (i32.eq
+ (local.get $2)
(local.get $3)
)
- )
- (local.set $0
- (local.get $3)
- )
- (block
- (local.set $12
- (i32.const 0)
- )
- (br $do-once55)
- )
- )
- )
- (loop $while-in58
- (if
- (local.tee $3
- (i32.load
- (local.tee $2
- (i32.add
- (local.get $1)
- (i32.const 20)
+ (then
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $1)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $label$break$L331)
)
)
)
- (block
- (local.set $1
- (local.get $3)
- )
- (local.set $0
- (local.get $2)
- )
- (br $while-in58)
- )
- )
- (if
- (local.tee $3
- (i32.load
- (local.tee $2
- (i32.add
- (local.get $1)
- (i32.const 16)
+ (block $do-once53
+ (if
+ (i32.eq
+ (local.get $2)
+ (local.get $0)
+ )
+ (then
+ (local.set $15
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $2)
+ (local.get $4)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (block
+ (local.set $15
+ (local.get $0)
+ )
+ (br $do-once53)
+ )
+ )
+ )
+ (call $_abort)
)
)
)
)
- (block
- (local.set $1
- (local.get $3)
- )
- (local.set $0
- (local.get $2)
- )
- (br $while-in58)
+ (i32.store offset=12
+ (local.get $3)
+ (local.get $2)
)
- )
- )
- (if
- (i32.lt_u
- (local.get $0)
- (local.get $4)
- )
- (call $_abort)
- (block
(i32.store
- (local.get $0)
- (i32.const 0)
- )
- (local.set $12
- (local.get $1)
+ (local.get $15)
+ (local.get $3)
)
)
)
- )
- (block
- (if
- (i32.lt_u
- (local.tee $2
- (i32.load offset=8
+ (else
+ (block
+ (local.set $6
+ (i32.load offset=24
(local.get $5)
)
)
- (local.get $4)
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (local.tee $3
- (i32.add
- (local.get $2)
- (i32.const 12)
+ (block $do-once55
+ (if
+ (i32.eq
+ (local.tee $0
+ (i32.load offset=12
+ (local.get $5)
+ )
+ )
+ (local.get $5)
)
- )
- )
- (local.get $5)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $0)
- (i32.const 8)
+ (then
+ (block
+ (if
+ (i32.eqz
+ (local.tee $1
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.tee $3
+ (i32.add
+ (local.get $5)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (local.tee $1
+ (i32.load
+ (local.get $3)
+ )
+ )
+ (then
+ (local.set $0
+ (local.get $3)
+ )
+ )
+ (else
+ (block
+ (local.set $12
+ (i32.const 0)
+ )
+ (br $do-once55)
+ )
+ )
+ )
+ )
+ )
+ (loop $while-in58
+ (if
+ (local.tee $3
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (local.get $1)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $3)
+ )
+ (local.set $0
+ (local.get $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ (if
+ (local.tee $3
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (local.get $1)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $1
+ (local.get $3)
+ )
+ (local.set $0
+ (local.get $2)
+ )
+ (br $while-in58)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (local.get $4)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.const 0)
+ )
+ (local.set $12
+ (local.get $1)
+ )
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.tee $2
+ (i32.load offset=8
+ (local.get $5)
+ )
+ )
+ (local.get $4)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.ne
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $2)
+ (i32.const 12)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $3)
+ (local.get $0)
+ )
+ (i32.store
+ (local.get $1)
+ (local.get $2)
+ )
+ (local.set $12
+ (local.get $0)
+ )
+ )
+ )
+ (else
+ (call $_abort)
+ )
+ )
+ )
)
)
)
- (local.get $5)
- )
- (block
- (i32.store
- (local.get $3)
- (local.get $0)
- )
- (i32.store
- (local.get $1)
- (local.get $2)
+ (br_if $label$break$L331
+ (i32.eqz
+ (local.get $6)
+ )
)
- (local.set $12
- (local.get $0)
+ (block $do-once59
+ (if
+ (i32.eq
+ (local.get $5)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.tee $1
+ (i32.load offset=28
+ (local.get $5)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $12)
+ )
+ (br_if $do-once59
+ (local.get $12)
+ )
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $1)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $label$break$L331)
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $6)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (local.get $5)
+ )
+ (then
+ (i32.store
+ (local.get $0)
+ (local.get $12)
+ )
+ )
+ (else
+ (i32.store offset=20
+ (local.get $6)
+ (local.get $12)
+ )
+ )
+ )
+ (br_if $label$break$L331
+ (i32.eqz
+ (local.get $12)
+ )
+ )
+ )
+ )
+ )
)
- )
- (call $_abort)
- )
- )
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (local.get $6)
- )
- )
- (block $do-once59
- (if
- (i32.eq
- (local.get $5)
- (i32.load
- (local.tee $0
- (i32.add
- (i32.shl
+ (if
+ (i32.lt_u
+ (local.get $12)
(local.tee $1
- (i32.load offset=28
- (local.get $5)
+ (i32.load
+ (i32.const 192)
)
)
- (i32.const 2)
)
- (i32.const 480)
+ (then
+ (call $_abort)
+ )
)
- )
- )
- )
- (block
- (i32.store
- (local.get $0)
- (local.get $12)
- )
- (br_if $do-once59
- (local.get $12)
- )
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
+ (i32.store offset=24
+ (local.get $12)
+ (local.get $6)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $1)
+ (if
+ (local.tee $3
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $5)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $3)
+ (local.get $1)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=16
+ (local.get $12)
+ (local.get $3)
+ )
+ (i32.store offset=24
+ (local.get $3)
+ (local.get $12)
+ )
+ )
+ )
+ )
)
- (i32.const -1)
)
- )
- )
- (br $label$break$L331)
- )
- (block
- (if
- (i32.lt_u
- (local.get $6)
- (i32.load
- (i32.const 192)
+ (br_if $label$break$L331
+ (i32.eqz
+ (local.tee $0
+ (i32.load offset=4
+ (local.get $0)
+ )
+ )
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $6)
- (i32.const 16)
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=20
+ (local.get $12)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $0)
+ (local.get $12)
+ )
)
)
)
- (local.get $5)
- )
- (i32.store
- (local.get $0)
- (local.get $12)
- )
- (i32.store offset=20
- (local.get $6)
- (local.get $12)
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (local.get $12)
)
)
)
)
- )
- (if
- (i32.lt_u
- (local.get $12)
- (local.tee $1
- (i32.load
- (i32.const 192)
- )
+ (local.set $7
+ (i32.add
+ (local.get $11)
+ (local.get $7)
)
)
- (call $_abort)
+ (i32.add
+ (local.get $5)
+ (local.get $11)
+ )
)
- (i32.store offset=24
- (local.get $12)
- (local.get $6)
+ )
+ (else
+ (local.get $5)
+ )
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ (i32.and
+ (i32.load
+ (local.get $0)
+ )
+ (i32.const -2)
+ )
+ )
+ (i32.store offset=4
+ (local.get $8)
+ (i32.or
+ (local.get $7)
+ (i32.const 1)
+ )
+ )
+ (i32.store
+ (i32.add
+ (local.get $8)
+ (local.get $7)
+ )
+ (local.get $7)
+ )
+ (local.set $0
+ (i32.shr_u
+ (local.get $7)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $7)
+ (i32.const 256)
+ )
+ (then
+ (block
+ (local.set $3
+ (i32.add
+ (i32.shl
+ (local.get $0)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ (block $do-once63
+ (if
+ (i32.and
+ (local.tee $1
+ (i32.load
+ (i32.const 176)
+ )
)
- (if
- (local.tee $3
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $5)
- (i32.const 16)
- )
- )
- )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $0)
)
+ )
+ )
+ (then
+ (block
(if
- (i32.lt_u
- (local.get $3)
- (local.get $1)
- )
- (call $_abort)
- (block
- (i32.store offset=16
- (local.get $12)
- (local.get $3)
+ (i32.ge_u
+ (local.tee $0
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $3)
+ (i32.const 8)
+ )
+ )
+ )
)
- (i32.store offset=24
- (local.get $3)
- (local.get $12)
+ (i32.load
+ (i32.const 192)
)
)
- )
- )
- (br_if $label$break$L331
- (i32.eqz
- (local.tee $0
- (i32.load offset=4
- (local.get $0)
+ (then
+ (block
+ (local.set $16
+ (local.get $1)
+ )
+ (local.set $10
+ (local.get $0)
+ )
+ (br $do-once63)
)
)
)
- )
- (if
- (i32.lt_u
- (local.get $0)
- (i32.load
- (i32.const 192)
- )
- )
(call $_abort)
- (block
- (i32.store offset=20
- (local.get $12)
+ )
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (local.get $1)
(local.get $0)
)
- (i32.store offset=24
- (local.get $0)
- (local.get $12)
+ )
+ (local.set $16
+ (i32.add
+ (local.get $3)
+ (i32.const 8)
)
)
- )
- )
- )
- )
- (local.set $7
- (i32.add
- (local.get $11)
- (local.get $7)
- )
- )
- (i32.add
- (local.get $5)
- (local.get $11)
- )
- )
- (local.get $5)
- )
- )
- (i32.const 4)
- )
- )
- (i32.and
- (i32.load
- (local.get $0)
- )
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (local.get $8)
- (i32.or
- (local.get $7)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $8)
- (local.get $7)
- )
- (local.get $7)
- )
- (local.set $0
- (i32.shr_u
- (local.get $7)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (local.get $7)
- (i32.const 256)
- )
- (block
- (local.set $3
- (i32.add
- (i32.shl
- (local.get $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
- )
- (block $do-once63
- (if
- (i32.and
- (local.tee $1
- (i32.load
- (i32.const 176)
- )
- )
- (local.tee $0
- (i32.shl
- (i32.const 1)
- (local.get $0)
- )
- )
- )
- (block
- (if
- (i32.ge_u
- (local.tee $0
- (i32.load
- (local.tee $1
- (i32.add
+ (local.set $10
(local.get $3)
- (i32.const 8)
)
)
)
)
- (i32.load
- (i32.const 192)
- )
)
- (block
- (local.set $16
- (local.get $1)
- )
- (local.set $10
- (local.get $0)
- )
- (br $do-once63)
+ (i32.store
+ (local.get $16)
+ (local.get $8)
)
- )
- (call $_abort)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (local.get $1)
- (local.get $0)
+ (i32.store offset=12
+ (local.get $10)
+ (local.get $8)
)
- )
- (local.set $16
- (i32.add
+ (i32.store offset=8
+ (local.get $8)
+ (local.get $10)
+ )
+ (i32.store offset=12
+ (local.get $8)
(local.get $3)
- (i32.const 8)
)
- )
- (local.set $10
- (local.get $3)
+ (br $do-once48)
)
)
)
- )
- (i32.store
- (local.get $16)
- (local.get $8)
- )
- (i32.store offset=12
- (local.get $10)
- (local.get $8)
- )
- (i32.store offset=8
- (local.get $8)
- (local.get $10)
- )
- (i32.store offset=12
- (local.get $8)
- (local.get $3)
- )
- (br $do-once48)
- )
- )
- (local.set $3
- (i32.add
- (i32.shl
- (local.tee $2
- (block $do-once65 (result i32)
- (if (result i32)
- (local.tee $0
- (i32.shr_u
- (local.get $7)
- (i32.const 8)
- )
- )
- (block (result i32)
- (drop
- (br_if $do-once65
- (i32.const 31)
- (i32.gt_u
- (local.get $7)
- (i32.const 16777215)
+ (local.set $3
+ (i32.add
+ (i32.shl
+ (local.tee $2
+ (block $do-once65 (result i32)
+ (if (result i32)
+ (local.tee $0
+ (i32.shr_u
+ (local.get $7)
+ (i32.const 8)
+ )
)
- )
- )
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $7)
- (i32.add
- (local.tee $0
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
- (i32.or
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $0)
- (local.tee $3
- (i32.and
- (i32.shr_u
- (i32.add
+ (then
+ (block (result i32)
+ (drop
+ (br_if $do-once65
+ (i32.const 31)
+ (i32.gt_u
+ (local.get $7)
+ (i32.const 16777215)
+ )
+ )
+ )
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $7)
+ (i32.add
+ (local.tee $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
+ (i32.or
+ (i32.or
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
(local.get $0)
- (i32.const 1048320)
+ (local.tee $3
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.get $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
+ )
+ (i32.const 8)
+ )
+ )
)
- (i32.const 16)
)
- (i32.const 8)
+ (i32.const 520192)
)
+ (i32.const 16)
)
+ (i32.const 4)
)
)
- (i32.const 520192)
+ (local.get $3)
+ )
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 245760)
+ )
+ (i32.const 16)
+ )
+ (i32.const 2)
+ )
)
- (i32.const 16)
)
- (i32.const 4)
)
- )
- (local.get $3)
- )
- (local.tee $0
- (i32.and
(i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- )
- (i32.const 245760)
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
)
- (i32.const 16)
+ (i32.const 15)
)
- (i32.const 2)
)
)
+ (i32.const 7)
)
)
- (i32.shr_u
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- (i32.const 15)
- )
+ (i32.const 1)
+ )
+ (i32.shl
+ (local.get $0)
+ (i32.const 1)
)
)
- (i32.const 7)
)
)
- (i32.const 1)
- )
- (i32.shl
- (local.get $0)
- (i32.const 1)
+ (else
+ (i32.const 0)
+ )
)
)
)
- (i32.const 0)
+ (i32.const 2)
)
+ (i32.const 480)
)
)
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (local.get $8)
- (local.get $2)
- )
- (i32.store offset=4
- (local.tee $0
- (i32.add
- (local.get $8)
- (i32.const 16)
- )
- )
- (i32.const 0)
- )
- (i32.store
- (local.get $0)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (local.tee $1
- (i32.load
- (i32.const 180)
- )
+ (i32.store offset=28
+ (local.get $8)
+ (local.get $2)
)
- (local.tee $0
- (i32.shl
- (i32.const 1)
- (local.get $2)
+ (i32.store offset=4
+ (local.tee $0
+ (i32.add
+ (local.get $8)
+ (i32.const 16)
+ )
)
+ (i32.const 0)
)
- )
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (local.get $1)
+ (i32.store
(local.get $0)
+ (i32.const 0)
)
- )
- (i32.store
- (local.get $3)
- (local.get $8)
- )
- (i32.store offset=24
- (local.get $8)
- (local.get $3)
- )
- (i32.store offset=12
- (local.get $8)
- (local.get $8)
- )
- (i32.store offset=8
- (local.get $8)
- (local.get $8)
- )
- (br $do-once48)
- )
- )
- (local.set $2
- (i32.shl
- (local.get $7)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (local.get $2)
- (i32.const 1)
- )
- )
- (i32.eq
- (local.get $2)
- (i32.const 31)
- )
- )
- )
- )
- (local.set $0
- (i32.load
- (local.get $3)
- )
- )
- (block $__rjto$7
- (block $__rjti$7
- (loop $while-in68
- (br_if $__rjti$7
- (i32.eq
+ (if
+ (i32.eqz
(i32.and
- (i32.load offset=4
- (local.get $0)
+ (local.tee $1
+ (i32.load
+ (i32.const 180)
+ )
+ )
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $2)
+ )
)
- (i32.const -8)
)
- (local.get $7)
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $8)
+ )
+ (i32.store offset=24
+ (local.get $8)
+ (local.get $3)
+ )
+ (i32.store offset=12
+ (local.get $8)
+ (local.get $8)
+ )
+ (i32.store offset=8
+ (local.get $8)
+ (local.get $8)
+ )
+ (br $do-once48)
+ )
)
)
- (local.set $3
+ (local.set $2
(i32.shl
- (local.get $2)
- (i32.const 1)
+ (local.get $7)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (local.get $2)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (local.get $2)
+ (i32.const 31)
+ )
+ )
)
)
- (if
- (local.tee $1
- (i32.load
- (local.tee $2
- (i32.add
- (i32.add
- (local.get $0)
- (i32.const 16)
+ (local.set $0
+ (i32.load
+ (local.get $3)
+ )
+ )
+ (block $__rjto$7
+ (block $__rjti$7
+ (loop $while-in68
+ (br_if $__rjti$7
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (local.get $0)
+ )
+ (i32.const -8)
)
- (i32.shl
- (i32.shr_u
- (local.get $2)
- (i32.const 31)
+ (local.get $7)
+ )
+ )
+ (local.set $3
+ (i32.shl
+ (local.get $2)
+ (i32.const 1)
+ )
+ )
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (i32.add
+ (local.get $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (local.get $2)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
+ )
)
- (i32.const 2)
+ )
+ )
+ (then
+ (block
+ (local.set $2
+ (local.get $3)
+ )
+ (local.set $0
+ (local.get $1)
+ )
+ (br $while-in68)
)
)
)
)
- )
- (block
- (local.set $2
- (local.get $3)
- )
- (local.set $0
- (local.get $1)
+ (if
+ (i32.lt_u
+ (local.get $2)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $2)
+ (local.get $8)
+ )
+ (i32.store offset=24
+ (local.get $8)
+ (local.get $0)
+ )
+ (i32.store offset=12
+ (local.get $8)
+ (local.get $8)
+ )
+ (i32.store offset=8
+ (local.get $8)
+ (local.get $8)
+ )
+ (br $do-once48)
+ )
+ )
)
- (br $while-in68)
- )
- )
- )
- (if
- (i32.lt_u
- (local.get $2)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store
- (local.get $2)
- (local.get $8)
- )
- (i32.store offset=24
- (local.get $8)
- (local.get $0)
- )
- (i32.store offset=12
- (local.get $8)
- (local.get $8)
- )
- (i32.store offset=8
- (local.get $8)
- (local.get $8)
+ (br $__rjto$7)
)
- (br $do-once48)
- )
- )
- (br $__rjto$7)
- )
- (if
- (i32.and
- (i32.ge_u
- (local.tee $2
- (i32.load
- (local.tee $3
- (i32.add
+ (if
+ (i32.and
+ (i32.ge_u
+ (local.tee $2
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (local.tee $1
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (local.get $0)
+ (local.get $1)
+ )
+ )
+ (then
+ (block
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $8)
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $8)
+ )
+ (i32.store offset=8
+ (local.get $8)
+ (local.get $2)
+ )
+ (i32.store offset=12
+ (local.get $8)
(local.get $0)
- (i32.const 8)
+ )
+ (i32.store offset=24
+ (local.get $8)
+ (i32.const 0)
)
)
)
- )
- (local.tee $1
- (i32.load
- (i32.const 192)
+ (else
+ (call $_abort)
)
)
)
- (i32.ge_u
- (local.get $0)
- (local.get $1)
- )
- )
- (block
- (i32.store offset=12
- (local.get $2)
- (local.get $8)
- )
- (i32.store
- (local.get $3)
- (local.get $8)
- )
- (i32.store offset=8
- (local.get $8)
- (local.get $2)
- )
- (i32.store offset=12
- (local.get $8)
- (local.get $0)
- )
- (i32.store offset=24
- (local.get $8)
- (i32.const 0)
- )
)
- (call $_abort)
)
)
)
- )
- )
- (return
- (i32.add
- (local.get $9)
- (i32.const 8)
+ (return
+ (i32.add
+ (local.get $9)
+ (i32.const 8)
+ )
+ )
)
)
)
)
- )
- (loop $while-in70
- (block $while-out69
- (if
- (i32.le_u
- (local.tee $2
- (i32.load
- (local.get $4)
+ (loop $while-in70
+ (block $while-out69
+ (if
+ (i32.le_u
+ (local.tee $2
+ (i32.load
+ (local.get $4)
+ )
)
+ (local.get $6)
)
- (local.get $6)
- )
- (br_if $while-out69
- (i32.gt_u
- (local.tee $2
- (i32.add
- (local.get $2)
- (i32.load offset=4
- (local.get $4)
+ (then
+ (br_if $while-out69
+ (i32.gt_u
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.load offset=4
+ (local.get $4)
+ )
+ )
)
+ (local.get $6)
)
)
- (local.get $6)
)
)
- )
- (local.set $4
- (i32.load offset=8
- (local.get $4)
+ (local.set $4
+ (i32.load offset=8
+ (local.get $4)
+ )
)
+ (br $while-in70)
)
- (br $while-in70)
)
- )
- (local.set $10
- (i32.add
- (local.tee $4
- (i32.add
- (local.get $2)
- (i32.const -47)
+ (local.set $10
+ (i32.add
+ (local.tee $4
+ (i32.add
+ (local.get $2)
+ (i32.const -47)
+ )
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (local.set $12
- (i32.add
- (local.tee $11
- (select
- (local.get $6)
- (local.tee $4
- (i32.add
- (local.get $4)
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
+ (local.set $12
+ (i32.add
+ (local.tee $11
+ (select
+ (local.get $6)
+ (local.tee $4
+ (i32.add
+ (local.get $4)
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.get $10)
+ )
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
(local.get $10)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (local.get $10)
- (i32.const 7)
)
)
)
- )
- (i32.lt_u
- (local.get $4)
- (local.tee $10
- (i32.add
- (local.get $6)
- (i32.const 16)
+ (i32.lt_u
+ (local.get $4)
+ (local.tee $10
+ (i32.add
+ (local.get $6)
+ (i32.const 16)
+ )
)
)
)
)
+ (i32.const 8)
)
- (i32.const 8)
)
- )
- (i32.store
- (i32.const 200)
- (local.tee $5
- (i32.add
- (local.get $1)
- (local.tee $4
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (local.tee $4
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (local.tee $5
+ (i32.add
+ (local.get $1)
+ (local.tee $4
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.tee $4
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (local.get $4)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (local.get $4)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (local.tee $4
- (i32.sub
- (i32.add
- (local.get $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (local.tee $4
+ (i32.sub
+ (i32.add
+ (local.get $3)
+ (i32.const -40)
+ )
+ (local.get $4)
)
+ )
+ )
+ (i32.store offset=4
+ (local.get $5)
+ (i32.or
(local.get $4)
+ (i32.const 1)
)
)
- )
- (i32.store offset=4
- (local.get $5)
- (i32.or
- (local.get $4)
- (i32.const 1)
+ (i32.store offset=4
+ (i32.add
+ (local.get $5)
+ (local.get $4)
+ )
+ (i32.const 40)
)
- )
- (i32.store offset=4
- (i32.add
- (local.get $5)
- (local.get $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
+ (local.tee $4
+ (i32.add
+ (local.get $11)
+ (i32.const 4)
+ )
+ )
+ (i32.const 27)
)
- )
- (i32.store
- (local.tee $4
- (i32.add
- (local.get $11)
- (i32.const 4)
+ (i32.store
+ (local.get $12)
+ (i32.load
+ (i32.const 624)
)
)
- (i32.const 27)
- )
- (i32.store
- (local.get $12)
- (i32.load
+ (i32.store offset=4
+ (local.get $12)
+ (i32.load
+ (i32.const 628)
+ )
+ )
+ (i32.store offset=8
+ (local.get $12)
+ (i32.load
+ (i32.const 632)
+ )
+ )
+ (i32.store offset=12
+ (local.get $12)
+ (i32.load
+ (i32.const 636)
+ )
+ )
+ (i32.store
(i32.const 624)
+ (local.get $1)
)
- )
- (i32.store offset=4
- (local.get $12)
- (i32.load
+ (i32.store
(i32.const 628)
+ (local.get $3)
)
- )
- (i32.store offset=8
- (local.get $12)
- (i32.load
- (i32.const 632)
- )
- )
- (i32.store offset=12
- (local.get $12)
- (i32.load
+ (i32.store
(i32.const 636)
+ (i32.const 0)
)
- )
- (i32.store
- (i32.const 624)
- (local.get $1)
- )
- (i32.store
- (i32.const 628)
- (local.get $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 632)
- (local.get $12)
- )
- (local.set $1
- (i32.add
- (local.get $11)
- (i32.const 24)
- )
- )
- (loop $while-in72
(i32.store
- (local.tee $1
- (i32.add
- (local.get $1)
- (i32.const 4)
- )
- )
- (i32.const 7)
+ (i32.const 632)
+ (local.get $12)
)
- (br_if $while-in72
- (i32.lt_u
- (i32.add
- (local.get $1)
- (i32.const 4)
- )
- (local.get $2)
+ (local.set $1
+ (i32.add
+ (local.get $11)
+ (i32.const 24)
)
)
- )
- (if
- (i32.ne
- (local.get $11)
- (local.get $6)
- )
- (block
+ (loop $while-in72
(i32.store
- (local.get $4)
- (i32.and
- (i32.load
- (local.get $4)
+ (local.tee $1
+ (i32.add
+ (local.get $1)
+ (i32.const 4)
)
- (i32.const -2)
)
+ (i32.const 7)
)
- (i32.store offset=4
- (local.get $6)
- (i32.or
- (local.tee $5
- (i32.sub
- (local.get $11)
- (local.get $6)
- )
+ (br_if $while-in72
+ (i32.lt_u
+ (i32.add
+ (local.get $1)
+ (i32.const 4)
)
- (i32.const 1)
+ (local.get $2)
)
)
- (i32.store
+ )
+ (if
+ (i32.ne
(local.get $11)
- (local.get $5)
- )
- (local.set $1
- (i32.shr_u
- (local.get $5)
- (i32.const 3)
- )
+ (local.get $6)
)
- (if
- (i32.lt_u
- (local.get $5)
- (i32.const 256)
- )
+ (then
(block
- (local.set $2
- (i32.add
- (i32.shl
- (local.get $1)
- (i32.const 3)
+ (i32.store
+ (local.get $4)
+ (i32.and
+ (i32.load
+ (local.get $4)
)
- (i32.const 216)
+ (i32.const -2)
)
)
- (if
- (i32.and
- (local.tee $3
- (i32.load
- (i32.const 176)
- )
- )
- (local.tee $1
- (i32.shl
- (i32.const 1)
- (local.get $1)
+ (i32.store offset=4
+ (local.get $6)
+ (i32.or
+ (local.tee $5
+ (i32.sub
+ (local.get $11)
+ (local.get $6)
)
)
+ (i32.const 1)
)
- (if
- (i32.lt_u
- (local.tee $1
- (i32.load
+ )
+ (i32.store
+ (local.get $11)
+ (local.get $5)
+ )
+ (local.set $1
+ (i32.shr_u
+ (local.get $5)
+ (i32.const 3)
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $5)
+ (i32.const 256)
+ )
+ (then
+ (block
+ (local.set $2
+ (i32.add
+ (i32.shl
+ (local.get $1)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ (if
+ (i32.and
(local.tee $3
- (i32.add
+ (i32.load
+ (i32.const 176)
+ )
+ )
+ (local.tee $1
+ (i32.shl
+ (i32.const 1)
+ (local.get $1)
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.tee $1
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (local.set $17
+ (local.get $3)
+ )
+ (local.set $7
+ (local.get $1)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (local.get $3)
+ (local.get $1)
+ )
+ )
+ (local.set $17
+ (i32.add
+ (local.get $2)
+ (i32.const 8)
+ )
+ )
+ (local.set $7
(local.get $2)
- (i32.const 8)
)
)
)
)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (local.set $17
- (local.get $3)
+ (i32.store
+ (local.get $17)
+ (local.get $6)
)
- (local.set $7
- (local.get $1)
+ (i32.store offset=12
+ (local.get $7)
+ (local.get $6)
)
- )
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (local.get $3)
- (local.get $1)
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $7)
)
- )
- (local.set $17
- (i32.add
+ (i32.store offset=12
+ (local.get $6)
(local.get $2)
- (i32.const 8)
)
- )
- (local.set $7
- (local.get $2)
+ (br $do-once40)
)
)
)
- (i32.store
- (local.get $17)
- (local.get $6)
- )
- (i32.store offset=12
- (local.get $7)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $7)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $2)
- )
- (br $do-once40)
- )
- )
- (local.set $2
- (i32.add
- (i32.shl
- (local.tee $4
- (if (result i32)
- (local.tee $1
- (i32.shr_u
- (local.get $5)
- (i32.const 8)
- )
- )
- (if (result i32)
- (i32.gt_u
- (local.get $5)
- (i32.const 16777215)
- )
- (i32.const 31)
- (i32.or
- (i32.and
+ (local.set $2
+ (i32.add
+ (i32.shl
+ (local.tee $4
+ (if (result i32)
+ (local.tee $1
(i32.shr_u
(local.get $5)
- (i32.add
- (local.tee $1
- (i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
- (i32.or
- (local.tee $1
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $3
- (i32.shl
- (local.get $1)
- (local.tee $2
- (i32.and
- (i32.shr_u
- (i32.add
+ (i32.const 8)
+ )
+ )
+ (then
+ (if (result i32)
+ (i32.gt_u
+ (local.get $5)
+ (i32.const 16777215)
+ )
+ (then
+ (i32.const 31)
+ )
+ (else
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $5)
+ (i32.add
+ (local.tee $1
+ (i32.add
+ (i32.sub
+ (i32.const 14)
+ (i32.or
+ (i32.or
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $3
+ (i32.shl
(local.get $1)
- (i32.const 1048320)
+ (local.tee $2
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.get $1)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
+ )
+ (i32.const 8)
+ )
+ )
)
- (i32.const 16)
)
- (i32.const 8)
+ (i32.const 520192)
)
+ (i32.const 16)
)
+ (i32.const 4)
)
)
- (i32.const 520192)
+ (local.get $2)
+ )
+ (local.tee $1
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $3
+ (i32.shl
+ (local.get $3)
+ (local.get $1)
+ )
+ )
+ (i32.const 245760)
+ )
+ (i32.const 16)
+ )
+ (i32.const 2)
+ )
)
- (i32.const 16)
)
- (i32.const 4)
)
- )
- (local.get $2)
- )
- (local.tee $1
- (i32.and
(i32.shr_u
- (i32.add
- (local.tee $3
- (i32.shl
- (local.get $3)
- (local.get $1)
- )
- )
- (i32.const 245760)
+ (i32.shl
+ (local.get $3)
+ (local.get $1)
)
- (i32.const 16)
+ (i32.const 15)
)
- (i32.const 2)
)
)
+ (i32.const 7)
)
)
- (i32.shr_u
- (i32.shl
- (local.get $3)
- (local.get $1)
- )
- (i32.const 15)
- )
+ (i32.const 1)
+ )
+ (i32.shl
+ (local.get $1)
+ (i32.const 1)
)
)
- (i32.const 7)
)
)
- (i32.const 1)
)
- (i32.shl
- (local.get $1)
- (i32.const 1)
+ (else
+ (i32.const 0)
)
)
)
- (i32.const 0)
- )
- )
- (i32.const 2)
- )
- (i32.const 480)
- )
- )
- (i32.store offset=28
- (local.get $6)
- (local.get $4)
- )
- (i32.store offset=20
- (local.get $6)
- (i32.const 0)
- )
- (i32.store
- (local.get $10)
- (i32.const 0)
- )
- (if
- (i32.eqz
- (i32.and
- (local.tee $3
- (i32.load
- (i32.const 180)
- )
- )
- (local.tee $1
- (i32.shl
- (i32.const 1)
- (local.get $4)
+ (i32.const 2)
)
+ (i32.const 480)
)
)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (local.get $3)
- (local.get $1)
- )
- )
- (i32.store
- (local.get $2)
- (local.get $6)
- )
- (i32.store offset=24
- (local.get $6)
- (local.get $2)
- )
- (i32.store offset=12
- (local.get $6)
+ (i32.store offset=28
(local.get $6)
+ (local.get $4)
)
- (i32.store offset=8
- (local.get $6)
+ (i32.store offset=20
(local.get $6)
+ (i32.const 0)
)
- (br $do-once40)
- )
- )
- (local.set $4
- (i32.shl
- (local.get $5)
- (select
+ (i32.store
+ (local.get $10)
(i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
- (local.get $4)
- (i32.const 1)
+ )
+ (if
+ (i32.eqz
+ (i32.and
+ (local.tee $3
+ (i32.load
+ (i32.const 180)
+ )
+ )
+ (local.tee $1
+ (i32.shl
+ (i32.const 1)
+ (local.get $4)
+ )
+ )
)
)
- (i32.eq
- (local.get $4)
- (i32.const 31)
- )
- )
- )
- )
- (local.set $1
- (i32.load
- (local.get $2)
- )
- )
- (block $__rjto$9
- (block $__rjti$9
- (loop $while-in74
- (br_if $__rjti$9
- (i32.eq
- (i32.and
- (i32.load offset=4
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (local.get $3)
(local.get $1)
)
- (i32.const -8)
)
- (local.get $5)
+ (i32.store
+ (local.get $2)
+ (local.get $6)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (local.get $2)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $6)
+ )
+ (br $do-once40)
)
)
- (local.set $2
- (i32.shl
- (local.get $4)
- (i32.const 1)
+ )
+ (local.set $4
+ (i32.shl
+ (local.get $5)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (local.get $4)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
+ (local.get $4)
+ (i32.const 31)
+ )
)
)
- (if
- (local.tee $3
- (i32.load
- (local.tee $4
- (i32.add
- (i32.add
+ )
+ (local.set $1
+ (i32.load
+ (local.get $2)
+ )
+ )
+ (block $__rjto$9
+ (block $__rjti$9
+ (loop $while-in74
+ (br_if $__rjti$9
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
(local.get $1)
- (i32.const 16)
)
- (i32.shl
- (i32.shr_u
- (local.get $4)
- (i32.const 31)
+ (i32.const -8)
+ )
+ (local.get $5)
+ )
+ )
+ (local.set $2
+ (i32.shl
+ (local.get $4)
+ (i32.const 1)
+ )
+ )
+ (if
+ (local.tee $3
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (i32.add
+ (local.get $1)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (local.get $4)
+ (i32.const 31)
+ )
+ (i32.const 2)
+ )
)
- (i32.const 2)
)
)
)
+ (then
+ (block
+ (local.set $4
+ (local.get $2)
+ )
+ (local.set $1
+ (local.get $3)
+ )
+ (br $while-in74)
+ )
+ )
)
)
- (block
- (local.set $4
- (local.get $2)
+ (if
+ (i32.lt_u
+ (local.get $4)
+ (i32.load
+ (i32.const 192)
+ )
)
- (local.set $1
- (local.get $3)
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $4)
+ (local.get $6)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (local.get $1)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $6)
+ )
+ (br $do-once40)
+ )
)
- (br $while-in74)
- )
- )
- )
- (if
- (i32.lt_u
- (local.get $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store
- (local.get $4)
- (local.get $6)
- )
- (i32.store offset=24
- (local.get $6)
- (local.get $1)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $6)
)
- (br $do-once40)
+ (br $__rjto$9)
)
- )
- (br $__rjto$9)
- )
- (if
- (i32.and
- (i32.ge_u
- (local.tee $4
- (i32.load
- (local.tee $2
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (if
+ (i32.and
+ (i32.ge_u
+ (local.tee $4
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
)
)
+ (local.tee $3
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (i32.ge_u
+ (local.get $1)
+ (local.get $3)
)
)
- (local.tee $3
- (i32.load
- (i32.const 192)
+ (then
+ (block
+ (i32.store offset=12
+ (local.get $4)
+ (local.get $6)
+ )
+ (i32.store
+ (local.get $2)
+ (local.get $6)
+ )
+ (i32.store offset=8
+ (local.get $6)
+ (local.get $4)
+ )
+ (i32.store offset=12
+ (local.get $6)
+ (local.get $1)
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (i32.const 0)
+ )
)
)
- )
- (i32.ge_u
- (local.get $1)
- (local.get $3)
- )
- )
- (block
- (i32.store offset=12
- (local.get $4)
- (local.get $6)
- )
- (i32.store
- (local.get $2)
- (local.get $6)
- )
- (i32.store offset=8
- (local.get $6)
- (local.get $4)
- )
- (i32.store offset=12
- (local.get $6)
- (local.get $1)
- )
- (i32.store offset=24
- (local.get $6)
- (i32.const 0)
+ (else
+ (call $_abort)
+ )
)
)
- (call $_abort)
)
)
)
)
)
- (block
- (if
- (i32.or
- (i32.eqz
- (local.tee $2
- (i32.load
- (i32.const 192)
+ (else
+ (block
+ (if
+ (i32.or
+ (i32.eqz
+ (local.tee $2
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (i32.lt_u
+ (local.get $1)
+ (local.get $2)
+ )
)
- (i32.lt_u
- (local.get $1)
- (local.get $2)
+ (then
+ (i32.store
+ (i32.const 192)
+ (local.get $1)
+ )
)
)
(i32.store
- (i32.const 192)
+ (i32.const 624)
(local.get $1)
)
- )
- (i32.store
- (i32.const 624)
- (local.get $1)
- )
- (i32.store
- (i32.const 628)
- (local.get $3)
- )
- (i32.store
- (i32.const 636)
- (i32.const 0)
- )
- (i32.store
- (i32.const 212)
- (i32.load
- (i32.const 648)
+ (i32.store
+ (i32.const 628)
+ (local.get $3)
)
- )
- (i32.store
- (i32.const 208)
- (i32.const -1)
- )
- (local.set $2
- (i32.const 0)
- )
- (loop $while-in43
- (i32.store offset=12
- (local.tee $4
- (i32.add
- (i32.shl
- (local.get $2)
- (i32.const 3)
- )
- (i32.const 216)
- )
+ (i32.store
+ (i32.const 636)
+ (i32.const 0)
+ )
+ (i32.store
+ (i32.const 212)
+ (i32.load
+ (i32.const 648)
)
- (local.get $4)
)
- (i32.store offset=8
- (local.get $4)
- (local.get $4)
+ (i32.store
+ (i32.const 208)
+ (i32.const -1)
)
- (br_if $while-in43
- (i32.ne
- (local.tee $2
+ (local.set $2
+ (i32.const 0)
+ )
+ (loop $while-in43
+ (i32.store offset=12
+ (local.tee $4
(i32.add
- (local.get $2)
- (i32.const 1)
+ (i32.shl
+ (local.get $2)
+ (i32.const 3)
+ )
+ (i32.const 216)
)
)
- (i32.const 32)
+ (local.get $4)
+ )
+ (i32.store offset=8
+ (local.get $4)
+ (local.get $4)
+ )
+ (br_if $while-in43
+ (i32.ne
+ (local.tee $2
+ (i32.add
+ (local.get $2)
+ (i32.const 1)
+ )
+ )
+ (i32.const 32)
+ )
)
)
- )
- (i32.store
- (i32.const 200)
- (local.tee $2
- (i32.add
- (local.get $1)
- (local.tee $1
- (select
- (i32.and
- (i32.sub
- (i32.const 0)
- (local.tee $1
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (i32.store
+ (i32.const 200)
+ (local.tee $2
+ (i32.add
+ (local.get $1)
+ (local.tee $1
+ (select
+ (i32.and
+ (i32.sub
+ (i32.const 0)
+ (local.tee $1
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
)
)
+ (i32.const 7)
+ )
+ (i32.const 0)
+ (i32.and
+ (local.get $1)
+ (i32.const 7)
)
- (i32.const 7)
- )
- (i32.const 0)
- (i32.and
- (local.get $1)
- (i32.const 7)
)
)
)
)
)
- )
- (i32.store
- (i32.const 188)
- (local.tee $1
- (i32.sub
- (i32.add
- (local.get $3)
- (i32.const -40)
+ (i32.store
+ (i32.const 188)
+ (local.tee $1
+ (i32.sub
+ (i32.add
+ (local.get $3)
+ (i32.const -40)
+ )
+ (local.get $1)
)
- (local.get $1)
)
)
- )
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $1)
- (i32.const 1)
- )
- )
- (i32.store offset=4
- (i32.add
+ (i32.store offset=4
(local.get $2)
- (local.get $1)
+ (i32.or
+ (local.get $1)
+ (i32.const 1)
+ )
)
- (i32.const 40)
- )
- (i32.store
- (i32.const 204)
- (i32.load
- (i32.const 664)
+ (i32.store offset=4
+ (i32.add
+ (local.get $2)
+ (local.get $1)
+ )
+ (i32.const 40)
+ )
+ (i32.store
+ (i32.const 204)
+ (i32.load
+ (i32.const 664)
+ )
)
)
)
@@ -26275,7 +27741,9 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
@@ -26291,7 +27759,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -26310,7 +27780,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $8
;; CHECK-NEXT: (i32.add
@@ -26329,7 +27801,7 @@
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -26337,7 +27809,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $7
;; CHECK-NEXT: (i32.load
;; CHECK-NEXT: (local.get $1)
@@ -26347,7 +27819,9 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
@@ -26362,7 +27836,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.set $0
;; CHECK-NEXT: (i32.add
@@ -26377,7 +27853,7 @@
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
;; CHECK-NEXT: (i32.and
@@ -26395,7 +27871,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -26444,7 +27920,7 @@
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (i32.load offset=12
;; CHECK-NEXT: (local.get $1)
@@ -26467,13 +27943,15 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -26482,7 +27960,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -26491,7 +27971,7 @@
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.and
@@ -26521,19 +28001,23 @@
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -26547,10 +28031,14 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -26586,7 +28074,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.tee $5
@@ -26605,20 +28093,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $5
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $5
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $4
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $6
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $4
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $6
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -26634,7 +28126,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
@@ -26655,7 +28147,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: )
@@ -26671,8 +28163,10 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (i32.const 0)
@@ -26683,7 +28177,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.tee $10
@@ -26693,7 +28187,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $11)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -26707,7 +28203,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -26721,7 +28219,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $7)
;; CHECK-NEXT: (local.get $4)
@@ -26734,14 +28232,16 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $1)
@@ -26761,7 +28261,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $6)
@@ -26770,7 +28270,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.and
@@ -26796,7 +28296,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $12)
@@ -26804,7 +28304,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -26818,20 +28320,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $12)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $12)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -26852,7 +28358,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=24
;; CHECK-NEXT: (local.get $6)
@@ -26869,20 +28377,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $5)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=16
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $7)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=16
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $7)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -26893,32 +28405,36 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $2
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $2
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -26928,7 +28444,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $2
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -26945,7 +28461,9 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
@@ -26963,14 +28481,16 @@
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.and
@@ -26993,7 +28513,7 @@
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $8)
@@ -27001,7 +28521,7 @@
;; CHECK-NEXT: (i32.const 200)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 188)
;; CHECK-NEXT: (local.tee $0
@@ -27031,7 +28551,9 @@
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 196)
@@ -27051,7 +28573,7 @@
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: (local.tee $0
@@ -27105,7 +28627,7 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $4
;; CHECK-NEXT: (i32.load offset=12
;; CHECK-NEXT: (local.get $8)
@@ -27128,7 +28650,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $1)
@@ -27136,7 +28658,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -27145,7 +28669,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27154,7 +28680,7 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.and
@@ -27178,13 +28704,15 @@
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $4)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $4)
@@ -27192,7 +28720,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -27206,10 +28736,14 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $14
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $14
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27222,7 +28756,7 @@
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (local.set $6
;; CHECK-NEXT: (i32.load offset=24
;; CHECK-NEXT: (local.get $8)
@@ -27238,7 +28772,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.tee $3
@@ -27257,20 +28791,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $9
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $9
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (br $do-once6)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (br $do-once6)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27286,7 +28824,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -27307,7 +28845,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: )
@@ -27325,8 +28863,10 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 0)
@@ -27337,7 +28877,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.tee $4
@@ -27349,7 +28889,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.ne
@@ -27363,7 +28905,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -27377,7 +28921,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $1)
;; CHECK-NEXT: (local.get $0)
@@ -27390,14 +28934,16 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
;; CHECK-NEXT: (local.get $8)
@@ -27417,7 +28963,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $9)
@@ -27426,7 +28972,7 @@
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $9)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.and
@@ -27446,7 +28992,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $6)
@@ -27454,7 +29000,9 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eq
@@ -27468,13 +29016,17 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (local.get $8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.store
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $6)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $6)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (br_if $do-once4
@@ -27493,7 +29045,9 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store offset=24
;; CHECK-NEXT: (local.get $9)
@@ -27510,20 +29064,24 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=16
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=16
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27534,22 +29092,26 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (i32.store offset=20
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.store offset=24
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.store offset=20
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.store offset=24
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $9)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27580,15 +29142,17 @@
;; CHECK-NEXT: (i32.const 196)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 184)
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
;; CHECK-NEXT: (return)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $3
- ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $3
+ ;; CHECK-NEXT: (local.get $5)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -27604,7 +29168,7 @@
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (i32.const 256)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (i32.add
;; CHECK-NEXT: (i32.shl
@@ -27628,33 +29192,37 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if
- ;; CHECK-NEXT: (i32.lt_u
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (local.tee $3
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if
+ ;; CHECK-NEXT: (i32.lt_u
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (local.tee $3
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (i32.const 8)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.load
+ ;; CHECK-NEXT: (i32.const 192)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.load
- ;; CHECK-NEXT: (i32.const 192)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
- ;; CHECK-NEXT: (local.set $15
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.set $13
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $15
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (local.set $13
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 176)
;; CHECK-NEXT: (i32.or
@@ -27703,93 +29271,101 @@
;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (if (result i32)
- ;; CHECK-NEXT: (i32.gt_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.const 16777215)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 31)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (local.get $3)
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (if (result i32)
+ ;; CHECK-NEXT: (i32.gt_u
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (i32.const 16777215)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i32.const 31)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (i32.sub
- ;; CHECK-NEXT: (i32.const 14)
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (i32.or
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.tee $4
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (i32.sub
+ ;; CHECK-NEXT: (i32.const 14)
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (i32.or
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.tee $4
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1048320)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 8)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 520192)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 520192)
+ ;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 4)
+ ;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.get $4)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (local.tee $0
- ;; CHECK-NEXT: (i32.and
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.add
- ;; CHECK-NEXT: (local.tee $1
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.tee $0
+ ;; CHECK-NEXT: (i32.and
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.add
+ ;; CHECK-NEXT: (local.tee $1
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 245760)
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 245760)
+ ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 16)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 2)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shr_u
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 15)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shr_u
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 15)
- ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.const 7)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 7)
+ ;; CHECK-NEXT: (i32.const 1)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (i32.shl
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 1)
- ;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.shl
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (i32.const 0)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.const 2)
@@ -27824,7 +29400,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (i32.shl
;; CHECK-NEXT: (local.get $3)
@@ -27889,7 +29465,7 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $5
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
@@ -27907,8 +29483,10 @@
;; CHECK-NEXT: (i32.const 192)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: (local.get $2)
@@ -27954,7 +29532,7 @@
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store offset=12
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: (local.get $2)
@@ -27976,11 +29554,13 @@
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (call $_abort)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (else
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (i32.const 180)
;; CHECK-NEXT: (i32.or
@@ -28020,9 +29600,13 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (return)
- ;; CHECK-NEXT: (local.set $0
- ;; CHECK-NEXT: (i32.const 632)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return)
+ ;; CHECK-NEXT: )
+ ;; CHECK-NEXT: (else
+ ;; CHECK-NEXT: (local.set $0
+ ;; CHECK-NEXT: (i32.const 632)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (loop $while-in17
@@ -28065,7 +29649,9 @@
(i32.eqz
(local.get $0)
)
- (return)
+ (then
+ (return)
+ )
)
(if
(i32.lt_u
@@ -28081,7 +29667,9 @@
)
)
)
- (call $_abort)
+ (then
+ (call $_abort)
+ )
)
(if
(i32.eq
@@ -28100,7 +29688,9 @@
)
(i32.const 1)
)
- (call $_abort)
+ (then
+ (call $_abort)
+ )
)
(local.set $8
(i32.add
@@ -28119,184 +29709,269 @@
(local.get $7)
(i32.const 1)
)
- (block
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
- )
- )
- (block
- (local.set $7
- (i32.load
+ (then
+ (block
+ (local.set $2
(local.get $1)
)
- )
- (if
- (i32.eqz
- (local.get $5)
+ (local.set $3
+ (local.get $0)
)
- (return)
)
- (if
- (i32.lt_u
- (local.tee $1
- (i32.add
- (local.get $1)
- (i32.sub
- (i32.const 0)
- (local.get $7)
+ )
+ (else
+ (block
+ (local.set $7
+ (i32.load
+ (local.get $1)
+ )
+ )
+ (if
+ (i32.eqz
+ (local.get $5)
+ )
+ (then
+ (return)
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.tee $1
+ (i32.add
+ (local.get $1)
+ (i32.sub
+ (i32.const 0)
+ (local.get $7)
+ )
)
)
+ (local.get $11)
+ )
+ (then
+ (call $_abort)
)
- (local.get $11)
- )
- (call $_abort)
- )
- (local.set $0
- (i32.add
- (local.get $7)
- (local.get $0)
)
- )
- (if
- (i32.eq
- (local.get $1)
- (i32.load
- (i32.const 196)
+ (local.set $0
+ (i32.add
+ (local.get $7)
+ (local.get $0)
)
)
- (block
- (if
- (i32.ne
- (i32.and
- (local.tee $3
- (i32.load
- (local.tee $2
- (i32.add
- (local.get $8)
- (i32.const 4)
+ (if
+ (i32.eq
+ (local.get $1)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (then
+ (block
+ (if
+ (i32.ne
+ (i32.and
+ (local.tee $3
+ (i32.load
+ (local.tee $2
+ (i32.add
+ (local.get $8)
+ (i32.const 4)
+ )
+ )
)
)
+ (i32.const 3)
+ )
+ (i32.const 3)
+ )
+ (then
+ (block
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ (br $do-once)
)
)
- (i32.const 3)
)
- (i32.const 3)
- )
- (block
- (local.set $2
+ (i32.store
+ (i32.const 184)
+ (local.get $0)
+ )
+ (i32.store
+ (local.get $2)
+ (i32.and
+ (local.get $3)
+ (i32.const -2)
+ )
+ )
+ (i32.store offset=4
(local.get $1)
+ (i32.or
+ (local.get $0)
+ (i32.const 1)
+ )
)
- (local.set $3
+ (i32.store
+ (i32.add
+ (local.get $1)
+ (local.get $0)
+ )
(local.get $0)
)
- (br $do-once)
- )
- )
- (i32.store
- (i32.const 184)
- (local.get $0)
- )
- (i32.store
- (local.get $2)
- (i32.and
- (local.get $3)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (local.get $1)
- (i32.or
- (local.get $0)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $1)
- (local.get $0)
+ (return)
)
- (local.get $0)
)
- (return)
)
- )
- (local.set $5
- (i32.shr_u
- (local.get $7)
- (i32.const 3)
- )
- )
- (if
- (i32.lt_u
- (local.get $7)
- (i32.const 256)
+ (local.set $5
+ (i32.shr_u
+ (local.get $7)
+ (i32.const 3)
+ )
)
- (block
- (local.set $6
- (i32.load offset=12
- (local.get $1)
- )
+ (if
+ (i32.lt_u
+ (local.get $7)
+ (i32.const 256)
)
- (if
- (i32.ne
- (local.tee $2
- (i32.load offset=8
+ (then
+ (block
+ (local.set $6
+ (i32.load offset=12
(local.get $1)
)
)
- (local.tee $3
- (i32.add
- (i32.shl
- (local.get $5)
- (i32.const 3)
+ (if
+ (i32.ne
+ (local.tee $2
+ (i32.load offset=8
+ (local.get $1)
+ )
+ )
+ (local.tee $3
+ (i32.add
+ (i32.shl
+ (local.get $5)
+ (i32.const 3)
+ )
+ (i32.const 216)
+ )
+ )
+ )
+ (then
+ (block
+ (if
+ (i32.lt_u
+ (local.get $2)
+ (local.get $11)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (local.get $2)
+ )
+ (local.get $1)
+ )
+ (then
+ (call $_abort)
+ )
+ )
)
- (i32.const 216)
)
)
- )
- (block
(if
- (i32.lt_u
+ (i32.eq
+ (local.get $6)
(local.get $2)
- (local.get $11)
)
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load offset=12
- (local.get $2)
+ (then
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $5)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ (br $do-once)
)
- (local.get $1)
)
- (call $_abort)
)
- )
- )
- (if
- (i32.eq
- (local.get $6)
- (local.get $2)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.and
- (i32.load
- (i32.const 176)
+ (if
+ (i32.eq
+ (local.get $6)
+ (local.get $3)
+ )
+ (then
+ (local.set $4
+ (i32.add
+ (local.get $6)
+ (i32.const 8)
+ )
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $5)
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $6)
+ (local.get $11)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $6)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $1)
+ )
+ (then
+ (local.set $4
+ (local.get $3)
+ )
+ )
+ (else
+ (call $_abort)
+ )
)
- (i32.const -1)
)
)
)
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $6)
+ )
+ (i32.store
+ (local.get $4)
+ (local.get $2)
+ )
(local.set $2
(local.get $1)
)
@@ -28306,408 +29981,423 @@
(br $do-once)
)
)
+ )
+ (local.set $12
+ (i32.load offset=24
+ (local.get $1)
+ )
+ )
+ (block $do-once0
(if
(i32.eq
- (local.get $6)
- (local.get $3)
- )
- (local.set $4
- (i32.add
- (local.get $6)
- (i32.const 8)
- )
- )
- (block
- (if
- (i32.lt_u
- (local.get $6)
- (local.get $11)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $3
- (i32.add
- (local.get $6)
- (i32.const 8)
- )
- )
- )
+ (local.tee $4
+ (i32.load offset=12
(local.get $1)
)
- (local.set $4
- (local.get $3)
- )
- (call $_abort)
- )
- )
- )
- (i32.store offset=12
- (local.get $2)
- (local.get $6)
- )
- (i32.store
- (local.get $4)
- (local.get $2)
- )
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
- )
- (br $do-once)
- )
- )
- (local.set $12
- (i32.load offset=24
- (local.get $1)
- )
- )
- (block $do-once0
- (if
- (i32.eq
- (local.tee $4
- (i32.load offset=12
- (local.get $1)
)
+ (local.get $1)
)
- (local.get $1)
- )
- (block
- (if
- (i32.eqz
- (local.tee $5
- (i32.load
- (local.tee $4
- (i32.add
- (local.tee $7
+ (then
+ (block
+ (if
+ (i32.eqz
+ (local.tee $5
+ (i32.load
+ (local.tee $4
(i32.add
- (local.get $1)
- (i32.const 16)
+ (local.tee $7
+ (i32.add
+ (local.get $1)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
)
)
- (i32.const 4)
)
)
)
- )
- )
- (if
- (local.tee $5
- (i32.load
- (local.get $7)
+ (then
+ (if
+ (local.tee $5
+ (i32.load
+ (local.get $7)
+ )
+ )
+ (then
+ (local.set $4
+ (local.get $7)
+ )
+ )
+ (else
+ (block
+ (local.set $6
+ (i32.const 0)
+ )
+ (br $do-once0)
+ )
+ )
+ )
)
)
- (local.set $4
- (local.get $7)
- )
- (block
- (local.set $6
- (i32.const 0)
+ (loop $while-in
+ (if
+ (local.tee $7
+ (i32.load
+ (local.tee $10
+ (i32.add
+ (local.get $5)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $5
+ (local.get $7)
+ )
+ (local.set $4
+ (local.get $10)
+ )
+ (br $while-in)
+ )
+ )
)
- (br $do-once0)
- )
- )
- )
- (loop $while-in
- (if
- (local.tee $7
- (i32.load
- (local.tee $10
- (i32.add
- (local.get $5)
- (i32.const 20)
+ (if
+ (local.tee $7
+ (i32.load
+ (local.tee $10
+ (i32.add
+ (local.get $5)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $5
+ (local.get $7)
+ )
+ (local.set $4
+ (local.get $10)
+ )
+ (br $while-in)
)
)
)
)
- (block
- (local.set $5
- (local.get $7)
+ (if
+ (i32.lt_u
+ (local.get $4)
+ (local.get $11)
)
- (local.set $4
- (local.get $10)
+ (then
+ (call $_abort)
)
- (br $while-in)
- )
- )
- (if
- (local.tee $7
- (i32.load
- (local.tee $10
- (i32.add
+ (else
+ (block
+ (i32.store
+ (local.get $4)
+ (i32.const 0)
+ )
+ (local.set $6
(local.get $5)
- (i32.const 16)
)
)
)
)
- (block
- (local.set $5
- (local.get $7)
- )
- (local.set $4
- (local.get $10)
- )
- (br $while-in)
- )
)
)
- (if
- (i32.lt_u
- (local.get $4)
- (local.get $11)
- )
- (call $_abort)
+ (else
(block
- (i32.store
- (local.get $4)
- (i32.const 0)
- )
- (local.set $6
- (local.get $5)
+ (if
+ (i32.lt_u
+ (local.tee $10
+ (i32.load offset=8
+ (local.get $1)
+ )
+ )
+ (local.get $11)
+ )
+ (then
+ (call $_abort)
+ )
)
- )
- )
- )
- (block
- (if
- (i32.lt_u
- (local.tee $10
- (i32.load offset=8
+ (if
+ (i32.ne
+ (i32.load
+ (local.tee $7
+ (i32.add
+ (local.get $10)
+ (i32.const 12)
+ )
+ )
+ )
(local.get $1)
)
+ (then
+ (call $_abort)
+ )
)
- (local.get $11)
- )
- (call $_abort)
- )
- (if
- (i32.ne
- (i32.load
- (local.tee $7
- (i32.add
- (local.get $10)
- (i32.const 12)
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $5
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
+ )
+ )
)
+ (local.get $1)
)
- )
- (local.get $1)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $5
- (i32.add
- (local.get $4)
- (i32.const 8)
+ (then
+ (block
+ (i32.store
+ (local.get $7)
+ (local.get $4)
+ )
+ (i32.store
+ (local.get $5)
+ (local.get $10)
+ )
+ (local.set $6
+ (local.get $4)
+ )
)
)
- )
- (local.get $1)
- )
- (block
- (i32.store
- (local.get $7)
- (local.get $4)
- )
- (i32.store
- (local.get $5)
- (local.get $10)
- )
- (local.set $6
- (local.get $4)
+ (else
+ (call $_abort)
+ )
)
)
- (call $_abort)
)
)
)
- )
- (if
- (local.get $12)
- (block
- (if
- (i32.eq
- (local.get $1)
- (i32.load
- (local.tee $4
- (i32.add
- (i32.shl
- (local.tee $5
- (i32.load offset=28
- (local.get $1)
+ (if
+ (local.get $12)
+ (then
+ (block
+ (if
+ (i32.eq
+ (local.get $1)
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (i32.shl
+ (local.tee $5
+ (i32.load offset=28
+ (local.get $1)
+ )
+ )
+ (i32.const 2)
)
+ (i32.const 480)
)
- (i32.const 2)
)
- (i32.const 480)
)
)
- )
- )
- (block
- (i32.store
- (local.get $4)
- (local.get $6)
- )
- (if
- (i32.eqz
- (local.get $6)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.and
- (i32.load
- (i32.const 180)
+ (then
+ (block
+ (i32.store
+ (local.get $4)
+ (local.get $6)
+ )
+ (if
+ (i32.eqz
+ (local.get $6)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $5)
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $5)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ (br $do-once)
)
- (i32.const -1)
)
)
)
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $12)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (local.get $12)
+ (i32.const 16)
+ )
+ )
+ )
+ (local.get $1)
+ )
+ (then
+ (i32.store
+ (local.get $4)
+ (local.get $6)
+ )
+ )
+ (else
+ (i32.store offset=20
+ (local.get $12)
+ (local.get $6)
+ )
+ )
+ )
+ (if
+ (i32.eqz
+ (local.get $6)
+ )
+ (then
+ (block
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ (br $do-once)
+ )
+ )
+ )
)
- (br $do-once)
)
)
- )
- (block
(if
(i32.lt_u
- (local.get $12)
- (i32.load
- (i32.const 192)
+ (local.get $6)
+ (local.tee $5
+ (i32.load
+ (i32.const 192)
+ )
)
)
- (call $_abort)
+ (then
+ (call $_abort)
+ )
+ )
+ (i32.store offset=24
+ (local.get $6)
+ (local.get $12)
)
(if
- (i32.eq
+ (local.tee $7
(i32.load
(local.tee $4
(i32.add
- (local.get $12)
+ (local.get $1)
(i32.const 16)
)
)
)
- (local.get $1)
- )
- (i32.store
- (local.get $4)
- (local.get $6)
- )
- (i32.store offset=20
- (local.get $12)
- (local.get $6)
)
- )
- (if
- (i32.eqz
- (local.get $6)
- )
- (block
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
+ (then
+ (if
+ (i32.lt_u
+ (local.get $7)
+ (local.get $5)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=16
+ (local.get $6)
+ (local.get $7)
+ )
+ (i32.store offset=24
+ (local.get $7)
+ (local.get $6)
+ )
+ )
+ )
)
- (br $do-once)
)
)
- )
- )
- (if
- (i32.lt_u
- (local.get $6)
- (local.tee $5
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (local.get $6)
- (local.get $12)
- )
- (if
- (local.tee $7
- (i32.load
+ (if
(local.tee $4
- (i32.add
- (local.get $1)
- (i32.const 16)
+ (i32.load offset=4
+ (local.get $4)
)
)
- )
- )
- (if
- (i32.lt_u
- (local.get $7)
- (local.get $5)
- )
- (call $_abort)
- (block
- (i32.store offset=16
- (local.get $6)
- (local.get $7)
+ (then
+ (if
+ (i32.lt_u
+ (local.get $4)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=20
+ (local.get $6)
+ (local.get $4)
+ )
+ (i32.store offset=24
+ (local.get $4)
+ (local.get $6)
+ )
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ )
+ )
+ )
)
- (i32.store offset=24
- (local.get $7)
- (local.get $6)
+ (else
+ (block
+ (local.set $2
+ (local.get $1)
+ )
+ (local.set $3
+ (local.get $0)
+ )
+ )
)
)
)
)
- (if
- (local.tee $4
- (i32.load offset=4
- (local.get $4)
- )
- )
- (if
- (i32.lt_u
- (local.get $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (local.get $6)
- (local.get $4)
- )
- (i32.store offset=24
- (local.get $4)
- (local.get $6)
- )
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
- )
- )
- )
+ (else
(block
(local.set $2
(local.get $1)
@@ -28718,14 +30408,6 @@
)
)
)
- (block
- (local.set $2
- (local.get $1)
- )
- (local.set $3
- (local.get $0)
- )
- )
)
)
)
@@ -28735,7 +30417,9 @@
(local.get $2)
(local.get $8)
)
- (call $_abort)
+ (then
+ (call $_abort)
+ )
)
(if
(i32.eqz
@@ -28753,593 +30437,681 @@
(i32.const 1)
)
)
- (call $_abort)
+ (then
+ (call $_abort)
+ )
)
(if
(i32.and
(local.get $1)
(i32.const 2)
)
- (block
- (i32.store
- (local.get $0)
- (i32.and
- (local.get $1)
- (i32.const -2)
- )
- )
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $3)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $2)
- (local.get $3)
- )
- (local.get $3)
- )
- )
- (block
- (if
- (i32.eq
- (local.get $8)
- (i32.load
- (i32.const 200)
- )
- )
- (block
- (i32.store
- (i32.const 188)
- (local.tee $0
- (i32.add
- (i32.load
- (i32.const 188)
- )
- (local.get $3)
- )
- )
- )
- (i32.store
- (i32.const 200)
- (local.get $2)
- )
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $0)
- (i32.const 1)
- )
- )
- (if
- (i32.ne
- (local.get $2)
- (i32.load
- (i32.const 196)
- )
- )
- (return)
- )
- (i32.store
- (i32.const 196)
- (i32.const 0)
- )
- (i32.store
- (i32.const 184)
- (i32.const 0)
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.and
+ (local.get $1)
+ (i32.const -2)
)
- (return)
)
- )
- (if
- (i32.eq
- (local.get $8)
- (i32.load
- (i32.const 196)
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
+ (local.get $3)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
- (local.tee $0
- (i32.add
- (i32.load
- (i32.const 184)
- )
- (local.get $3)
- )
- )
- )
- (i32.store
- (i32.const 196)
- (local.get $2)
- )
- (i32.store offset=4
+ (i32.store
+ (i32.add
(local.get $2)
- (i32.or
- (local.get $0)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $2)
- (local.get $0)
- )
- (local.get $0)
- )
- (return)
- )
- )
- (local.set $5
- (i32.add
- (i32.and
- (local.get $1)
- (i32.const -8)
+ (local.get $3)
)
(local.get $3)
)
)
- (local.set $3
- (i32.shr_u
- (local.get $1)
- (i32.const 3)
- )
- )
- (block $do-once4
+ )
+ (else
+ (block
(if
- (i32.lt_u
- (local.get $1)
- (i32.const 256)
- )
- (block
- (local.set $4
- (i32.load offset=12
- (local.get $8)
- )
+ (i32.eq
+ (local.get $8)
+ (i32.load
+ (i32.const 200)
)
- (if
- (i32.ne
- (local.tee $1
- (i32.load offset=8
- (local.get $8)
- )
- )
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 188)
(local.tee $0
(i32.add
- (i32.shl
- (local.get $3)
- (i32.const 3)
+ (i32.load
+ (i32.const 188)
)
- (i32.const 216)
+ (local.get $3)
)
)
)
- (block
- (if
- (i32.lt_u
- (local.get $1)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ (i32.store
+ (i32.const 200)
+ (local.get $2)
+ )
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
+ (local.get $0)
+ (i32.const 1)
)
- (if
- (i32.ne
- (i32.load offset=12
- (local.get $1)
- )
- (local.get $8)
+ )
+ (if
+ (i32.ne
+ (local.get $2)
+ (i32.load
+ (i32.const 196)
)
- (call $_abort)
+ )
+ (then
+ (return)
)
)
- )
- (if
- (i32.eq
- (local.get $4)
- (local.get $1)
+ (i32.store
+ (i32.const 196)
+ (i32.const 0)
)
- (block
- (i32.store
- (i32.const 176)
- (i32.and
+ (i32.store
+ (i32.const 184)
+ (i32.const 0)
+ )
+ (return)
+ )
+ )
+ )
+ (if
+ (i32.eq
+ (local.get $8)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 184)
+ (local.tee $0
+ (i32.add
(i32.load
- (i32.const 176)
- )
- (i32.xor
- (i32.shl
- (i32.const 1)
- (local.get $3)
- )
- (i32.const -1)
+ (i32.const 184)
)
+ (local.get $3)
)
)
- (br $do-once4)
)
- )
- (if
- (i32.eq
- (local.get $4)
- (local.get $0)
+ (i32.store
+ (i32.const 196)
+ (local.get $2)
)
- (local.set $14
- (i32.add
- (local.get $4)
- (i32.const 8)
+ (i32.store offset=4
+ (local.get $2)
+ (i32.or
+ (local.get $0)
+ (i32.const 1)
)
)
- (block
- (if
- (i32.lt_u
- (local.get $4)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $4)
- (i32.const 8)
- )
- )
- )
- (local.get $8)
- )
- (local.set $14
- (local.get $0)
- )
- (call $_abort)
+ (i32.store
+ (i32.add
+ (local.get $2)
+ (local.get $0)
)
+ (local.get $0)
)
+ (return)
)
- (i32.store offset=12
- (local.get $1)
- (local.get $4)
- )
- (i32.store
- (local.get $14)
+ )
+ )
+ (local.set $5
+ (i32.add
+ (i32.and
(local.get $1)
+ (i32.const -8)
)
+ (local.get $3)
)
- (block
- (local.set $6
- (i32.load offset=24
- (local.get $8)
- )
+ )
+ (local.set $3
+ (i32.shr_u
+ (local.get $1)
+ (i32.const 3)
+ )
+ )
+ (block $do-once4
+ (if
+ (i32.lt_u
+ (local.get $1)
+ (i32.const 256)
)
- (block $do-once6
- (if
- (i32.eq
- (local.tee $0
- (i32.load offset=12
- (local.get $8)
- )
+ (then
+ (block
+ (local.set $4
+ (i32.load offset=12
+ (local.get $8)
)
- (local.get $8)
)
- (block
- (if
- (i32.eqz
- (local.tee $3
- (i32.load
- (local.tee $0
- (i32.add
- (local.tee $1
- (i32.add
- (local.get $8)
- (i32.const 16)
- )
- )
- (i32.const 4)
- )
- )
- )
+ (if
+ (i32.ne
+ (local.tee $1
+ (i32.load offset=8
+ (local.get $8)
)
)
- (if
- (local.tee $3
- (i32.load
- (local.get $1)
- )
- )
- (local.set $0
- (local.get $1)
- )
- (block
- (local.set $9
- (i32.const 0)
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.get $3)
+ (i32.const 3)
)
- (br $do-once6)
+ (i32.const 216)
)
)
)
- (loop $while-in9
- (if
- (local.tee $1
- (i32.load
- (local.tee $4
- (i32.add
- (local.get $3)
- (i32.const 20)
- )
- )
- )
- )
- (block
- (local.set $3
+ (then
+ (block
+ (if
+ (i32.lt_u
(local.get $1)
+ (i32.load
+ (i32.const 192)
+ )
)
- (local.set $0
- (local.get $4)
+ (then
+ (call $_abort)
)
- (br $while-in9)
)
- )
- (if
- (local.tee $1
- (i32.load
- (local.tee $4
- (i32.add
- (local.get $3)
- (i32.const 16)
- )
+ (if
+ (i32.ne
+ (i32.load offset=12
+ (local.get $1)
)
+ (local.get $8)
)
- )
- (block
- (local.set $3
- (local.get $1)
- )
- (local.set $0
- (local.get $4)
+ (then
+ (call $_abort)
)
- (br $while-in9)
)
)
)
- (if
- (i32.lt_u
- (local.get $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
+ )
+ (if
+ (i32.eq
+ (local.get $4)
+ (local.get $1)
+ )
+ (then
(block
(i32.store
- (local.get $0)
- (i32.const 0)
- )
- (local.set $9
- (local.get $3)
+ (i32.const 176)
+ (i32.and
+ (i32.load
+ (i32.const 176)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $3)
+ )
+ (i32.const -1)
+ )
+ )
)
+ (br $do-once4)
)
)
)
- (block
- (if
- (i32.lt_u
- (local.tee $4
- (i32.load offset=8
- (local.get $8)
- )
- )
- (i32.load
- (i32.const 192)
+ (if
+ (i32.eq
+ (local.get $4)
+ (local.get $0)
+ )
+ (then
+ (local.set $14
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
)
)
- (call $_abort)
)
- (if
- (i32.ne
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $4)
- (i32.const 12)
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $4)
+ (i32.load
+ (i32.const 192)
)
)
+ (then
+ (call $_abort)
+ )
)
- (local.get $8)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $3
- (i32.add
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $4)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $8)
+ )
+ (then
+ (local.set $14
(local.get $0)
- (i32.const 8)
)
)
- )
- (local.get $8)
- )
- (block
- (i32.store
- (local.get $1)
- (local.get $0)
- )
- (i32.store
- (local.get $3)
- (local.get $4)
- )
- (local.set $9
- (local.get $0)
+ (else
+ (call $_abort)
+ )
)
)
- (call $_abort)
)
)
+ (i32.store offset=12
+ (local.get $1)
+ (local.get $4)
+ )
+ (i32.store
+ (local.get $14)
+ (local.get $1)
+ )
)
)
- (if
- (local.get $6)
+ (else
(block
- (if
- (i32.eq
+ (local.set $6
+ (i32.load offset=24
(local.get $8)
- (i32.load
+ )
+ )
+ (block $do-once6
+ (if
+ (i32.eq
(local.tee $0
- (i32.add
- (i32.shl
+ (i32.load offset=12
+ (local.get $8)
+ )
+ )
+ (local.get $8)
+ )
+ (then
+ (block
+ (if
+ (i32.eqz
(local.tee $3
- (i32.load offset=28
- (local.get $8)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.tee $1
+ (i32.add
+ (local.get $8)
+ (i32.const 16)
+ )
+ )
+ (i32.const 4)
+ )
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (local.tee $3
+ (i32.load
+ (local.get $1)
+ )
+ )
+ (then
+ (local.set $0
+ (local.get $1)
+ )
+ )
+ (else
+ (block
+ (local.set $9
+ (i32.const 0)
+ )
+ (br $do-once6)
+ )
)
)
- (i32.const 2)
)
- (i32.const 480)
)
- )
- )
- )
- (block
- (i32.store
- (local.get $0)
- (local.get $9)
- )
- (if
- (i32.eqz
- (local.get $9)
- )
- (block
- (i32.store
- (i32.const 180)
- (i32.and
+ (loop $while-in9
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (local.get $3)
+ (i32.const 20)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $3
+ (local.get $1)
+ )
+ (local.set $0
+ (local.get $4)
+ )
+ (br $while-in9)
+ )
+ )
+ )
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $4
+ (i32.add
+ (local.get $3)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (local.set $3
+ (local.get $1)
+ )
+ (local.set $0
+ (local.get $4)
+ )
+ (br $while-in9)
+ )
+ )
+ )
+ )
+ (if
+ (i32.lt_u
+ (local.get $0)
(i32.load
- (i32.const 180)
+ (i32.const 192)
)
- (i32.xor
- (i32.shl
- (i32.const 1)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.const 0)
+ )
+ (local.set $9
(local.get $3)
)
- (i32.const -1)
)
)
)
- (br $do-once4)
)
)
- )
- (block
- (if
- (i32.lt_u
- (local.get $6)
- (i32.load
- (i32.const 192)
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.tee $4
+ (i32.load offset=8
+ (local.get $8)
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
)
- )
- (call $_abort)
- )
- (if
- (i32.eq
- (i32.load
- (local.tee $0
- (i32.add
- (local.get $6)
- (i32.const 16)
+ (if
+ (i32.ne
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $4)
+ (i32.const 12)
+ )
+ )
)
+ (local.get $8)
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
+ )
+ )
+ (local.get $8)
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $1)
+ (local.get $0)
+ )
+ (i32.store
+ (local.get $3)
+ (local.get $4)
+ )
+ (local.set $9
+ (local.get $0)
+ )
+ )
+ )
+ (else
+ (call $_abort)
)
)
- (local.get $8)
- )
- (i32.store
- (local.get $0)
- (local.get $9)
- )
- (i32.store offset=20
- (local.get $6)
- (local.get $9)
- )
- )
- (br_if $do-once4
- (i32.eqz
- (local.get $9)
)
)
)
)
(if
- (i32.lt_u
- (local.get $9)
- (local.tee $3
- (i32.load
- (i32.const 192)
- )
- )
- )
- (call $_abort)
- )
- (i32.store offset=24
- (local.get $9)
(local.get $6)
- )
- (if
- (local.tee $1
- (i32.load
- (local.tee $0
- (i32.add
+ (then
+ (block
+ (if
+ (i32.eq
(local.get $8)
- (i32.const 16)
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (i32.shl
+ (local.tee $3
+ (i32.load offset=28
+ (local.get $8)
+ )
+ )
+ (i32.const 2)
+ )
+ (i32.const 480)
+ )
+ )
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $9)
+ )
+ (if
+ (i32.eqz
+ (local.get $9)
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.and
+ (i32.load
+ (i32.const 180)
+ )
+ (i32.xor
+ (i32.shl
+ (i32.const 1)
+ (local.get $3)
+ )
+ (i32.const -1)
+ )
+ )
+ )
+ (br $do-once4)
+ )
+ )
+ )
+ )
+ )
+ (else
+ (block
+ (if
+ (i32.lt_u
+ (local.get $6)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ )
+ (if
+ (i32.eq
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $6)
+ (i32.const 16)
+ )
+ )
+ )
+ (local.get $8)
+ )
+ (then
+ (i32.store
+ (local.get $0)
+ (local.get $9)
+ )
+ )
+ (else
+ (i32.store offset=20
+ (local.get $6)
+ (local.get $9)
+ )
+ )
+ )
+ (br_if $do-once4
+ (i32.eqz
+ (local.get $9)
+ )
+ )
+ )
)
)
- )
- )
- (if
- (i32.lt_u
- (local.get $1)
- (local.get $3)
- )
- (call $_abort)
- (block
- (i32.store offset=16
- (local.get $9)
- (local.get $1)
+ (if
+ (i32.lt_u
+ (local.get $9)
+ (local.tee $3
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ )
+ (then
+ (call $_abort)
+ )
)
(i32.store offset=24
- (local.get $1)
(local.get $9)
+ (local.get $6)
)
- )
- )
- )
- (if
- (local.tee $0
- (i32.load offset=4
- (local.get $0)
- )
- )
- (if
- (i32.lt_u
- (local.get $0)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store offset=20
- (local.get $9)
- (local.get $0)
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $0
+ (i32.add
+ (local.get $8)
+ (i32.const 16)
+ )
+ )
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $1)
+ (local.get $3)
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=16
+ (local.get $9)
+ (local.get $1)
+ )
+ (i32.store offset=24
+ (local.get $1)
+ (local.get $9)
+ )
+ )
+ )
+ )
+ )
)
- (i32.store offset=24
- (local.get $0)
- (local.get $9)
+ (if
+ (local.tee $0
+ (i32.load offset=4
+ (local.get $0)
+ )
+ )
+ (then
+ (if
+ (i32.lt_u
+ (local.get $0)
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (i32.store offset=20
+ (local.get $9)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $0)
+ (local.get $9)
+ )
+ )
+ )
+ )
+ )
)
)
)
@@ -29348,38 +31120,42 @@
)
)
)
- )
- (i32.store offset=4
- (local.get $2)
- (i32.or
- (local.get $5)
- (i32.const 1)
- )
- )
- (i32.store
- (i32.add
- (local.get $2)
- (local.get $5)
- )
- (local.get $5)
- )
- (if
- (i32.eq
+ (i32.store offset=4
(local.get $2)
- (i32.load
- (i32.const 196)
+ (i32.or
+ (local.get $5)
+ (i32.const 1)
)
)
- (block
- (i32.store
- (i32.const 184)
+ (i32.store
+ (i32.add
+ (local.get $2)
(local.get $5)
)
- (return)
- )
- (local.set $3
(local.get $5)
)
+ (if
+ (i32.eq
+ (local.get $2)
+ (i32.load
+ (i32.const 196)
+ )
+ )
+ (then
+ (block
+ (i32.store
+ (i32.const 184)
+ (local.get $5)
+ )
+ (return)
+ )
+ )
+ (else
+ (local.set $3
+ (local.get $5)
+ )
+ )
+ )
)
)
)
@@ -29394,92 +31170,102 @@
(local.get $3)
(i32.const 256)
)
- (block
- (local.set $1
- (i32.add
- (i32.shl
- (local.get $0)
- (i32.const 3)
- )
- (i32.const 216)
- )
- )
- (if
- (i32.and
- (local.tee $3
- (i32.load
- (i32.const 176)
- )
- )
- (local.tee $0
+ (then
+ (block
+ (local.set $1
+ (i32.add
(i32.shl
- (i32.const 1)
(local.get $0)
+ (i32.const 3)
)
+ (i32.const 216)
)
)
(if
- (i32.lt_u
- (local.tee $0
+ (i32.and
+ (local.tee $3
(i32.load
- (local.tee $3
- (i32.add
- (local.get $1)
- (i32.const 8)
- )
- )
+ (i32.const 176)
)
)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (local.set $15
- (local.get $3)
- )
- (local.set $13
- (local.get $0)
+ (local.tee $0
+ (i32.shl
+ (i32.const 1)
+ (local.get $0)
+ )
)
)
- )
- (block
- (i32.store
- (i32.const 176)
- (i32.or
- (local.get $3)
- (local.get $0)
+ (then
+ (if
+ (i32.lt_u
+ (local.tee $0
+ (i32.load
+ (local.tee $3
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
+ )
+ )
+ (i32.load
+ (i32.const 192)
+ )
+ )
+ (then
+ (call $_abort)
+ )
+ (else
+ (block
+ (local.set $15
+ (local.get $3)
+ )
+ (local.set $13
+ (local.get $0)
+ )
+ )
+ )
)
)
- (local.set $15
- (i32.add
- (local.get $1)
- (i32.const 8)
+ (else
+ (block
+ (i32.store
+ (i32.const 176)
+ (i32.or
+ (local.get $3)
+ (local.get $0)
+ )
+ )
+ (local.set $15
+ (i32.add
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
+ (local.set $13
+ (local.get $1)
+ )
)
)
- (local.set $13
- (local.get $1)
- )
)
+ (i32.store
+ (local.get $15)
+ (local.get $2)
+ )
+ (i32.store offset=12
+ (local.get $13)
+ (local.get $2)
+ )
+ (i32.store offset=8
+ (local.get $2)
+ (local.get $13)
+ )
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $1)
+ )
+ (return)
)
- (i32.store
- (local.get $15)
- (local.get $2)
- )
- (i32.store offset=12
- (local.get $13)
- (local.get $2)
- )
- (i32.store offset=8
- (local.get $2)
- (local.get $13)
- )
- (i32.store offset=12
- (local.get $2)
- (local.get $1)
- )
- (return)
)
)
(local.set $4
@@ -29493,93 +31279,101 @@
(i32.const 8)
)
)
- (if (result i32)
- (i32.gt_u
- (local.get $3)
- (i32.const 16777215)
- )
- (i32.const 31)
- (i32.or
- (i32.and
- (i32.shr_u
- (local.get $3)
- (i32.add
- (local.tee $0
+ (then
+ (if (result i32)
+ (i32.gt_u
+ (local.get $3)
+ (i32.const 16777215)
+ )
+ (then
+ (i32.const 31)
+ )
+ (else
+ (i32.or
+ (i32.and
+ (i32.shr_u
+ (local.get $3)
(i32.add
- (i32.sub
- (i32.const 14)
- (i32.or
- (i32.or
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $0)
- (local.tee $4
- (i32.and
- (i32.shr_u
- (i32.add
- (local.get $0)
- (i32.const 1048320)
+ (local.tee $0
+ (i32.add
+ (i32.sub
+ (i32.const 14)
+ (i32.or
+ (i32.or
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $0)
+ (local.tee $4
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.get $0)
+ (i32.const 1048320)
+ )
+ (i32.const 16)
+ )
+ (i32.const 8)
)
- (i32.const 16)
)
- (i32.const 8)
)
)
+ (i32.const 520192)
)
+ (i32.const 16)
)
- (i32.const 520192)
+ (i32.const 4)
)
- (i32.const 16)
)
- (i32.const 4)
+ (local.get $4)
)
- )
- (local.get $4)
- )
- (local.tee $0
- (i32.and
- (i32.shr_u
- (i32.add
- (local.tee $1
- (i32.shl
- (local.get $1)
- (local.get $0)
+ (local.tee $0
+ (i32.and
+ (i32.shr_u
+ (i32.add
+ (local.tee $1
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.const 245760)
)
+ (i32.const 16)
)
- (i32.const 245760)
+ (i32.const 2)
)
- (i32.const 16)
)
- (i32.const 2)
)
)
+ (i32.shr_u
+ (i32.shl
+ (local.get $1)
+ (local.get $0)
+ )
+ (i32.const 15)
+ )
)
)
- (i32.shr_u
- (i32.shl
- (local.get $1)
- (local.get $0)
- )
- (i32.const 15)
- )
+ (i32.const 7)
)
)
- (i32.const 7)
+ (i32.const 1)
+ )
+ (i32.shl
+ (local.get $0)
+ (i32.const 1)
)
)
- (i32.const 1)
- )
- (i32.shl
- (local.get $0)
- (i32.const 1)
)
)
)
- (i32.const 0)
+ (else
+ (i32.const 0)
+ )
)
)
(i32.const 2)
@@ -29614,185 +31408,199 @@
)
)
)
- (block
- (local.set $5
- (i32.shl
- (local.get $3)
- (select
- (i32.const 0)
- (i32.sub
- (i32.const 25)
- (i32.shr_u
+ (then
+ (block
+ (local.set $5
+ (i32.shl
+ (local.get $3)
+ (select
+ (i32.const 0)
+ (i32.sub
+ (i32.const 25)
+ (i32.shr_u
+ (local.get $5)
+ (i32.const 1)
+ )
+ )
+ (i32.eq
(local.get $5)
- (i32.const 1)
+ (i32.const 31)
)
)
- (i32.eq
- (local.get $5)
- (i32.const 31)
- )
)
)
- )
- (local.set $0
- (i32.load
- (local.get $4)
+ (local.set $0
+ (i32.load
+ (local.get $4)
+ )
)
- )
- (block $__rjto$1
- (block $__rjti$1
- (loop $while-in15
- (br_if $__rjti$1
- (i32.eq
- (i32.and
- (i32.load offset=4
- (local.get $0)
+ (block $__rjto$1
+ (block $__rjti$1
+ (loop $while-in15
+ (br_if $__rjti$1
+ (i32.eq
+ (i32.and
+ (i32.load offset=4
+ (local.get $0)
+ )
+ (i32.const -8)
)
- (i32.const -8)
+ (local.get $3)
)
- (local.get $3)
)
- )
- (local.set $4
- (i32.shl
- (local.get $5)
- (i32.const 1)
+ (local.set $4
+ (i32.shl
+ (local.get $5)
+ (i32.const 1)
+ )
)
- )
- (if
- (local.tee $1
- (i32.load
- (local.tee $5
- (i32.add
+ (if
+ (local.tee $1
+ (i32.load
+ (local.tee $5
(i32.add
- (local.get $0)
- (i32.const 16)
- )
- (i32.shl
- (i32.shr_u
- (local.get $5)
- (i32.const 31)
+ (i32.add
+ (local.get $0)
+ (i32.const 16)
+ )
+ (i32.shl
+ (i32.shr_u
+ (local.get $5)
+ (i32.const 31)
+ )
+ (i32.const 2)
)
- (i32.const 2)
)
)
)
)
- )
- (block
- (local.set $5
- (local.get $4)
- )
- (local.set $0
- (local.get $1)
+ (then
+ (block
+ (local.set $5
+ (local.get $4)
+ )
+ (local.set $0
+ (local.get $1)
+ )
+ (br $while-in15)
+ )
)
- (br $while-in15)
)
)
- )
- (if
- (i32.lt_u
- (local.get $5)
- (i32.load
- (i32.const 192)
- )
- )
- (call $_abort)
- (block
- (i32.store
+ (if
+ (i32.lt_u
(local.get $5)
- (local.get $2)
- )
- (i32.store offset=24
- (local.get $2)
- (local.get $0)
+ (i32.load
+ (i32.const 192)
+ )
)
- (i32.store offset=12
- (local.get $2)
- (local.get $2)
+ (then
+ (call $_abort)
)
- (i32.store offset=8
- (local.get $2)
- (local.get $2)
+ (else
+ (block
+ (i32.store
+ (local.get $5)
+ (local.get $2)
+ )
+ (i32.store offset=24
+ (local.get $2)
+ (local.get $0)
+ )
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $2)
+ )
+ (i32.store offset=8
+ (local.get $2)
+ (local.get $2)
+ )
+ (br $do-once12)
+ )
)
- (br $do-once12)
)
+ (br $__rjto$1)
)
- (br $__rjto$1)
- )
- (if
- (i32.and
- (i32.ge_u
- (local.tee $4
- (i32.load
- (local.tee $1
- (i32.add
- (local.get $0)
- (i32.const 8)
+ (if
+ (i32.and
+ (i32.ge_u
+ (local.tee $4
+ (i32.load
+ (local.tee $1
+ (i32.add
+ (local.get $0)
+ (i32.const 8)
+ )
)
)
)
- )
- (local.tee $3
- (i32.load
- (i32.const 192)
+ (local.tee $3
+ (i32.load
+ (i32.const 192)
+ )
)
)
+ (i32.ge_u
+ (local.get $0)
+ (local.get $3)
+ )
)
- (i32.ge_u
- (local.get $0)
- (local.get $3)
- )
- )
- (block
- (i32.store offset=12
- (local.get $4)
- (local.get $2)
- )
- (i32.store
- (local.get $1)
- (local.get $2)
- )
- (i32.store offset=8
- (local.get $2)
- (local.get $4)
- )
- (i32.store offset=12
- (local.get $2)
- (local.get $0)
+ (then
+ (block
+ (i32.store offset=12
+ (local.get $4)
+ (local.get $2)
+ )
+ (i32.store
+ (local.get $1)
+ (local.get $2)
+ )
+ (i32.store offset=8
+ (local.get $2)
+ (local.get $4)
+ )
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $0)
+ )
+ (i32.store offset=24
+ (local.get $2)
+ (i32.const 0)
+ )
+ )
)
- (i32.store offset=24
- (local.get $2)
- (i32.const 0)
+ (else
+ (call $_abort)
)
)
- (call $_abort)
)
)
)
- (block
- (i32.store
- (i32.const 180)
- (i32.or
- (local.get $1)
- (local.get $0)
+ (else
+ (block
+ (i32.store
+ (i32.const 180)
+ (i32.or
+ (local.get $1)
+ (local.get $0)
+ )
+ )
+ (i32.store
+ (local.get $4)
+ (local.get $2)
+ )
+ (i32.store offset=24
+ (local.get $2)
+ (local.get $4)
+ )
+ (i32.store offset=12
+ (local.get $2)
+ (local.get $2)
+ )
+ (i32.store offset=8
+ (local.get $2)
+ (local.get $2)
)
- )
- (i32.store
- (local.get $4)
- (local.get $2)
- )
- (i32.store offset=24
- (local.get $2)
- (local.get $4)
- )
- (i32.store offset=12
- (local.get $2)
- (local.get $2)
- )
- (i32.store offset=8
- (local.get $2)
- (local.get $2)
)
)
)
@@ -29810,9 +31618,13 @@
)
(if
(local.get $0)
- (return)
- (local.set $0
- (i32.const 632)
+ (then
+ (return)
+ )
+ (else
+ (local.set $0
+ (i32.const 632)
+ )
)
)
(loop $while-in17
@@ -29934,7 +31746,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 20)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $1
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $1)
@@ -29948,7 +31760,7 @@
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (local.set $3
;; CHECK-NEXT: (i32.sub
;; CHECK-NEXT: (i32.add
@@ -29964,7 +31776,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store8
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $1)
@@ -30014,7 +31826,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $5)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $3)
@@ -30037,7 +31849,7 @@
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store8
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (local.get $1)
@@ -30072,98 +31884,106 @@
(local.get $2)
(i32.const 20)
)
- (block
- (local.set $1
- (i32.and
- (local.get $1)
- (i32.const 255)
- )
- )
- (if
- (local.tee $3
+ (then
+ (block
+ (local.set $1
(i32.and
- (local.get $0)
- (i32.const 3)
+ (local.get $1)
+ (i32.const 255)
)
)
- (block
- (local.set $3
- (i32.sub
- (i32.add
- (local.get $0)
- (i32.const 4)
- )
- (local.get $3)
+ (if
+ (local.tee $3
+ (i32.and
+ (local.get $0)
+ (i32.const 3)
)
)
- (loop $while-in
- (if
- (i32.lt_s
- (local.get $0)
- (local.get $3)
- )
- (block
- (i32.store8
- (local.get $0)
- (local.get $1)
- )
- (local.set $0
+ (then
+ (block
+ (local.set $3
+ (i32.sub
(i32.add
(local.get $0)
- (i32.const 1)
+ (i32.const 4)
+ )
+ (local.get $3)
+ )
+ )
+ (loop $while-in
+ (if
+ (i32.lt_s
+ (local.get $0)
+ (local.get $3)
+ )
+ (then
+ (block
+ (i32.store8
+ (local.get $0)
+ (local.get $1)
+ )
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
+ )
+ (br $while-in)
+ )
)
)
- (br $while-in)
)
)
)
)
- )
- (local.set $3
- (i32.or
+ (local.set $3
(i32.or
(i32.or
- (local.get $1)
+ (i32.or
+ (local.get $1)
+ (i32.shl
+ (local.get $1)
+ (i32.const 8)
+ )
+ )
(i32.shl
(local.get $1)
- (i32.const 8)
+ (i32.const 16)
)
)
(i32.shl
(local.get $1)
- (i32.const 16)
+ (i32.const 24)
)
)
- (i32.shl
- (local.get $1)
- (i32.const 24)
- )
)
- )
- (local.set $5
- (i32.and
- (local.get $4)
- (i32.const -4)
- )
- )
- (loop $while-in1
- (if
- (i32.lt_s
- (local.get $0)
- (local.get $5)
+ (local.set $5
+ (i32.and
+ (local.get $4)
+ (i32.const -4)
)
- (block
- (i32.store
+ )
+ (loop $while-in1
+ (if
+ (i32.lt_s
(local.get $0)
- (local.get $3)
+ (local.get $5)
)
- (local.set $0
- (i32.add
- (local.get $0)
- (i32.const 4)
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (local.get $3)
+ )
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 4)
+ )
+ )
+ (br $while-in1)
)
)
- (br $while-in1)
)
)
)
@@ -30175,18 +31995,20 @@
(local.get $0)
(local.get $4)
)
- (block
- (i32.store8
- (local.get $0)
- (local.get $1)
- )
- (local.set $0
- (i32.add
+ (then
+ (block
+ (i32.store8
(local.get $0)
- (i32.const 1)
+ (local.get $1)
)
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
+ )
+ (br $while-in3)
)
- (br $while-in3)
)
)
)
@@ -30201,7 +32023,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (global.set $tempRet0
;; CHECK-NEXT: (i32.shr_u
;; CHECK-NEXT: (local.get $1)
@@ -30251,33 +32073,35 @@
(local.get $2)
(i32.const 32)
)
- (block
- (global.set $tempRet0
- (i32.shr_u
- (local.get $1)
- (local.get $2)
- )
- )
- (return
- (i32.or
+ (then
+ (block
+ (global.set $tempRet0
(i32.shr_u
- (local.get $0)
+ (local.get $1)
(local.get $2)
)
- (i32.shl
- (i32.and
- (local.get $1)
- (i32.sub
- (i32.shl
+ )
+ (return
+ (i32.or
+ (i32.shr_u
+ (local.get $0)
+ (local.get $2)
+ )
+ (i32.shl
+ (i32.and
+ (local.get $1)
+ (i32.sub
+ (i32.shl
+ (i32.const 1)
+ (local.get $2)
+ )
(i32.const 1)
- (local.get $2)
)
- (i32.const 1)
)
- )
- (i32.sub
- (i32.const 32)
- (local.get $2)
+ (i32.sub
+ (i32.const 32)
+ (local.get $2)
+ )
)
)
)
@@ -30301,7 +32125,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 32)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (global.set $tempRet0
;; CHECK-NEXT: (i32.or
;; CHECK-NEXT: (i32.shl
@@ -30357,41 +32181,43 @@
(local.get $2)
(i32.const 32)
)
- (block
- (global.set $tempRet0
- (i32.or
- (i32.shl
- (local.get $1)
- (local.get $2)
- )
- (i32.shr_u
- (i32.and
- (local.get $0)
- (i32.shl
- (i32.sub
- (i32.shl
+ (then
+ (block
+ (global.set $tempRet0
+ (i32.or
+ (i32.shl
+ (local.get $1)
+ (local.get $2)
+ )
+ (i32.shr_u
+ (i32.and
+ (local.get $0)
+ (i32.shl
+ (i32.sub
+ (i32.shl
+ (i32.const 1)
+ (local.get $2)
+ )
(i32.const 1)
+ )
+ (i32.sub
+ (i32.const 32)
(local.get $2)
)
- (i32.const 1)
- )
- (i32.sub
- (i32.const 32)
- (local.get $2)
)
)
- )
- (i32.sub
- (i32.const 32)
- (local.get $2)
+ (i32.sub
+ (i32.const 32)
+ (local.get $2)
+ )
)
)
)
- )
- (return
- (i32.shl
- (local.get $0)
- (local.get $2)
+ (return
+ (i32.shl
+ (local.get $0)
+ (local.get $2)
+ )
)
)
)
@@ -30414,11 +32240,13 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 4096)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return
- ;; CHECK-NEXT: (call $_emscripten_memcpy_big
- ;; CHECK-NEXT: (local.get $0)
- ;; CHECK-NEXT: (local.get $1)
- ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return
+ ;; CHECK-NEXT: (call $_emscripten_memcpy_big
+ ;; CHECK-NEXT: (local.get $0)
+ ;; CHECK-NEXT: (local.get $1)
+ ;; CHECK-NEXT: (local.get $2)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -30436,20 +32264,22 @@
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (loop $while-in
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.and
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.const 3)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (if
;; CHECK-NEXT: (i32.eqz
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (return
- ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (return
+ ;; CHECK-NEXT: (local.get $3)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: (i32.store8
@@ -30486,7 +32316,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 4)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.load
@@ -30523,7 +32353,7 @@
;; CHECK-NEXT: (local.get $2)
;; CHECK-NEXT: (i32.const 0)
;; CHECK-NEXT: )
- ;; CHECK-NEXT: (block
+ ;; CHECK-NEXT: (then
;; CHECK-NEXT: (i32.store8
;; CHECK-NEXT: (local.get $0)
;; CHECK-NEXT: (i32.load8_s
@@ -30561,11 +32391,13 @@
(local.get $2)
(i32.const 4096)
)
- (return
- (call $_emscripten_memcpy_big
- (local.get $0)
- (local.get $1)
- (local.get $2)
+ (then
+ (return
+ (call $_emscripten_memcpy_big
+ (local.get $0)
+ (local.get $1)
+ (local.get $2)
+ )
)
)
)
@@ -30583,82 +32415,90 @@
(i32.const 3)
)
)
- (block
- (loop $while-in
- (if
- (i32.and
- (local.get $0)
- (i32.const 3)
- )
- (block
- (if
- (i32.eqz
- (local.get $2)
- )
- (return
- (local.get $3)
- )
- )
- (i32.store8
+ (then
+ (block
+ (loop $while-in
+ (if
+ (i32.and
(local.get $0)
- (i32.load8_s
- (local.get $1)
- )
- )
- (local.set $0
- (i32.add
- (local.get $0)
- (i32.const 1)
- )
- )
- (local.set $1
- (i32.add
- (local.get $1)
- (i32.const 1)
- )
+ (i32.const 3)
)
- (local.set $2
- (i32.sub
- (local.get $2)
- (i32.const 1)
+ (then
+ (block
+ (if
+ (i32.eqz
+ (local.get $2)
+ )
+ (then
+ (return
+ (local.get $3)
+ )
+ )
+ )
+ (i32.store8
+ (local.get $0)
+ (i32.load8_s
+ (local.get $1)
+ )
+ )
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
+ )
+ (local.set $1
+ (i32.add
+ (local.get $1)
+ (i32.const 1)
+ )
+ )
+ (local.set $2
+ (i32.sub
+ (local.get $2)
+ (i32.const 1)
+ )
+ )
+ (br $while-in)
)
)
- (br $while-in)
)
)
- )
- (loop $while-in1
- (if
- (i32.ge_s
- (local.get $2)
- (i32.const 4)
- )
- (block
- (i32.store
- (local.get $0)
- (i32.load
- (local.get $1)
- )
- )
- (local.set $0
- (i32.add
- (local.get $0)
- (i32.const 4)
- )
- )
- (local.set $1
- (i32.add
- (local.get $1)
- (i32.const 4)
- )
+ (loop $while-in1
+ (if
+ (i32.ge_s
+ (local.get $2)
+ (i32.const 4)
)
- (local.set $2
- (i32.sub
- (local.get $2)
- (i32.const 4)
+ (then
+ (block
+ (i32.store
+ (local.get $0)
+ (i32.load
+ (local.get $1)
+ )
+ )
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 4)
+ )
+ )
+ (local.set $1
+ (i32.add
+ (local.get $1)
+ (i32.const 4)
+ )
+ )
+ (local.set $2
+ (i32.sub
+ (local.get $2)
+ (i32.const 4)
+ )
+ )
+ (br $while-in1)
)
)
- (br $while-in1)
)
)
)
@@ -30670,32 +32510,34 @@
(local.get $2)
(i32.const 0)
)
- (block
- (i32.store8
- (local.get $0)
- (i32.load8_s
- (local.get $1)
- )
- )
- (local.set $0
- (i32.add
+ (then
+ (block
+ (i32.store8
(local.get $0)
- (i32.const 1)
+ (i32.load8_s
+ (local.get $1)
+ )
)
- )
- (local.set $1
- (i32.add
- (local.get $1)
- (i32.const 1)
+ (local.set $0
+ (i32.add
+ (local.get $0)
+ (i32.const 1)
+ )
)
- )
- (local.set $2
- (i32.sub
- (local.get $2)
- (i32.const 1)
+ (local.set $1
+ (i32.add
+ (local.get $1)
+ (i32.const 1)
+ )
)
+ (local.set $2
+ (i32.sub
+ (local.get $2)
+ (i32.const 1)
+ )
+ )
+ (br $while-in3)
)
- (br $while-in3)
)
)
)
@@ -30809,11 +32651,13 @@
;; CHECK-NEXT: )
;; CHECK-NEXT: (if
;; CHECK-NEXT: (local.get $r)
- ;; CHECK-NEXT: (i64.store
- ;; CHECK-NEXT: (local.get $r)
- ;; CHECK-NEXT: (i64.rem_u
- ;; CHECK-NEXT: (local.get $x64)
- ;; CHECK-NEXT: (local.get $y64)
+ ;; CHECK-NEXT: (then
+ ;; CHECK-NEXT: (i64.store
+ ;; CHECK-NEXT: (local.get $r)
+ ;; CHECK-NEXT: (i64.rem_u
+ ;; CHECK-NEXT: (local.get $x64)
+ ;; CHECK-NEXT: (local.get $y64)
+ ;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
;; CHECK-NEXT: )
@@ -30866,11 +32710,13 @@
)
(if
(local.get $r)
- (i64.store
- (local.get $r)
- (i64.rem_u
- (local.get $x64)
- (local.get $y64)
+ (then
+ (i64.store
+ (local.get $r)
+ (i64.rem_u
+ (local.get $x64)
+ (local.get $y64)
+ )
)
)
)