diff options
Diffstat (limited to 'test/memorygrowth.fromasm.imprecise')
-rw-r--r-- | test/memorygrowth.fromasm.imprecise | 3808 |
1 files changed, 1904 insertions, 1904 deletions
diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise index 5f0518c42..4925a0ccf 100644 --- a/test/memorygrowth.fromasm.imprecise +++ b/test/memorygrowth.fromasm.imprecise @@ -108,782 +108,816 @@ (local $52 i32) (local $53 i32) (local $54 i32) - (block $folding-inner0 - (set_local $25 + (set_local $25 + (get_global $r) + ) + (set_global $r + (i32.add (get_global $r) + (i32.const 16) ) - (set_global $r - (i32.add - (get_global $r) - (i32.const 16) + ) + (set_local $14 + (get_local $25) + ) + (set_local $6 + (if (result i32) + (i32.lt_u + (get_local $0) + (i32.const 245) ) - ) - (set_local $14 - (get_local $25) - ) - (set_local $6 - (if (result i32) - (i32.lt_u - (get_local $0) - (i32.const 245) - ) - (block (result i32) - (if - (i32.and - (tee_local $6 - (i32.shr_u - (tee_local $5 - (i32.load - (i32.const 1208) - ) + (block (result i32) + (if + (i32.and + (tee_local $6 + (i32.shr_u + (tee_local $5 + (i32.load + (i32.const 1208) ) - (tee_local $0 - (i32.shr_u - (tee_local $2 - (select - (i32.const 16) - (i32.and - (i32.add - (get_local $0) - (i32.const 11) - ) - (i32.const -8) - ) - (i32.lt_u + ) + (tee_local $0 + (i32.shr_u + (tee_local $2 + (select + (i32.const 16) + (i32.and + (i32.add (get_local $0) (i32.const 11) ) + (i32.const -8) + ) + (i32.lt_u + (get_local $0) + (i32.const 11) ) ) - (i32.const 3) ) + (i32.const 3) ) ) ) - (i32.const 3) ) - (block - (set_local $7 - (i32.load - (tee_local $2 - (i32.add - (tee_local $13 - (i32.load - (tee_local $16 - (i32.add - (tee_local $9 - (i32.add - (i32.shl - (tee_local $0 - (i32.add - (i32.xor - (i32.and - (get_local $6) - (i32.const 1) - ) + (i32.const 3) + ) + (block + (set_local $7 + (i32.load + (tee_local $2 + (i32.add + (tee_local $13 + (i32.load + (tee_local $16 + (i32.add + (tee_local $9 + (i32.add + (i32.shl + (tee_local $0 + (i32.add + (i32.xor + (i32.and + (get_local $6) (i32.const 1) ) - (get_local $0) + (i32.const 1) ) + (get_local $0) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 3) ) + (i32.const 1248) ) - (i32.const 8) ) + (i32.const 8) ) ) ) - (i32.const 8) ) + (i32.const 8) ) ) ) - (if - (i32.eq - (get_local $9) - (get_local $7) - ) - (i32.store - (i32.const 1208) - (i32.and - (get_local $5) - (i32.xor - (i32.shl - (i32.const 1) - (get_local $0) - ) - (i32.const -1) + ) + (if + (i32.eq + (get_local $9) + (get_local $7) + ) + (i32.store + (i32.const 1208) + (i32.and + (get_local $5) + (i32.xor + (i32.shl + (i32.const 1) + (get_local $0) ) + (i32.const -1) ) ) - (block - (if - (i32.lt_u - (get_local $7) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (get_local $7) + (i32.load + (i32.const 1224) ) - (call $qa) ) - (if - (i32.eq - (i32.load - (tee_local $8 - (i32.add - (get_local $7) - (i32.const 12) - ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $8 + (i32.add + (get_local $7) + (i32.const 12) ) ) - (get_local $13) ) - (block - (i32.store - (get_local $8) - (get_local $9) - ) - (i32.store - (get_local $16) - (get_local $7) - ) + (get_local $13) + ) + (block + (i32.store + (get_local $8) + (get_local $9) + ) + (i32.store + (get_local $16) + (get_local $7) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (get_local $13) - (i32.or - (tee_local $7 - (i32.shl - (get_local $0) - (i32.const 3) - ) + ) + (i32.store offset=4 + (get_local $13) + (i32.or + (tee_local $7 + (i32.shl + (get_local $0) + (i32.const 3) ) - (i32.const 3) ) + (i32.const 3) ) - (i32.store - (tee_local $16 + ) + (i32.store + (tee_local $16 + (i32.add (i32.add - (i32.add - (get_local $13) - (get_local $7) - ) - (i32.const 4) - ) - ) - (i32.or - (i32.load - (get_local $16) + (get_local $13) + (get_local $7) ) - (i32.const 1) + (i32.const 4) ) ) - (set_global $r - (get_local $25) - ) - (return - (get_local $2) + (i32.or + (i32.load + (get_local $16) + ) + (i32.const 1) ) ) - ) - (if (result i32) - (i32.gt_u + (set_global $r + (get_local $25) + ) + (return (get_local $2) - (tee_local $16 - (i32.load - (i32.const 1216) - ) + ) + ) + ) + (if (result i32) + (i32.gt_u + (get_local $2) + (tee_local $16 + (i32.load + (i32.const 1216) ) ) - (block (result i32) - (if - (get_local $6) - (block - (set_local $9 - (i32.and - (i32.shr_u - (tee_local $7 - (i32.add - (i32.and - (tee_local $9 - (i32.and - (i32.shl - (get_local $6) - (get_local $0) - ) - (i32.or - (tee_local $7 - (i32.shl - (i32.const 2) - (get_local $0) - ) - ) - (i32.sub - (i32.const 0) - (get_local $7) + ) + (block (result i32) + (if + (get_local $6) + (block + (set_local $9 + (i32.and + (i32.shr_u + (tee_local $7 + (i32.add + (i32.and + (tee_local $9 + (i32.and + (i32.shl + (get_local $6) + (get_local $0) + ) + (i32.or + (tee_local $7 + (i32.shl + (i32.const 2) + (get_local $0) ) ) + (i32.sub + (i32.const 0) + (get_local $7) + ) ) ) - (i32.sub - (i32.const 0) - (get_local $9) - ) ) - (i32.const -1) + (i32.sub + (i32.const 0) + (get_local $9) + ) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (set_local $9 - (i32.load - (tee_local $8 - (i32.add - (tee_local $10 - (i32.load - (tee_local $13 - (i32.add - (tee_local $3 - (i32.add - (i32.shl - (tee_local $4 - (i32.add + ) + (set_local $9 + (i32.load + (tee_local $8 + (i32.add + (tee_local $10 + (i32.load + (tee_local $13 + (i32.add + (tee_local $3 + (i32.add + (i32.shl + (tee_local $4 + (i32.add + (i32.or (i32.or (i32.or (i32.or - (i32.or - (tee_local $7 - (i32.and - (i32.shr_u - (tee_local $8 - (i32.shr_u - (get_local $7) - (get_local $9) - ) - ) - (i32.const 5) - ) - (i32.const 8) - ) - ) - (get_local $9) - ) - (tee_local $8 + (tee_local $7 (i32.and (i32.shr_u - (tee_local $10 + (tee_local $8 (i32.shr_u - (get_local $8) (get_local $7) + (get_local $9) ) ) - (i32.const 2) + (i32.const 5) ) - (i32.const 4) + (i32.const 8) ) ) + (get_local $9) ) - (tee_local $10 + (tee_local $8 (i32.and (i32.shr_u - (tee_local $3 + (tee_local $10 (i32.shr_u - (get_local $10) (get_local $8) + (get_local $7) ) ) - (i32.const 1) + (i32.const 2) ) - (i32.const 2) + (i32.const 4) ) ) ) - (tee_local $3 + (tee_local $10 (i32.and (i32.shr_u - (tee_local $13 + (tee_local $3 (i32.shr_u - (get_local $3) (get_local $10) + (get_local $8) ) ) (i32.const 1) ) - (i32.const 1) + (i32.const 2) ) ) ) - (i32.shr_u - (get_local $13) - (get_local $3) + (tee_local $3 + (i32.and + (i32.shr_u + (tee_local $13 + (i32.shr_u + (get_local $3) + (get_local $10) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) ) ) + (i32.shr_u + (get_local $13) + (get_local $3) + ) ) - (i32.const 3) ) - (i32.const 1248) + (i32.const 3) ) + (i32.const 1248) ) - (i32.const 8) ) + (i32.const 8) ) ) ) - (i32.const 8) ) + (i32.const 8) ) ) ) - (if - (i32.eq - (get_local $3) - (get_local $9) - ) - (block - (i32.store - (i32.const 1208) - (i32.and - (get_local $5) - (i32.xor - (i32.shl - (i32.const 1) - (get_local $4) - ) - (i32.const -1) + ) + (if + (i32.eq + (get_local $3) + (get_local $9) + ) + (block + (i32.store + (i32.const 1208) + (i32.and + (get_local $5) + (i32.xor + (i32.shl + (i32.const 1) + (get_local $4) ) + (i32.const -1) ) ) - (set_local $34 - (get_local $16) - ) ) - (block - (if - (i32.lt_u - (get_local $9) - (i32.load - (i32.const 1224) - ) + (set_local $34 + (get_local $16) + ) + ) + (block + (if + (i32.lt_u + (get_local $9) + (i32.load + (i32.const 1224) ) - (call $qa) ) - (if - (i32.eq - (i32.load - (tee_local $7 - (i32.add - (get_local $9) - (i32.const 12) - ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $7 + (i32.add + (get_local $9) + (i32.const 12) ) ) - (get_local $10) ) - (block - (i32.store - (get_local $7) - (get_local $3) - ) - (i32.store - (get_local $13) - (get_local $9) - ) - (set_local $34 - (i32.load - (i32.const 1216) - ) + (get_local $10) + ) + (block + (i32.store + (get_local $7) + (get_local $3) + ) + (i32.store + (get_local $13) + (get_local $9) + ) + (set_local $34 + (i32.load + (i32.const 1216) ) ) - (call $qa) ) + (call $qa) ) ) - (i32.store offset=4 - (get_local $10) - (i32.or + ) + (i32.store offset=4 + (get_local $10) + (i32.or + (get_local $2) + (i32.const 3) + ) + ) + (i32.store offset=4 + (tee_local $13 + (i32.add + (get_local $10) (get_local $2) - (i32.const 3) ) ) - (i32.store offset=4 - (tee_local $13 - (i32.add - (get_local $10) - (get_local $2) - ) - ) - (i32.or - (tee_local $9 - (i32.sub - (i32.shl - (get_local $4) - (i32.const 3) - ) - (get_local $2) + (i32.or + (tee_local $9 + (i32.sub + (i32.shl + (get_local $4) + (i32.const 3) ) + (get_local $2) ) - (i32.const 1) ) + (i32.const 1) ) - (i32.store - (i32.add - (get_local $13) - (get_local $9) - ) + ) + (i32.store + (i32.add + (get_local $13) (get_local $9) ) - (if - (get_local $34) - (block - (set_local $3 - (i32.load - (i32.const 1228) + (get_local $9) + ) + (if + (get_local $34) + (block + (set_local $3 + (i32.load + (i32.const 1228) + ) + ) + (set_local $5 + (i32.add + (i32.shl + (tee_local $16 + (i32.shr_u + (get_local $34) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 1248) ) - (set_local $5 - (i32.add + ) + (if + (i32.and + (tee_local $0 + (i32.load + (i32.const 1208) + ) + ) + (tee_local $6 (i32.shl - (tee_local $16 - (i32.shr_u - (get_local $34) - (i32.const 3) - ) - ) - (i32.const 3) + (i32.const 1) + (get_local $16) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (tee_local $0 (i32.load - (i32.const 1208) - ) - ) - (tee_local $6 - (i32.shl - (i32.const 1) - (get_local $16) - ) - ) - ) - (if - (i32.lt_u - (tee_local $0 - (i32.load - (tee_local $6 - (i32.add - (get_local $5) - (i32.const 8) - ) + (tee_local $6 + (i32.add + (get_local $5) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (set_local $40 - (get_local $6) - ) - (set_local $35 - (get_local $0) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (get_local $0) - (get_local $6) - ) - ) (set_local $40 - (i32.add - (get_local $5) - (i32.const 8) - ) + (get_local $6) ) (set_local $35 - (get_local $5) + (get_local $0) ) ) ) - (i32.store - (get_local $40) - (get_local $3) - ) - (i32.store offset=12 - (get_local $35) - (get_local $3) - ) - (i32.store offset=8 - (get_local $3) - (get_local $35) - ) - (i32.store offset=12 - (get_local $3) - (get_local $5) + (block + (i32.store + (i32.const 1208) + (i32.or + (get_local $0) + (get_local $6) + ) + ) + (set_local $40 + (i32.add + (get_local $5) + (i32.const 8) + ) + ) + (set_local $35 + (get_local $5) + ) ) ) + (i32.store + (get_local $40) + (get_local $3) + ) + (i32.store offset=12 + (get_local $35) + (get_local $3) + ) + (i32.store offset=8 + (get_local $3) + (get_local $35) + ) + (i32.store offset=12 + (get_local $3) + (get_local $5) + ) ) - (i32.store - (i32.const 1216) - (get_local $9) - ) - (i32.store - (i32.const 1228) - (get_local $13) - ) - (set_global $r - (get_local $25) - ) - (return - (get_local $8) - ) + ) + (i32.store + (i32.const 1216) + (get_local $9) + ) + (i32.store + (i32.const 1228) + (get_local $13) + ) + (set_global $r + (get_local $25) + ) + (return + (get_local $8) ) ) - (if (result i32) - (tee_local $13 - (i32.load - (i32.const 1212) - ) + ) + (if (result i32) + (tee_local $13 + (i32.load + (i32.const 1212) ) - (block - (set_local $13 - (i32.and - (i32.shr_u - (tee_local $9 - (i32.add - (i32.and + ) + (block + (set_local $13 + (i32.and + (i32.shr_u + (tee_local $9 + (i32.add + (i32.and + (get_local $13) + (i32.sub + (i32.const 0) (get_local $13) - (i32.sub - (i32.const 0) - (get_local $13) - ) ) - (i32.const -1) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (set_local $0 - (i32.sub - (i32.and - (i32.load offset=4 - (tee_local $16 - (i32.load - (i32.add - (i32.shl - (i32.add + ) + (set_local $0 + (i32.sub + (i32.and + (i32.load offset=4 + (tee_local $16 + (i32.load + (i32.add + (i32.shl + (i32.add + (i32.or (i32.or (i32.or (i32.or - (i32.or - (tee_local $9 - (i32.and - (i32.shr_u - (tee_local $5 - (i32.shr_u - (get_local $9) - (get_local $13) - ) - ) - (i32.const 5) - ) - (i32.const 8) - ) - ) - (get_local $13) - ) - (tee_local $5 + (tee_local $9 (i32.and (i32.shr_u - (tee_local $3 + (tee_local $5 (i32.shr_u - (get_local $5) (get_local $9) + (get_local $13) ) ) - (i32.const 2) + (i32.const 5) ) - (i32.const 4) + (i32.const 8) ) ) + (get_local $13) ) - (tee_local $3 + (tee_local $5 (i32.and (i32.shr_u - (tee_local $0 + (tee_local $3 (i32.shr_u - (get_local $3) (get_local $5) + (get_local $9) ) ) - (i32.const 1) + (i32.const 2) ) - (i32.const 2) + (i32.const 4) ) ) ) - (tee_local $0 + (tee_local $3 (i32.and (i32.shr_u - (tee_local $6 + (tee_local $0 (i32.shr_u - (get_local $0) (get_local $3) + (get_local $5) ) ) (i32.const 1) ) - (i32.const 1) + (i32.const 2) ) ) ) - (i32.shr_u - (get_local $6) - (get_local $0) + (tee_local $0 + (i32.and + (i32.shr_u + (tee_local $6 + (i32.shr_u + (get_local $0) + (get_local $3) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) ) ) - (i32.const 2) + (i32.shr_u + (get_local $6) + (get_local $0) + ) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (i32.const -8) ) - (get_local $2) + (i32.const -8) ) + (get_local $2) ) - (set_local $3 - (tee_local $6 - (get_local $16) - ) + ) + (set_local $3 + (tee_local $6 + (get_local $16) ) - (loop $while-in - (block $while-out - (set_local $5 - (i32.lt_u - (tee_local $16 - (i32.sub - (i32.and - (i32.load offset=4 - (tee_local $6 + ) + (loop $while-in + (block $while-out + (set_local $5 + (i32.lt_u + (tee_local $16 + (i32.sub + (i32.and + (i32.load offset=4 + (tee_local $6 + (if (result i32) + (tee_local $16 + (i32.load offset=16 + (get_local $6) + ) + ) + (get_local $16) (if (result i32) - (tee_local $16 - (i32.load offset=16 + (tee_local $5 + (i32.load offset=20 (get_local $6) ) ) - (get_local $16) - (if (result i32) - (tee_local $5 - (i32.load offset=20 - (get_local $6) - ) + (get_local $5) + (block + (set_local $7 + (get_local $0) ) - (get_local $5) - (block - (set_local $7 - (get_local $0) - ) - (set_local $1 - (get_local $3) - ) - (br $while-out) + (set_local $1 + (get_local $3) ) + (br $while-out) ) ) ) ) - (i32.const -8) ) - (get_local $2) + (i32.const -8) ) + (get_local $2) ) - (get_local $0) ) + (get_local $0) ) - (set_local $0 - (select - (get_local $16) - (get_local $0) - (get_local $5) - ) + ) + (set_local $0 + (select + (get_local $16) + (get_local $0) + (get_local $5) ) - (set_local $3 - (select - (get_local $6) - (get_local $3) - (get_local $5) - ) + ) + (set_local $3 + (select + (get_local $6) + (get_local $3) + (get_local $5) ) - (br $while-in) ) + (br $while-in) ) - (if - (i32.lt_u - (get_local $1) - (tee_local $3 - (i32.load - (i32.const 1224) - ) + ) + (if + (i32.lt_u + (get_local $1) + (tee_local $3 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (if - (i32.ge_u - (get_local $1) - (tee_local $6 - (i32.add - (get_local $1) - (get_local $2) - ) + (call $qa) + ) + (if + (i32.ge_u + (get_local $1) + (tee_local $6 + (i32.add + (get_local $1) + (get_local $2) ) ) - (call $qa) ) - (set_local $0 - (i32.load offset=24 - (get_local $1) + (call $qa) + ) + (set_local $0 + (i32.load offset=24 + (get_local $1) + ) + ) + (if + (i32.eq + (tee_local $8 + (i32.load offset=12 + (get_local $1) + ) ) + (get_local $1) ) - (if - (i32.eq - (tee_local $8 - (i32.load offset=12 - (get_local $1) + (block $do-once4 + (if + (tee_local $4 + (i32.load + (tee_local $10 + (i32.add + (get_local $1) + (i32.const 20) + ) + ) + ) + ) + (block + (set_local $16 + (get_local $4) + ) + (set_local $5 + (get_local $10) + ) + ) + (br_if $do-once4 + (i32.eqz + (tee_local $16 + (i32.load + (tee_local $5 + (i32.add + (get_local $1) + (i32.const 16) + ) + ) + ) + ) ) ) - (get_local $1) ) - (block $do-once4 + (loop $while-in7 (if (tee_local $4 (i32.load (tee_local $10 (i32.add - (get_local $1) + (get_local $16) (i32.const 20) ) ) @@ -896,725 +930,689 @@ (set_local $5 (get_local $10) ) - ) - (br_if $do-once4 - (i32.eqz - (tee_local $16 - (i32.load - (tee_local $5 - (i32.add - (get_local $1) - (i32.const 16) - ) - ) - ) - ) - ) + (br $while-in7) ) ) - (loop $while-in7 - (if - (tee_local $4 - (i32.load - (tee_local $10 - (i32.add - (get_local $16) - (i32.const 20) - ) + (if + (tee_local $4 + (i32.load + (tee_local $10 + (i32.add + (get_local $16) + (i32.const 16) ) ) ) - (block - (set_local $16 - (get_local $4) - ) - (set_local $5 - (get_local $10) - ) - (br $while-in7) - ) ) - (if - (tee_local $4 - (i32.load - (tee_local $10 - (i32.add - (get_local $16) - (i32.const 16) - ) - ) - ) + (block + (set_local $16 + (get_local $4) ) - (block - (set_local $16 - (get_local $4) - ) - (set_local $5 - (get_local $10) - ) - (br $while-in7) + (set_local $5 + (get_local $10) ) + (br $while-in7) ) ) - (if - (i32.lt_u + ) + (if + (i32.lt_u + (get_local $5) + (get_local $3) + ) + (call $qa) + (block + (i32.store (get_local $5) - (get_local $3) + (i32.const 0) ) - (call $qa) - (block - (i32.store - (get_local $5) - (i32.const 0) - ) - (set_local $23 - (get_local $16) - ) + (set_local $23 + (get_local $16) ) ) ) - (block - (if - (i32.lt_u - (tee_local $10 - (i32.load offset=8 - (get_local $1) - ) + ) + (block + (if + (i32.lt_u + (tee_local $10 + (i32.load offset=8 + (get_local $1) ) - (get_local $3) ) - (call $qa) + (get_local $3) ) - (if - (i32.ne - (i32.load - (tee_local $4 - (i32.add - (get_local $10) - (i32.const 12) - ) + (call $qa) + ) + (if + (i32.ne + (i32.load + (tee_local $4 + (i32.add + (get_local $10) + (i32.const 12) ) ) - (get_local $1) ) - (call $qa) + (get_local $1) ) - (if - (i32.eq - (i32.load - (tee_local $5 - (i32.add - (get_local $8) - (i32.const 8) - ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $5 + (i32.add + (get_local $8) + (i32.const 8) ) ) - (get_local $1) ) - (block - (i32.store - (get_local $4) - (get_local $8) - ) - (i32.store - (get_local $5) - (get_local $10) - ) - (set_local $23 - (get_local $8) - ) + (get_local $1) + ) + (block + (i32.store + (get_local $4) + (get_local $8) + ) + (i32.store + (get_local $5) + (get_local $10) + ) + (set_local $23 + (get_local $8) ) - (call $qa) ) + (call $qa) ) ) - (if - (get_local $0) - (block $do-once8 - (if - (i32.eq - (get_local $1) - (i32.load - (tee_local $3 - (i32.add - (i32.shl - (tee_local $8 - (i32.load offset=28 - (get_local $1) - ) + ) + (if + (get_local $0) + (block $do-once8 + (if + (i32.eq + (get_local $1) + (i32.load + (tee_local $3 + (i32.add + (i32.shl + (tee_local $8 + (i32.load offset=28 + (get_local $1) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (block - (i32.store - (get_local $3) + ) + (block + (i32.store + (get_local $3) + (get_local $23) + ) + (if + (i32.eqz (get_local $23) ) - (if - (i32.eqz - (get_local $23) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (get_local $8) - ) - (i32.const -1) + (block + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (get_local $8) ) + (i32.const -1) ) ) - (br $do-once8) ) + (br $do-once8) ) ) - (block - (if - (i32.lt_u - (get_local $0) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (get_local $0) + (i32.load + (i32.const 1224) ) - (call $qa) ) - (if - (i32.eq - (i32.load - (tee_local $8 - (i32.add - (get_local $0) - (i32.const 16) - ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $8 + (i32.add + (get_local $0) + (i32.const 16) ) ) - (get_local $1) - ) - (i32.store - (get_local $8) - (get_local $23) - ) - (i32.store offset=20 - (get_local $0) - (get_local $23) ) + (get_local $1) ) - (br_if $do-once8 - (i32.eqz - (get_local $23) - ) + (i32.store + (get_local $8) + (get_local $23) + ) + (i32.store offset=20 + (get_local $0) + (get_local $23) ) ) - ) - (if - (i32.lt_u - (get_local $23) - (tee_local $8 - (i32.load - (i32.const 1224) - ) + (br_if $do-once8 + (i32.eqz + (get_local $23) ) ) - (call $qa) ) - (i32.store offset=24 + ) + (if + (i32.lt_u (get_local $23) - (get_local $0) + (tee_local $8 + (i32.load + (i32.const 1224) + ) + ) + ) + (call $qa) + ) + (i32.store offset=24 + (get_local $23) + (get_local $0) + ) + (if + (tee_local $3 + (i32.load offset=16 + (get_local $1) + ) ) (if - (tee_local $3 - (i32.load offset=16 - (get_local $1) - ) + (i32.lt_u + (get_local $3) + (get_local $8) ) - (if - (i32.lt_u + (call $qa) + (block + (i32.store offset=16 + (get_local $23) (get_local $3) - (get_local $8) ) - (call $qa) - (block - (i32.store offset=16 - (get_local $23) - (get_local $3) - ) - (i32.store offset=24 - (get_local $3) - (get_local $23) - ) + (i32.store offset=24 + (get_local $3) + (get_local $23) ) ) ) + ) + (if + (tee_local $3 + (i32.load offset=20 + (get_local $1) + ) + ) (if - (tee_local $3 - (i32.load offset=20 - (get_local $1) + (i32.lt_u + (get_local $3) + (i32.load + (i32.const 1224) ) ) - (if - (i32.lt_u + (call $qa) + (block + (i32.store offset=20 + (get_local $23) (get_local $3) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (i32.store offset=20 - (get_local $23) - (get_local $3) - ) - (i32.store offset=24 - (get_local $3) - (get_local $23) - ) + (i32.store offset=24 + (get_local $3) + (get_local $23) ) ) ) ) ) - (if - (i32.lt_u - (get_local $7) - (i32.const 16) - ) - (block - (i32.store offset=4 - (get_local $1) - (i32.or - (tee_local $0 - (i32.add - (get_local $7) - (get_local $2) - ) + ) + (if + (i32.lt_u + (get_local $7) + (i32.const 16) + ) + (block + (i32.store offset=4 + (get_local $1) + (i32.or + (tee_local $0 + (i32.add + (get_local $7) + (get_local $2) ) - (i32.const 3) ) + (i32.const 3) ) - (i32.store - (tee_local $3 + ) + (i32.store + (tee_local $3 + (i32.add (i32.add - (i32.add - (get_local $1) - (get_local $0) - ) - (i32.const 4) + (get_local $1) + (get_local $0) ) + (i32.const 4) ) - (i32.or - (i32.load - (get_local $3) - ) - (i32.const 1) + ) + (i32.or + (i32.load + (get_local $3) ) + (i32.const 1) ) ) - (block - (i32.store offset=4 - (get_local $1) - (i32.or - (get_local $2) - (i32.const 3) - ) + ) + (block + (i32.store offset=4 + (get_local $1) + (i32.or + (get_local $2) + (i32.const 3) ) - (i32.store offset=4 + ) + (i32.store offset=4 + (get_local $6) + (i32.or + (get_local $7) + (i32.const 1) + ) + ) + (i32.store + (i32.add (get_local $6) - (i32.or - (get_local $7) - (i32.const 1) - ) + (get_local $7) ) - (i32.store - (i32.add - (get_local $6) - (get_local $7) + (get_local $7) + ) + (if + (tee_local $3 + (i32.load + (i32.const 1216) ) - (get_local $7) ) - (if - (tee_local $3 + (block + (set_local $0 (i32.load - (i32.const 1216) + (i32.const 1228) ) ) - (block - (set_local $0 - (i32.load - (i32.const 1228) + (set_local $3 + (i32.add + (i32.shl + (tee_local $8 + (i32.shr_u + (get_local $3) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 1248) ) - (set_local $3 - (i32.add + ) + (if + (i32.and + (tee_local $10 + (i32.load + (i32.const 1208) + ) + ) + (tee_local $5 (i32.shl - (tee_local $8 - (i32.shr_u - (get_local $3) - (i32.const 3) - ) - ) - (i32.const 3) + (i32.const 1) + (get_local $8) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (tee_local $10 (i32.load - (i32.const 1208) - ) - ) - (tee_local $5 - (i32.shl - (i32.const 1) - (get_local $8) - ) - ) - ) - (if - (i32.lt_u - (tee_local $10 - (i32.load - (tee_local $5 - (i32.add - (get_local $3) - (i32.const 8) - ) + (tee_local $5 + (i32.add + (get_local $3) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (set_local $41 - (get_local $5) - ) - (set_local $27 - (get_local $10) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (get_local $10) - (get_local $5) - ) - ) (set_local $41 - (i32.add - (get_local $3) - (i32.const 8) - ) + (get_local $5) ) (set_local $27 - (get_local $3) + (get_local $10) ) ) ) - (i32.store - (get_local $41) - (get_local $0) - ) - (i32.store offset=12 - (get_local $27) - (get_local $0) - ) - (i32.store offset=8 - (get_local $0) - (get_local $27) - ) - (i32.store offset=12 - (get_local $0) - (get_local $3) + (block + (i32.store + (i32.const 1208) + (i32.or + (get_local $10) + (get_local $5) + ) + ) + (set_local $41 + (i32.add + (get_local $3) + (i32.const 8) + ) + ) + (set_local $27 + (get_local $3) + ) ) ) - ) - (i32.store - (i32.const 1216) - (get_local $7) - ) - (i32.store - (i32.const 1228) - (get_local $6) + (i32.store + (get_local $41) + (get_local $0) + ) + (i32.store offset=12 + (get_local $27) + (get_local $0) + ) + (i32.store offset=8 + (get_local $0) + (get_local $27) + ) + (i32.store offset=12 + (get_local $0) + (get_local $3) + ) ) ) - ) - (set_global $r - (get_local $25) - ) - (return - (i32.add - (get_local $1) - (i32.const 8) + (i32.store + (i32.const 1216) + (get_local $7) + ) + (i32.store + (i32.const 1228) + (get_local $6) ) ) ) - (get_local $2) + (set_global $r + (get_local $25) + ) + (return + (i32.add + (get_local $1) + (i32.const 8) + ) + ) ) + (get_local $2) ) - (get_local $2) ) + (get_local $2) ) - (if (result i32) - (i32.gt_u - (get_local $0) - (i32.const -65) - ) - (i32.const -1) - (block $do-once (result i32) - (set_local $0 - (i32.and - (tee_local $3 - (i32.add - (get_local $0) - (i32.const 11) - ) + ) + (if (result i32) + (i32.gt_u + (get_local $0) + (i32.const -65) + ) + (i32.const -1) + (block $do-once (result i32) + (set_local $0 + (i32.and + (tee_local $3 + (i32.add + (get_local $0) + (i32.const 11) ) - (i32.const -8) ) + (i32.const -8) ) - (if (result i32) - (tee_local $10 - (i32.load - (i32.const 1212) - ) + ) + (if (result i32) + (tee_local $10 + (i32.load + (i32.const 1212) ) - (block (result i32) - (set_local $5 - (i32.sub - (i32.const 0) - (get_local $0) - ) + ) + (block (result i32) + (set_local $5 + (i32.sub + (i32.const 0) + (get_local $0) ) - (if - (tee_local $13 - (i32.load - (i32.add - (i32.shl - (tee_local $27 + ) + (if + (tee_local $13 + (i32.load + (i32.add + (i32.shl + (tee_local $27 + (if (result i32) + (tee_local $8 + (i32.shr_u + (get_local $3) + (i32.const 8) + ) + ) (if (result i32) - (tee_local $8 - (i32.shr_u - (get_local $3) - (i32.const 8) - ) + (i32.gt_u + (get_local $0) + (i32.const 16777215) ) - (if (result i32) - (i32.gt_u - (get_local $0) - (i32.const 16777215) - ) - (i32.const 31) - (i32.or - (i32.and - (i32.shr_u - (get_local $0) - (i32.add - (tee_local $13 - (i32.add - (i32.sub - (i32.const 14) + (i32.const 31) + (i32.or + (i32.and + (i32.shr_u + (get_local $0) + (i32.add + (tee_local $13 + (i32.add + (i32.sub + (i32.const 14) + (i32.or (i32.or - (i32.or - (tee_local $8 - (i32.and - (i32.shr_u - (i32.add - (tee_local $4 - (i32.shl - (get_local $8) - (tee_local $3 - (i32.and - (i32.shr_u - (i32.add - (get_local $8) - (i32.const 1048320) - ) - (i32.const 16) + (tee_local $8 + (i32.and + (i32.shr_u + (i32.add + (tee_local $4 + (i32.shl + (get_local $8) + (tee_local $3 + (i32.and + (i32.shr_u + (i32.add + (get_local $8) + (i32.const 1048320) ) - (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) ) - (get_local $3) ) - (tee_local $4 - (i32.and - (i32.shr_u - (i32.add - (tee_local $16 - (i32.shl - (get_local $4) - (get_local $8) - ) + (get_local $3) + ) + (tee_local $4 + (i32.and + (i32.shr_u + (i32.add + (tee_local $16 + (i32.shl + (get_local $4) + (get_local $8) ) - (i32.const 245760) ) - (i32.const 16) + (i32.const 245760) ) - (i32.const 2) + (i32.const 16) ) + (i32.const 2) ) ) ) - (i32.shr_u - (i32.shl - (get_local $16) - (get_local $4) - ) - (i32.const 15) + ) + (i32.shr_u + (i32.shl + (get_local $16) + (get_local $4) ) + (i32.const 15) ) ) - (i32.const 7) ) + (i32.const 7) ) - (i32.const 1) - ) - (i32.shl - (get_local $13) - (i32.const 1) ) + (i32.const 1) + ) + (i32.shl + (get_local $13) + (i32.const 1) ) ) - (i32.const 0) ) + (i32.const 0) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) - (block $label$break$a - (set_local $4 - (get_local $5) - ) - (set_local $16 - (i32.const 0) - ) - (set_local $3 - (i32.shl - (get_local $0) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (get_local $27) - (i32.const 1) - ) - ) - (i32.eq + ) + (block $label$break$a + (set_local $4 + (get_local $5) + ) + (set_local $16 + (i32.const 0) + ) + (set_local $3 + (i32.shl + (get_local $0) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u (get_local $27) - (i32.const 31) + (i32.const 1) ) ) + (i32.eq + (get_local $27) + (i32.const 31) + ) ) ) - (set_local $8 - (get_local $13) - ) - (loop $while-in14 - (if - (i32.lt_u - (tee_local $13 - (i32.sub - (tee_local $2 - (i32.and - (i32.load offset=4 - (get_local $8) - ) - (i32.const -8) + ) + (set_local $8 + (get_local $13) + ) + (loop $while-in14 + (if + (i32.lt_u + (tee_local $13 + (i32.sub + (tee_local $2 + (i32.and + (i32.load offset=4 + (get_local $8) ) + (i32.const -8) ) - (get_local $0) ) + (get_local $0) ) - (get_local $4) ) - (set_local $4 - (if (result i32) - (i32.eq - (get_local $2) - (get_local $0) + (get_local $4) + ) + (set_local $4 + (if (result i32) + (i32.eq + (get_local $2) + (get_local $0) + ) + (block + (set_local $29 + (get_local $13) ) - (block - (set_local $29 - (get_local $13) - ) - (set_local $28 - (get_local $8) - ) - (set_local $32 - (get_local $8) - ) - (set_local $8 - (i32.const 90) - ) - (br $label$break$a) + (set_local $28 + (get_local $8) ) - (block (result i32) - (set_local $9 - (get_local $8) - ) - (get_local $13) + (set_local $32 + (get_local $8) + ) + (set_local $8 + (i32.const 90) ) + (br $label$break$a) ) - ) - ) - (set_local $2 - (select - (get_local $16) - (tee_local $13 - (i32.load offset=20 + (block (result i32) + (set_local $9 (get_local $8) ) + (get_local $13) ) - (i32.or - (i32.eqz - (get_local $13) - ) - (i32.eq - (get_local $13) - (tee_local $8 - (i32.load + ) + ) + ) + (set_local $2 + (select + (get_local $16) + (tee_local $13 + (i32.load offset=20 + (get_local $8) + ) + ) + (i32.or + (i32.eqz + (get_local $13) + ) + (i32.eq + (get_local $13) + (tee_local $8 + (i32.load + (i32.add (i32.add - (i32.add - (get_local $8) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (get_local $3) - (i32.const 31) - ) - (i32.const 2) + (get_local $8) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (get_local $3) + (i32.const 31) ) + (i32.const 2) ) ) ) @@ -1622,262 +1620,283 @@ ) ) ) - (set_local $6 - (if (result i32) - (tee_local $13 - (i32.eqz - (get_local $8) - ) + ) + (set_local $6 + (if (result i32) + (tee_local $13 + (i32.eqz + (get_local $8) ) - (block (result i32) - (set_local $36 - (get_local $4) - ) - (set_local $33 - (get_local $9) - ) - (set_local $8 - (i32.const 86) - ) + ) + (block (result i32) + (set_local $36 + (get_local $4) + ) + (set_local $33 + (get_local $9) + ) + (set_local $8 + (i32.const 86) + ) + (get_local $2) + ) + (block + (set_local $16 (get_local $2) ) - (block - (set_local $16 - (get_local $2) - ) - (set_local $3 - (i32.shl - (get_local $3) - (i32.xor - (i32.and - (get_local $13) - (i32.const 1) - ) + (set_local $3 + (i32.shl + (get_local $3) + (i32.xor + (i32.and + (get_local $13) (i32.const 1) ) + (i32.const 1) ) ) - (br $while-in14) ) + (br $while-in14) ) ) ) ) - (block - (set_local $36 - (get_local $5) - ) - (set_local $8 - (i32.const 86) - ) - ) ) - (if - (i32.eq - (get_local $8) + (block + (set_local $36 + (get_local $5) + ) + (set_local $8 (i32.const 86) ) - (if - (tee_local $2 - (if (result i32) - (i32.or - (get_local $6) - (get_local $33) - ) + ) + ) + (if + (i32.eq + (get_local $8) + (i32.const 86) + ) + (if + (tee_local $2 + (if (result i32) + (i32.or (get_local $6) - (block (result i32) - (drop - (br_if $do-once - (get_local $0) - (i32.eqz - (tee_local $5 - (i32.and - (get_local $10) - (i32.or - (tee_local $13 - (i32.shl - (i32.const 2) - (get_local $27) - ) - ) - (i32.sub - (i32.const 0) - (get_local $13) + (get_local $33) + ) + (get_local $6) + (block (result i32) + (drop + (br_if $do-once + (get_local $0) + (i32.eqz + (tee_local $5 + (i32.and + (get_local $10) + (i32.or + (tee_local $13 + (i32.shl + (i32.const 2) + (get_local $27) ) ) + (i32.sub + (i32.const 0) + (get_local $13) + ) ) ) ) ) ) - (set_local $5 - (i32.and - (i32.shr_u - (tee_local $13 - (i32.add - (i32.and + ) + (set_local $5 + (i32.and + (i32.shr_u + (tee_local $13 + (i32.add + (i32.and + (get_local $5) + (i32.sub + (i32.const 0) (get_local $5) - (i32.sub - (i32.const 0) - (get_local $5) - ) ) - (i32.const -1) ) + (i32.const -1) ) - (i32.const 12) ) - (i32.const 16) + (i32.const 12) ) + (i32.const 16) ) - (i32.load - (i32.add - (i32.shl - (i32.add + ) + (i32.load + (i32.add + (i32.shl + (i32.add + (i32.or (i32.or (i32.or (i32.or - (i32.or - (tee_local $13 - (i32.and - (i32.shr_u - (tee_local $2 - (i32.shr_u - (get_local $13) - (get_local $5) - ) - ) - (i32.const 5) - ) - (i32.const 8) - ) - ) - (get_local $5) - ) - (tee_local $2 + (tee_local $13 (i32.and (i32.shr_u - (tee_local $6 + (tee_local $2 (i32.shr_u - (get_local $2) (get_local $13) + (get_local $5) ) ) - (i32.const 2) + (i32.const 5) ) - (i32.const 4) + (i32.const 8) ) ) + (get_local $5) ) - (tee_local $6 + (tee_local $2 (i32.and (i32.shr_u - (tee_local $9 + (tee_local $6 (i32.shr_u - (get_local $6) (get_local $2) + (get_local $13) ) ) - (i32.const 1) + (i32.const 2) ) - (i32.const 2) + (i32.const 4) ) ) ) - (tee_local $9 + (tee_local $6 (i32.and (i32.shr_u - (tee_local $3 + (tee_local $9 (i32.shr_u - (get_local $9) (get_local $6) + (get_local $2) ) ) (i32.const 1) ) - (i32.const 1) + (i32.const 2) ) ) ) - (i32.shr_u - (get_local $3) - (get_local $9) + (tee_local $9 + (i32.and + (i32.shr_u + (tee_local $3 + (i32.shr_u + (get_local $9) + (get_local $6) + ) + ) + (i32.const 1) + ) + (i32.const 1) + ) ) ) - (i32.const 2) + (i32.shr_u + (get_local $3) + (get_local $9) + ) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) ) - (block - (set_local $29 - (get_local $36) - ) - (set_local $28 - (get_local $2) - ) - (set_local $32 - (get_local $33) - ) - (set_local $8 - (i32.const 90) - ) + ) + (block + (set_local $29 + (get_local $36) ) - (block - (set_local $18 - (get_local $36) - ) - (set_local $11 - (get_local $33) - ) + (set_local $28 + (get_local $2) + ) + (set_local $32 + (get_local $33) + ) + (set_local $8 + (i32.const 90) + ) + ) + (block + (set_local $18 + (get_local $36) + ) + (set_local $11 + (get_local $33) ) ) ) - (if - (i32.eq - (get_local $8) - (i32.const 90) + ) + (if + (i32.eq + (get_local $8) + (i32.const 90) + ) + (loop $while-in16 + (set_local $8 + (i32.const 0) ) - (loop $while-in16 - (set_local $8 - (i32.const 0) - ) - (set_local $3 - (i32.lt_u - (tee_local $9 - (i32.sub - (i32.and - (i32.load offset=4 - (get_local $28) - ) - (i32.const -8) + (set_local $3 + (i32.lt_u + (tee_local $9 + (i32.sub + (i32.and + (i32.load offset=4 + (get_local $28) ) - (get_local $0) + (i32.const -8) ) + (get_local $0) ) - (get_local $29) ) + (get_local $29) ) - (set_local $6 - (select - (get_local $9) - (get_local $29) - (get_local $3) - ) + ) + (set_local $6 + (select + (get_local $9) + (get_local $29) + (get_local $3) ) - (set_local $9 - (select + ) + (set_local $9 + (select + (get_local $28) + (get_local $32) + (get_local $3) + ) + ) + (if + (tee_local $3 + (i32.load offset=16 (get_local $28) - (get_local $32) + ) + ) + (block + (set_local $29 + (get_local $6) + ) + (set_local $28 (get_local $3) ) + (set_local $32 + (get_local $9) + ) + (br $while-in16) ) - (if - (tee_local $3 - (i32.load offset=16 + ) + (set_local $18 + (if (result i32) + (tee_local $28 + (i32.load offset=20 (get_local $28) ) ) @@ -1885,708 +1904,811 @@ (set_local $29 (get_local $6) ) - (set_local $28 - (get_local $3) - ) (set_local $32 (get_local $9) ) (br $while-in16) ) - ) - (set_local $18 - (if (result i32) - (tee_local $28 - (i32.load offset=20 - (get_local $28) - ) - ) - (block - (set_local $29 - (get_local $6) - ) - (set_local $32 - (get_local $9) - ) - (br $while-in16) - ) - (block (result i32) - (set_local $11 - (get_local $9) - ) - (get_local $6) + (block (result i32) + (set_local $11 + (get_local $9) ) + (get_local $6) ) ) ) ) + ) + (if (result i32) + (get_local $11) (if (result i32) - (get_local $11) - (if (result i32) - (i32.lt_u - (get_local $18) - (i32.sub - (i32.load - (i32.const 1216) - ) - (get_local $0) + (i32.lt_u + (get_local $18) + (i32.sub + (i32.load + (i32.const 1216) ) + (get_local $0) ) - (block - (if - (i32.lt_u - (get_local $11) - (tee_local $10 - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (get_local $11) + (tee_local $10 + (i32.load + (i32.const 1224) ) ) - (call $qa) ) - (if - (i32.ge_u - (get_local $11) - (tee_local $9 - (i32.add - (get_local $11) - (get_local $0) - ) + (call $qa) + ) + (if + (i32.ge_u + (get_local $11) + (tee_local $9 + (i32.add + (get_local $11) + (get_local $0) ) ) - (call $qa) ) - (set_local $6 - (i32.load offset=24 - (get_local $11) - ) + (call $qa) + ) + (set_local $6 + (i32.load offset=24 + (get_local $11) ) - (if - (i32.eq - (tee_local $3 - (i32.load offset=12 - (get_local $11) - ) + ) + (if + (i32.eq + (tee_local $3 + (i32.load offset=12 + (get_local $11) ) - (get_local $11) ) - (block $do-once17 - (set_local $4 - (if (result i32) - (tee_local $5 - (i32.load - (tee_local $2 - (i32.add - (get_local $11) - (i32.const 20) - ) - ) - ) - ) - (block (result i32) - (set_local $16 - (get_local $5) - ) - (get_local $2) - ) - (if (result i32) - (tee_local $16 - (i32.load - (tee_local $13 - (i32.add - (get_local $11) - (i32.const 16) - ) - ) + (get_local $11) + ) + (block $do-once17 + (set_local $4 + (if (result i32) + (tee_local $5 + (i32.load + (tee_local $2 + (i32.add + (get_local $11) + (i32.const 20) ) ) - (get_local $13) - (br $do-once17) ) ) - ) - (loop $while-in20 - (if - (tee_local $5 - (i32.load - (tee_local $2 - (i32.add - (get_local $16) - (i32.const 20) - ) - ) - ) - ) - (block - (set_local $16 - (get_local $5) - ) - (set_local $4 - (get_local $2) - ) - (br $while-in20) + (block (result i32) + (set_local $16 + (get_local $5) ) + (get_local $2) ) - (if - (tee_local $5 + (if (result i32) + (tee_local $16 (i32.load - (tee_local $2 + (tee_local $13 (i32.add - (get_local $16) + (get_local $11) (i32.const 16) ) ) ) ) - (block - (set_local $16 - (get_local $5) - ) - (set_local $4 - (get_local $2) - ) - (br $while-in20) - ) - ) - ) - (if - (i32.lt_u - (get_local $4) - (get_local $10) - ) - (call $qa) - (block - (i32.store - (get_local $4) - (i32.const 0) - ) - (set_local $22 - (get_local $16) - ) + (get_local $13) + (br $do-once17) ) ) ) - (block - (if - (i32.lt_u - (tee_local $2 - (i32.load offset=8 - (get_local $11) - ) - ) - (get_local $10) - ) - (call $qa) - ) + (loop $while-in20 (if - (i32.ne + (tee_local $5 (i32.load - (tee_local $5 + (tee_local $2 (i32.add - (get_local $2) - (i32.const 12) + (get_local $16) + (i32.const 20) ) ) ) - (get_local $11) ) - (call $qa) + (block + (set_local $16 + (get_local $5) + ) + (set_local $4 + (get_local $2) + ) + (br $while-in20) + ) ) (if - (i32.eq + (tee_local $5 (i32.load - (tee_local $13 + (tee_local $2 (i32.add - (get_local $3) - (i32.const 8) + (get_local $16) + (i32.const 16) ) ) ) - (get_local $11) ) (block - (i32.store + (set_local $16 (get_local $5) - (get_local $3) ) - (i32.store - (get_local $13) + (set_local $4 (get_local $2) ) - (set_local $22 - (get_local $3) + (br $while-in20) + ) + ) + ) + (if + (i32.lt_u + (get_local $4) + (get_local $10) + ) + (call $qa) + (block + (i32.store + (get_local $4) + (i32.const 0) + ) + (set_local $22 + (get_local $16) + ) + ) + ) + ) + (block + (if + (i32.lt_u + (tee_local $2 + (i32.load offset=8 + (get_local $11) ) ) - (call $qa) + (get_local $10) + ) + (call $qa) + ) + (if + (i32.ne + (i32.load + (tee_local $5 + (i32.add + (get_local $2) + (i32.const 12) + ) + ) + ) + (get_local $11) ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $13 + (i32.add + (get_local $3) + (i32.const 8) + ) + ) + ) + (get_local $11) + ) + (block + (i32.store + (get_local $5) + (get_local $3) + ) + (i32.store + (get_local $13) + (get_local $2) + ) + (set_local $22 + (get_local $3) + ) + ) + (call $qa) ) ) - (if - (get_local $6) - (block $do-once21 - (if - (i32.eq - (get_local $11) - (i32.load - (tee_local $10 - (i32.add - (i32.shl - (tee_local $3 - (i32.load offset=28 - (get_local $11) - ) + ) + (if + (get_local $6) + (block $do-once21 + (if + (i32.eq + (get_local $11) + (i32.load + (tee_local $10 + (i32.add + (i32.shl + (tee_local $3 + (i32.load offset=28 + (get_local $11) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) ) ) - (block - (i32.store - (get_local $10) + ) + (block + (i32.store + (get_local $10) + (get_local $22) + ) + (if + (i32.eqz (get_local $22) ) - (if - (i32.eqz - (get_local $22) - ) - (block - (i32.store - (i32.const 1212) - (i32.and - (i32.load - (i32.const 1212) - ) - (i32.xor - (i32.shl - (i32.const 1) - (get_local $3) - ) - (i32.const -1) + (block + (i32.store + (i32.const 1212) + (i32.and + (i32.load + (i32.const 1212) + ) + (i32.xor + (i32.shl + (i32.const 1) + (get_local $3) ) + (i32.const -1) ) ) - (br $do-once21) ) + (br $do-once21) ) ) - (block - (if - (i32.lt_u - (get_local $6) - (i32.load - (i32.const 1224) - ) + ) + (block + (if + (i32.lt_u + (get_local $6) + (i32.load + (i32.const 1224) ) - (call $qa) ) - (if - (i32.eq - (i32.load - (tee_local $3 - (i32.add - (get_local $6) - (i32.const 16) - ) + (call $qa) + ) + (if + (i32.eq + (i32.load + (tee_local $3 + (i32.add + (get_local $6) + (i32.const 16) ) ) - (get_local $11) - ) - (i32.store - (get_local $3) - (get_local $22) - ) - (i32.store offset=20 - (get_local $6) - (get_local $22) ) + (get_local $11) ) - (br_if $do-once21 - (i32.eqz - (get_local $22) - ) + (i32.store + (get_local $3) + (get_local $22) + ) + (i32.store offset=20 + (get_local $6) + (get_local $22) ) ) - ) - (if - (i32.lt_u - (get_local $22) - (tee_local $3 - (i32.load - (i32.const 1224) - ) + (br_if $do-once21 + (i32.eqz + (get_local $22) ) ) - (call $qa) ) - (i32.store offset=24 + ) + (if + (i32.lt_u (get_local $22) - (get_local $6) + (tee_local $3 + (i32.load + (i32.const 1224) + ) + ) + ) + (call $qa) + ) + (i32.store offset=24 + (get_local $22) + (get_local $6) + ) + (if + (tee_local $10 + (i32.load offset=16 + (get_local $11) + ) ) (if - (tee_local $10 - (i32.load offset=16 - (get_local $11) - ) + (i32.lt_u + (get_local $10) + (get_local $3) ) - (if - (i32.lt_u + (call $qa) + (block + (i32.store offset=16 + (get_local $22) (get_local $10) - (get_local $3) ) - (call $qa) - (block - (i32.store offset=16 - (get_local $22) - (get_local $10) - ) - (i32.store offset=24 - (get_local $10) - (get_local $22) - ) + (i32.store offset=24 + (get_local $10) + (get_local $22) ) ) ) + ) + (if + (tee_local $10 + (i32.load offset=20 + (get_local $11) + ) + ) (if - (tee_local $10 - (i32.load offset=20 - (get_local $11) + (i32.lt_u + (get_local $10) + (i32.load + (i32.const 1224) ) ) - (if - (i32.lt_u + (call $qa) + (block + (i32.store offset=20 + (get_local $22) (get_local $10) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (i32.store offset=20 - (get_local $22) - (get_local $10) - ) - (i32.store offset=24 - (get_local $10) - (get_local $22) - ) + (i32.store offset=24 + (get_local $10) + (get_local $22) ) ) ) ) ) - (if - (i32.lt_u - (get_local $18) - (i32.const 16) - ) - (block - (i32.store offset=4 - (get_local $11) - (i32.or - (tee_local $6 - (i32.add - (get_local $18) - (get_local $0) - ) + ) + (if + (i32.lt_u + (get_local $18) + (i32.const 16) + ) + (block + (i32.store offset=4 + (get_local $11) + (i32.or + (tee_local $6 + (i32.add + (get_local $18) + (get_local $0) ) - (i32.const 3) ) + (i32.const 3) ) - (i32.store - (tee_local $10 + ) + (i32.store + (tee_local $10 + (i32.add (i32.add - (i32.add - (get_local $11) - (get_local $6) - ) - (i32.const 4) + (get_local $11) + (get_local $6) ) + (i32.const 4) ) - (i32.or - (i32.load - (get_local $10) - ) - (i32.const 1) + ) + (i32.or + (i32.load + (get_local $10) ) + (i32.const 1) ) ) - (block $do-once25 - (i32.store offset=4 - (get_local $11) - (i32.or - (get_local $0) - (i32.const 3) - ) + ) + (block $do-once25 + (i32.store offset=4 + (get_local $11) + (i32.or + (get_local $0) + (i32.const 3) + ) + ) + (i32.store offset=4 + (get_local $9) + (i32.or + (get_local $18) + (i32.const 1) ) - (i32.store offset=4 + ) + (i32.store + (i32.add (get_local $9) - (i32.or - (get_local $18) - (i32.const 1) - ) + (get_local $18) ) - (i32.store - (i32.add - (get_local $9) - (get_local $18) - ) + (get_local $18) + ) + (set_local $10 + (i32.shr_u (get_local $18) + (i32.const 3) ) - (set_local $10 - (i32.shr_u - (get_local $18) - (i32.const 3) - ) + ) + (if + (i32.lt_u + (get_local $18) + (i32.const 256) ) - (if - (i32.lt_u - (get_local $18) - (i32.const 256) + (block + (set_local $6 + (i32.add + (i32.shl + (get_local $10) + (i32.const 3) + ) + (i32.const 1248) + ) ) - (block - (set_local $6 - (i32.add + (if + (i32.and + (tee_local $3 + (i32.load + (i32.const 1208) + ) + ) + (tee_local $2 (i32.shl + (i32.const 1) (get_local $10) - (i32.const 3) ) - (i32.const 1248) ) ) (if - (i32.and + (i32.lt_u (tee_local $3 (i32.load - (i32.const 1208) - ) - ) - (tee_local $2 - (i32.shl - (i32.const 1) - (get_local $10) - ) - ) - ) - (if - (i32.lt_u - (tee_local $3 - (i32.load - (tee_local $2 - (i32.add - (get_local $6) - (i32.const 8) - ) + (tee_local $2 + (i32.add + (get_local $6) + (i32.const 8) ) ) ) - (i32.load - (i32.const 1224) - ) ) - (call $qa) - (block - (set_local $19 - (get_local $2) - ) - (set_local $7 - (get_local $3) - ) + (i32.load + (i32.const 1224) ) ) + (call $qa) (block - (i32.store - (i32.const 1208) - (i32.or - (get_local $3) - (get_local $2) - ) - ) (set_local $19 - (i32.add - (get_local $6) - (i32.const 8) - ) + (get_local $2) ) (set_local $7 - (get_local $6) + (get_local $3) ) ) ) - (i32.store - (get_local $19) - (get_local $9) - ) - (i32.store offset=12 - (get_local $7) - (get_local $9) - ) - (i32.store offset=8 - (get_local $9) - (get_local $7) - ) - (i32.store offset=12 - (get_local $9) - (get_local $6) + (block + (i32.store + (i32.const 1208) + (i32.or + (get_local $3) + (get_local $2) + ) + ) + (set_local $19 + (i32.add + (get_local $6) + (i32.const 8) + ) + ) + (set_local $7 + (get_local $6) + ) ) - (br $do-once25) ) + (i32.store + (get_local $19) + (get_local $9) + ) + (i32.store offset=12 + (get_local $7) + (get_local $9) + ) + (i32.store offset=8 + (get_local $9) + (get_local $7) + ) + (i32.store offset=12 + (get_local $9) + (get_local $6) + ) + (br $do-once25) ) - (set_local $13 - (i32.add - (i32.shl - (tee_local $3 + ) + (set_local $13 + (i32.add + (i32.shl + (tee_local $3 + (if (result i32) + (tee_local $6 + (i32.shr_u + (get_local $18) + (i32.const 8) + ) + ) (if (result i32) - (tee_local $6 - (i32.shr_u - (get_local $18) - (i32.const 8) - ) + (i32.gt_u + (get_local $18) + (i32.const 16777215) ) - (if (result i32) - (i32.gt_u - (get_local $18) - (i32.const 16777215) - ) - (i32.const 31) - (i32.or - (i32.and - (i32.shr_u - (get_local $18) - (i32.add - (tee_local $13 - (i32.add - (i32.sub - (i32.const 14) + (i32.const 31) + (i32.or + (i32.and + (i32.shr_u + (get_local $18) + (i32.add + (tee_local $13 + (i32.add + (i32.sub + (i32.const 14) + (i32.or (i32.or - (i32.or - (tee_local $6 - (i32.and - (i32.shr_u - (i32.add - (tee_local $2 - (i32.shl - (get_local $6) - (tee_local $3 - (i32.and - (i32.shr_u - (i32.add - (get_local $6) - (i32.const 1048320) - ) - (i32.const 16) + (tee_local $6 + (i32.and + (i32.shr_u + (i32.add + (tee_local $2 + (i32.shl + (get_local $6) + (tee_local $3 + (i32.and + (i32.shr_u + (i32.add + (get_local $6) + (i32.const 1048320) ) - (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) ) - (get_local $3) ) - (tee_local $2 - (i32.and - (i32.shr_u - (i32.add - (tee_local $10 - (i32.shl - (get_local $2) - (get_local $6) - ) + (get_local $3) + ) + (tee_local $2 + (i32.and + (i32.shr_u + (i32.add + (tee_local $10 + (i32.shl + (get_local $2) + (get_local $6) ) - (i32.const 245760) ) - (i32.const 16) + (i32.const 245760) ) - (i32.const 2) + (i32.const 16) ) + (i32.const 2) ) ) ) - (i32.shr_u - (i32.shl - (get_local $10) - (get_local $2) - ) - (i32.const 15) + ) + (i32.shr_u + (i32.shl + (get_local $10) + (get_local $2) ) + (i32.const 15) ) ) - (i32.const 7) ) + (i32.const 7) ) - (i32.const 1) - ) - (i32.shl - (get_local $13) - (i32.const 1) ) + (i32.const 1) + ) + (i32.shl + (get_local $13) + (i32.const 1) ) ) - (i32.const 0) ) + (i32.const 0) ) - (i32.const 2) ) - (i32.const 1512) + (i32.const 2) ) + (i32.const 1512) ) - (i32.store offset=28 - (get_local $9) - (get_local $3) + ) + (i32.store offset=28 + (get_local $9) + (get_local $3) + ) + (i32.store offset=4 + (tee_local $2 + (i32.add + (get_local $9) + (i32.const 16) + ) ) - (i32.store offset=4 - (tee_local $2 - (i32.add - (get_local $9) - (i32.const 16) + (i32.const 0) + ) + (i32.store + (get_local $2) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (tee_local $2 + (i32.load + (i32.const 1212) + ) + ) + (tee_local $10 + (i32.shl + (i32.const 1) + (get_local $3) + ) ) ) - (i32.const 0) ) - (i32.store - (get_local $2) - (i32.const 0) + (block + (i32.store + (i32.const 1212) + (i32.or + (get_local $2) + (get_local $10) + ) + ) + (i32.store + (get_local $13) + (get_local $9) + ) + (i32.store offset=24 + (get_local $9) + (get_local $13) + ) + (i32.store offset=12 + (get_local $9) + (get_local $9) + ) + (i32.store offset=8 + (get_local $9) + (get_local $9) + ) + (br $do-once25) ) - (if - (i32.eqz - (i32.and - (tee_local $2 - (i32.load - (i32.const 1212) - ) + ) + (set_local $10 + (i32.shl + (get_local $18) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (get_local $3) + (i32.const 1) ) - (tee_local $10 - (i32.shl - (i32.const 1) - (get_local $3) + ) + (i32.eq + (get_local $3) + (i32.const 31) + ) + ) + ) + ) + (set_local $2 + (i32.load + (get_local $13) + ) + ) + (if + (i32.eq + (tee_local $8 + (loop $while-in28 (result i32) + (block $while-out27 (result i32) + (if + (i32.eq + (i32.and + (i32.load offset=4 + (get_local $2) + ) + (i32.const -8) + ) + (get_local $18) + ) + (block + (set_local $17 + (get_local $2) + ) + (br $while-out27 + (i32.const 148) + ) + ) + ) + (if (result i32) + (tee_local $3 + (i32.load + (tee_local $13 + (i32.add + (i32.add + (get_local $2) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (get_local $10) + (i32.const 31) + ) + (i32.const 2) + ) + ) + ) + ) + ) + (block + (set_local $10 + (i32.shl + (get_local $10) + (i32.const 1) + ) + ) + (set_local $2 + (get_local $3) + ) + (br $while-in28) + ) + (block (result i32) + (set_local $21 + (get_local $13) + ) + (set_local $15 + (get_local $2) + ) + (i32.const 145) + ) ) ) ) ) - (block - (i32.store - (i32.const 1212) - (i32.or - (get_local $2) - (get_local $10) - ) + (i32.const 145) + ) + (if + (i32.lt_u + (get_local $21) + (i32.load + (i32.const 1224) ) + ) + (call $qa) + (block (i32.store - (get_local $13) + (get_local $21) (get_local $9) ) (i32.store offset=24 (get_local $9) - (get_local $13) + (get_local $15) ) (i32.store offset=12 (get_local $9) @@ -2596,209 +2718,87 @@ (get_local $9) (get_local $9) ) - (br $do-once25) - ) - ) - (set_local $10 - (i32.shl - (get_local $18) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (get_local $3) - (i32.const 1) - ) - ) - (i32.eq - (get_local $3) - (i32.const 31) - ) - ) - ) - ) - (set_local $2 - (i32.load - (get_local $13) ) ) (if (i32.eq - (tee_local $8 - (loop $while-in28 (result i32) - (block $while-out27 (result i32) - (if - (i32.eq - (i32.and - (i32.load offset=4 - (get_local $2) - ) - (i32.const -8) - ) - (get_local $18) - ) - (block - (set_local $17 - (get_local $2) - ) - (br $while-out27 - (i32.const 148) + (get_local $8) + (i32.const 148) + ) + (if + (i32.and + (i32.ge_u + (tee_local $10 + (i32.load + (tee_local $2 + (i32.add + (get_local $17) + (i32.const 8) ) ) ) - (if (result i32) - (tee_local $3 - (i32.load - (tee_local $13 - (i32.add - (i32.add - (get_local $2) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (get_local $10) - (i32.const 31) - ) - (i32.const 2) - ) - ) - ) - ) - ) - (block - (set_local $10 - (i32.shl - (get_local $10) - (i32.const 1) - ) - ) - (set_local $2 - (get_local $3) - ) - (br $while-in28) - ) - (block (result i32) - (set_local $21 - (get_local $13) - ) - (set_local $15 - (get_local $2) - ) - (i32.const 145) - ) + ) + (tee_local $3 + (i32.load + (i32.const 1224) ) ) ) - ) - (i32.const 145) - ) - (if - (i32.lt_u - (get_local $21) - (i32.load - (i32.const 1224) + (i32.ge_u + (get_local $17) + (get_local $3) ) ) - (call $qa) (block + (i32.store offset=12 + (get_local $10) + (get_local $9) + ) (i32.store - (get_local $21) + (get_local $2) (get_local $9) ) - (i32.store offset=24 + (i32.store offset=8 (get_local $9) - (get_local $15) + (get_local $10) ) (i32.store offset=12 (get_local $9) - (get_local $9) + (get_local $17) ) - (i32.store offset=8 - (get_local $9) + (i32.store offset=24 (get_local $9) + (i32.const 0) ) ) - ) - (if - (i32.eq - (get_local $8) - (i32.const 148) - ) - (if - (i32.and - (i32.ge_u - (tee_local $10 - (i32.load - (tee_local $2 - (i32.add - (get_local $17) - (i32.const 8) - ) - ) - ) - ) - (tee_local $3 - (i32.load - (i32.const 1224) - ) - ) - ) - (i32.ge_u - (get_local $17) - (get_local $3) - ) - ) - (block - (i32.store offset=12 - (get_local $10) - (get_local $9) - ) - (i32.store - (get_local $2) - (get_local $9) - ) - (i32.store offset=8 - (get_local $9) - (get_local $10) - ) - (i32.store offset=12 - (get_local $9) - (get_local $17) - ) - (i32.store offset=24 - (get_local $9) - (i32.const 0) - ) - ) - (call $qa) - ) + (call $qa) ) ) ) ) - (set_global $r - (get_local $25) - ) - (return - (i32.add - (get_local $11) - (i32.const 8) - ) + ) + (set_global $r + (get_local $25) + ) + (return + (i32.add + (get_local $11) + (i32.const 8) ) ) - (get_local $0) ) (get_local $0) ) + (get_local $0) ) - (get_local $0) ) + (get_local $0) ) ) ) ) + ) + (block $folding-inner0 (if (i32.ge_u (tee_local $11 |