-
-
Save fengb/be916b5fede576d8066fcb20b684e3c0 to your computer and use it in GitHub Desktop.
WASI libc stuff
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdlib.h> | |
int main() { | |
return 0; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pub fn main() {} | |
// empty.wasm:0001e2b: error: type mismatch in call, expected [i32, i32, i32] but got [i32, i32] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(module | |
(type (;0;) (func (param i32) (result i32))) | |
(type (;1;) (func (param i32 i32) (result i32))) | |
(type (;2;) (func (param i32 i32 i32) (result i32))) | |
(type (;3;) (func (param i32))) | |
(type (;4;) (func (param i32 i32 i32 i32 i32 i64 i64 i32 i32) (result i32))) | |
(type (;5;) (func (param i32 i32 i32 i32 i32) (result i32))) | |
(type (;6;) (func (param i32 i32 i32 i32 i32 i32) (result i32))) | |
(type (;7;) (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) | |
(type (;8;) (func (param i32 i32 i32 i64 i32) (result i32))) | |
(type (;9;) (func)) | |
(type (;10;) (func (result i32))) | |
(type (;11;) (func (param i32 i32))) | |
(type (;12;) (func (param i32 i32 i32 i32) (result i32))) | |
(type (;13;) (func (param i32 i32 i64 i64))) | |
(type (;14;) (func (param i32 i64 i64 i32) (result i32))) | |
(type (;15;) (func (param i32 i32 i32 i32))) | |
(type (;16;) (func (param i32 i32 i32 i32 i32 i32 i32))) | |
(import "wasi_unstable" "fd_prestat_get" (func $__wasi_fd_prestat_get (type 1))) | |
(import "wasi_unstable" "fd_prestat_dir_name" (func $__wasi_fd_prestat_dir_name (type 2))) | |
(import "wasi_unstable" "environ_sizes_get" (func $__wasi_environ_sizes_get (type 1))) | |
(import "wasi_unstable" "environ_get" (func $__wasi_environ_get (type 1))) | |
(import "wasi_unstable" "args_sizes_get" (func $__wasi_args_sizes_get (type 1))) | |
(import "wasi_unstable" "args_get" (func $__wasi_args_get (type 1))) | |
(import "wasi_unstable" "proc_exit" (func $__wasi_proc_exit (type 3))) | |
(import "wasi_unstable" "fd_fdstat_get" (func $__wasi_fd_fdstat_get (type 1))) | |
(import "wasi_unstable" "path_open" (func $__wasi_path_open (type 4))) | |
(import "wasi_unstable" "path_filestat_get" (func $__wasi_path_filestat_get (type 5))) | |
(import "wasi_unstable" "path_rename" (func $__wasi_path_rename (type 6))) | |
(import "wasi_unstable" "path_unlink_file" (func $__wasi_path_unlink_file (type 2))) | |
(import "wasi_unstable" "path_remove_directory" (func $__wasi_path_remove_directory (type 2))) | |
(import "wasi_unstable" "path_link" (func $__wasi_path_link (type 7))) | |
(import "wasi_unstable" "path_create_directory" (func $__wasi_path_create_directory (type 2))) | |
(import "wasi_unstable" "fd_readdir" (func $__wasi_fd_readdir (type 8))) | |
(import "wasi_unstable" "fd_close" (func $__wasi_fd_close (type 0))) | |
(import "wasi_unstable" "path_readlink" (func $__wasi_path_readlink (type 6))) | |
(import "wasi_unstable" "path_symlink" (func $__wasi_path_symlink (type 5))) | |
(func $__wasm_call_ctors (type 9)) | |
(func $__original_main (type 10) (result i32) | |
(local i32 i32 i32 i32) | |
global.get 0 | |
local.set 0 | |
i32.const 16 | |
local.set 1 | |
local.get 0 | |
local.get 1 | |
i32.sub | |
local.set 2 | |
i32.const 0 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.store offset=12 | |
local.get 3 | |
return) | |
(func $main (type 1) (param i32 i32) (result i32) | |
(local i32) | |
call $__original_main | |
local.set 2 | |
local.get 2 | |
return) | |
(func $_start (type 9) | |
(local i32 i32 i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 0 | |
global.set 0 | |
call $__wasilibc_init_preopen | |
i32.const 3 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
loop ;; label = @5 | |
local.get 1 | |
local.get 0 | |
call $__wasi_fd_prestat_get | |
local.tee 2 | |
i32.const 8 | |
i32.eq | |
br_if 1 (;@4;) | |
local.get 2 | |
br_if 3 (;@2;) | |
block ;; label = @6 | |
local.get 0 | |
i32.load8_u | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.add | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 4 (;@2;) | |
local.get 1 | |
local.get 2 | |
local.get 0 | |
i32.load offset=4 | |
call $__wasi_fd_prestat_dir_name | |
br_if 3 (;@3;) | |
local.get 2 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
i32.const 0 | |
i32.store8 | |
local.get 1 | |
local.get 2 | |
call $__wasilibc_register_preopened_fd | |
local.set 3 | |
local.get 2 | |
call $free | |
local.get 3 | |
br_if 4 (;@2;) | |
end | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 1 | |
br_if 0 (;@5;) | |
end | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 0 | |
local.get 0 | |
i32.const 12 | |
i32.add | |
call $__wasi_environ_sizes_get | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@5;) | |
i32.const 0 | |
local.get 1 | |
i32.const 2 | |
i32.shl | |
i32.const 4 | |
i32.add | |
call $malloc | |
i32.store offset=1528 | |
local.get 0 | |
i32.load offset=12 | |
call $malloc | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@6;) | |
i32.const 0 | |
i32.load offset=1528 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 2 | |
local.get 0 | |
i32.load | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.const 0 | |
i32.store | |
i32.const 0 | |
i32.load offset=1528 | |
local.get 1 | |
call $__wasi_environ_get | |
i32.eqz | |
br_if 2 (;@4;) | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1528 | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 0 | |
i32.const 12 | |
i32.add | |
local.get 0 | |
call $__wasi_args_sizes_get | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@5;) | |
local.get 1 | |
i32.const 2 | |
i32.shl | |
call $malloc | |
local.set 1 | |
local.get 0 | |
i32.load | |
call $malloc | |
local.set 2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 1 | |
local.get 2 | |
call $__wasi_args_get | |
i32.eqz | |
br_if 2 (;@4;) | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
end | |
call $__wasm_call_ctors | |
local.get 0 | |
i32.load offset=12 | |
local.get 1 | |
call $main | |
local.set 1 | |
call $__prepare_for_exit | |
local.get 1 | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
return | |
end | |
local.get 2 | |
call $free | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
local.get 1 | |
call $_Exit | |
unreachable) | |
(func $malloc (type 0) (param i32) (result i32) | |
local.get 0 | |
call $dlmalloc) | |
(func $dlmalloc (type 0) (param i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
block ;; label = @17 | |
block ;; label = @18 | |
block ;; label = @19 | |
block ;; label = @20 | |
block ;; label = @21 | |
block ;; label = @22 | |
block ;; label = @23 | |
block ;; label = @24 | |
block ;; label = @25 | |
block ;; label = @26 | |
block ;; label = @27 | |
block ;; label = @28 | |
block ;; label = @29 | |
block ;; label = @30 | |
block ;; label = @31 | |
block ;; label = @32 | |
block ;; label = @33 | |
block ;; label = @34 | |
block ;; label = @35 | |
block ;; label = @36 | |
block ;; label = @37 | |
block ;; label = @38 | |
local.get 0 | |
i32.const 244 | |
i32.gt_u | |
br_if 0 (;@38;) | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 2 | |
i32.const 16 | |
local.get 0 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.tee 3 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@37;) | |
local.get 0 | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 4 | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
local.tee 6 | |
i32.const 1072 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 6 | |
i32.const 1064 | |
i32.add | |
local.tee 6 | |
i32.eq | |
br_if 2 (;@36;) | |
local.get 3 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.get 3 | |
i32.store | |
br 3 (;@35;) | |
end | |
i32.const -1 | |
local.set 3 | |
local.get 0 | |
i32.const -65 | |
i32.gt_u | |
br_if 14 (;@23;) | |
local.get 0 | |
i32.const 11 | |
i32.add | |
local.tee 0 | |
i32.const -8 | |
i32.and | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 7 | |
i32.eqz | |
br_if 14 (;@23;) | |
i32.const 0 | |
local.set 8 | |
block ;; label = @38 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@38;) | |
i32.const 31 | |
local.set 8 | |
local.get 3 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@38;) | |
local.get 3 | |
i32.const 14 | |
local.get 0 | |
local.get 0 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 0 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 4 | |
i32.or | |
local.get 0 | |
local.get 5 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 8 | |
end | |
i32.const 0 | |
local.get 3 | |
i32.sub | |
local.set 5 | |
local.get 8 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 3 (;@34;) | |
local.get 3 | |
i32.const 0 | |
i32.const 25 | |
local.get 8 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 8 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 6 | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 9 | |
loop ;; label = @38 | |
block ;; label = @39 | |
local.get 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 5 | |
i32.ge_u | |
br_if 0 (;@39;) | |
local.get 2 | |
local.set 5 | |
local.get 4 | |
local.set 9 | |
local.get 2 | |
i32.eqz | |
br_if 8 (;@31;) | |
end | |
local.get 0 | |
local.get 4 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
local.get 2 | |
local.get 4 | |
local.get 6 | |
i32.const 29 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eq | |
select | |
local.get 0 | |
local.get 2 | |
select | |
local.set 0 | |
local.get 6 | |
local.get 4 | |
i32.const 0 | |
i32.ne | |
i32.shl | |
local.set 6 | |
local.get 4 | |
br_if 0 (;@38;) | |
end | |
local.get 0 | |
local.get 9 | |
i32.or | |
i32.eqz | |
br_if 4 (;@33;) | |
br 11 (;@26;) | |
end | |
local.get 3 | |
i32.const 0 | |
i32.load offset=1032 | |
local.tee 7 | |
i32.le_u | |
br_if 13 (;@23;) | |
local.get 0 | |
i32.eqz | |
br_if 4 (;@32;) | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 2 | |
local.get 4 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
i32.and | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 5 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
local.tee 6 | |
i32.const 1072 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 6 | |
i32.const 1064 | |
i32.add | |
local.tee 6 | |
i32.eq | |
br_if 6 (;@30;) | |
local.get 0 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i32.store | |
br 7 (;@29;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
end | |
local.get 4 | |
local.get 5 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.add | |
local.tee 4 | |
local.get 4 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 33 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 9 | |
i32.const 0 | |
i32.const 0 | |
i32.or | |
br_if 7 (;@26;) | |
end | |
i32.const 2 | |
local.get 8 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
local.get 7 | |
i32.and | |
local.tee 0 | |
i32.eqz | |
br_if 9 (;@23;) | |
local.get 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 6 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
i32.load | |
local.tee 0 | |
br_if 7 (;@25;) | |
br 8 (;@24;) | |
end | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 10 | |
i32.eqz | |
br_if 8 (;@23;) | |
local.get 10 | |
i32.const 0 | |
local.get 10 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 5 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
i32.load | |
local.tee 6 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.set 5 | |
local.get 6 | |
local.tee 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@28;) | |
i32.const 1 | |
local.set 4 | |
br 4 (;@27;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 4 | |
local.set 9 | |
local.get 4 | |
local.set 0 | |
br 5 (;@25;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
local.tee 2 | |
i32.store offset=1024 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.add | |
local.get 5 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @29 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@29;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 9 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1044 | |
local.set 4 | |
block ;; label = @30 | |
block ;; label = @31 | |
local.get 2 | |
i32.const 1 | |
local.get 9 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 0 (;@31;) | |
local.get 3 | |
i32.load offset=8 | |
local.set 9 | |
br 1 (;@30;) | |
end | |
i32.const 0 | |
local.get 2 | |
local.get 9 | |
i32.or | |
i32.store offset=1024 | |
local.get 3 | |
local.set 9 | |
end | |
local.get 9 | |
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 9 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1044 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1032 | |
br 27 (;@1;) | |
end | |
i32.const 0 | |
local.set 4 | |
end | |
block ;; label = @27 | |
block ;; label = @28 | |
loop ;; label = @29 | |
block ;; label = @30 | |
block ;; label = @31 | |
block ;; label = @32 | |
block ;; label = @33 | |
local.get 4 | |
br_table 1 (;@32;) 0 (;@33;) 0 (;@33;) | |
end | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 4 | |
local.get 5 | |
local.get 4 | |
local.get 5 | |
i32.lt_u | |
local.tee 4 | |
select | |
local.set 5 | |
local.get 0 | |
local.get 6 | |
local.get 4 | |
select | |
local.set 6 | |
local.get 0 | |
local.tee 9 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 1 (;@31;) | |
i32.const 0 | |
local.set 4 | |
br 3 (;@29;) | |
end | |
local.get 9 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
br_if 1 (;@30;) | |
local.get 6 | |
local.get 3 | |
i32.add | |
local.tee 11 | |
local.get 6 | |
i32.le_u | |
br_if 8 (;@23;) | |
local.get 6 | |
i32.load offset=24 | |
local.set 12 | |
block ;; label = @32 | |
local.get 6 | |
i32.load offset=12 | |
local.tee 9 | |
local.get 6 | |
i32.eq | |
br_if 0 (;@32;) | |
local.get 6 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 9 | |
i32.store offset=12 | |
local.get 9 | |
local.get 0 | |
i32.store offset=8 | |
local.get 12 | |
br_if 4 (;@28;) | |
br 5 (;@27;) | |
end | |
block ;; label = @32 | |
block ;; label = @33 | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@33;) | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@32;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
end | |
loop ;; label = @33 | |
local.get 4 | |
local.set 8 | |
local.get 0 | |
local.tee 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@33;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@33;) | |
end | |
local.get 8 | |
i32.const 0 | |
i32.store | |
local.get 12 | |
i32.eqz | |
br_if 5 (;@27;) | |
br 4 (;@28;) | |
end | |
i32.const 0 | |
local.set 9 | |
local.get 12 | |
br_if 3 (;@28;) | |
br 4 (;@27;) | |
end | |
i32.const 1 | |
local.set 4 | |
br 1 (;@29;) | |
end | |
i32.const 1 | |
local.set 4 | |
br 0 (;@29;) | |
end | |
end | |
block ;; label = @28 | |
block ;; label = @29 | |
block ;; label = @30 | |
local.get 6 | |
local.get 6 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.eq | |
br_if 0 (;@30;) | |
local.get 12 | |
i32.const 16 | |
i32.const 20 | |
local.get 12 | |
i32.load offset=16 | |
local.get 6 | |
i32.eq | |
select | |
i32.add | |
local.get 9 | |
i32.store | |
local.get 9 | |
br_if 1 (;@29;) | |
br 3 (;@27;) | |
end | |
local.get 0 | |
local.get 9 | |
i32.store | |
local.get 9 | |
i32.eqz | |
br_if 1 (;@28;) | |
end | |
local.get 9 | |
local.get 12 | |
i32.store offset=24 | |
block ;; label = @29 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@29;) | |
local.get 9 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 9 | |
i32.store offset=24 | |
end | |
local.get 6 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@27;) | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 9 | |
i32.store offset=24 | |
br 1 (;@27;) | |
end | |
i32.const 0 | |
local.get 10 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
block ;; label = @27 | |
block ;; label = @28 | |
local.get 5 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@28;) | |
local.get 6 | |
local.get 5 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@27;) | |
end | |
local.get 11 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 11 | |
local.get 5 | |
i32.add | |
local.get 5 | |
i32.store | |
block ;; label = @28 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@28;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1044 | |
local.set 0 | |
block ;; label = @29 | |
block ;; label = @30 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 3 | |
local.get 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@30;) | |
local.get 4 | |
i32.load offset=8 | |
local.set 3 | |
br 1 (;@29;) | |
end | |
i32.const 0 | |
local.get 3 | |
local.get 2 | |
i32.or | |
i32.store offset=1024 | |
local.get 4 | |
local.set 3 | |
end | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 3 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 11 | |
i32.store offset=1044 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1032 | |
end | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 25 (;@1;) | |
end | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@24;) | |
end | |
loop ;; label = @25 | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 5 | |
i32.lt_u | |
local.set 6 | |
block ;; label = @26 | |
local.get 0 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@26;) | |
local.get 0 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.set 4 | |
end | |
local.get 2 | |
local.get 5 | |
local.get 6 | |
select | |
local.set 5 | |
local.get 0 | |
local.get 9 | |
local.get 6 | |
select | |
local.set 9 | |
local.get 4 | |
local.set 0 | |
local.get 4 | |
br_if 0 (;@25;) | |
end | |
end | |
local.get 9 | |
i32.eqz | |
br_if 0 (;@23;) | |
local.get 5 | |
i32.const 0 | |
i32.load offset=1032 | |
local.get 3 | |
i32.sub | |
i32.ge_u | |
br_if 0 (;@23;) | |
local.get 9 | |
local.get 3 | |
i32.add | |
local.tee 8 | |
local.get 9 | |
i32.le_u | |
br_if 0 (;@23;) | |
local.get 9 | |
i32.load offset=24 | |
local.set 10 | |
local.get 9 | |
i32.load offset=12 | |
local.tee 6 | |
local.get 9 | |
i32.eq | |
br_if 1 (;@22;) | |
local.get 9 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
local.get 0 | |
i32.store offset=8 | |
local.get 10 | |
br_if 20 (;@3;) | |
br 21 (;@2;) | |
end | |
block ;; label = @23 | |
block ;; label = @24 | |
block ;; label = @25 | |
block ;; label = @26 | |
block ;; label = @27 | |
block ;; label = @28 | |
i32.const 0 | |
i32.load offset=1032 | |
local.tee 0 | |
local.get 3 | |
i32.ge_u | |
br_if 0 (;@28;) | |
i32.const 0 | |
i32.load offset=1036 | |
local.tee 6 | |
local.get 3 | |
i32.le_u | |
br_if 1 (;@27;) | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 0 | |
local.get 3 | |
i32.add | |
local.tee 4 | |
local.get 6 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1036 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1048 | |
local.get 0 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 27 (;@1;) | |
end | |
i32.const 0 | |
i32.load offset=1044 | |
local.set 4 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.const 16 | |
i32.lt_u | |
br_if 1 (;@26;) | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1032 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1044 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
br 2 (;@25;) | |
end | |
i32.const 0 | |
i32.load offset=1496 | |
i32.eqz | |
br_if 2 (;@24;) | |
i32.const 0 | |
i32.load offset=1504 | |
local.set 4 | |
br 3 (;@23;) | |
end | |
local.get 4 | |
local.get 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1044 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1032 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 23 (;@1;) | |
end | |
i32.const 0 | |
i64.const -1 | |
i64.store offset=1508 align=4 | |
i32.const 0 | |
i64.const 281474976776192 | |
i64.store offset=1500 align=4 | |
i32.const 0 | |
local.get 1 | |
i32.const 12 | |
i32.add | |
i32.const -16 | |
i32.and | |
i32.const 1431655768 | |
i32.xor | |
i32.store offset=1496 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1516 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1468 | |
i32.const 65536 | |
local.set 4 | |
end | |
i32.const 0 | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 47 | |
i32.add | |
local.tee 7 | |
i32.add | |
local.tee 2 | |
i32.const 0 | |
local.get 4 | |
i32.sub | |
local.tee 8 | |
i32.and | |
local.tee 9 | |
local.get 3 | |
i32.le_u | |
br_if 21 (;@1;) | |
i32.const 0 | |
local.set 0 | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1464 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 0 | |
i32.load offset=1456 | |
local.tee 5 | |
local.get 9 | |
i32.add | |
local.tee 10 | |
local.get 5 | |
i32.le_u | |
br_if 22 (;@1;) | |
local.get 10 | |
local.get 4 | |
i32.gt_u | |
br_if 22 (;@1;) | |
end | |
i32.const 0 | |
i32.load8_u offset=1468 | |
i32.const 4 | |
i32.and | |
br_if 8 (;@14;) | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 1472 | |
local.set 0 | |
loop ;; label = @24 | |
block ;; label = @25 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@25;) | |
local.get 5 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.get 4 | |
i32.gt_u | |
br_if 4 (;@21;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@24;) | |
end | |
end | |
i32.const 0 | |
call $sbrk | |
local.tee 6 | |
i32.const -1 | |
i32.eq | |
br_if 7 (;@15;) | |
local.get 9 | |
local.set 2 | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1500 | |
local.tee 0 | |
i32.const -1 | |
i32.add | |
local.tee 4 | |
local.get 6 | |
i32.and | |
i32.eqz | |
br_if 0 (;@23;) | |
local.get 9 | |
local.get 6 | |
i32.sub | |
local.get 4 | |
local.get 6 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.add | |
local.set 2 | |
end | |
local.get 2 | |
local.get 3 | |
i32.le_u | |
br_if 7 (;@15;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 7 (;@15;) | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1464 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 0 | |
i32.load offset=1456 | |
local.tee 4 | |
local.get 2 | |
i32.add | |
local.tee 5 | |
local.get 4 | |
i32.le_u | |
br_if 8 (;@15;) | |
local.get 5 | |
local.get 0 | |
i32.gt_u | |
br_if 8 (;@15;) | |
end | |
local.get 2 | |
call $sbrk | |
local.tee 0 | |
local.get 6 | |
i32.ne | |
br_if 2 (;@20;) | |
br 9 (;@13;) | |
end | |
block ;; label = @22 | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@22;) | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@19;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
end | |
loop ;; label = @22 | |
local.get 4 | |
local.set 2 | |
local.get 0 | |
local.tee 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@22;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@22;) | |
end | |
local.get 2 | |
i32.const 0 | |
i32.store | |
local.get 10 | |
i32.eqz | |
br_if 19 (;@2;) | |
br 18 (;@3;) | |
end | |
local.get 2 | |
local.get 6 | |
i32.sub | |
local.get 8 | |
i32.and | |
local.tee 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 5 (;@15;) | |
local.get 2 | |
call $sbrk | |
local.tee 6 | |
local.get 0 | |
i32.load | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
i32.eq | |
br_if 3 (;@17;) | |
local.get 6 | |
local.set 0 | |
end | |
local.get 0 | |
local.set 6 | |
local.get 3 | |
i32.const 48 | |
i32.add | |
local.get 2 | |
i32.le_u | |
br_if 1 (;@18;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 1 (;@18;) | |
local.get 6 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@18;) | |
local.get 7 | |
local.get 2 | |
i32.sub | |
i32.const 0 | |
i32.load offset=1504 | |
local.tee 0 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
local.tee 0 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 6 (;@13;) | |
local.get 0 | |
call $sbrk | |
i32.const -1 | |
i32.eq | |
br_if 3 (;@16;) | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.set 2 | |
br 6 (;@13;) | |
end | |
i32.const 0 | |
local.set 6 | |
local.get 10 | |
br_if 15 (;@3;) | |
br 16 (;@2;) | |
end | |
local.get 6 | |
i32.const -1 | |
i32.ne | |
br_if 4 (;@13;) | |
br 2 (;@15;) | |
end | |
local.get 6 | |
i32.const -1 | |
i32.ne | |
br_if 3 (;@13;) | |
br 1 (;@15;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.sub | |
call $sbrk | |
drop | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1468 | |
i32.const 4 | |
i32.or | |
i32.store offset=1468 | |
end | |
local.get 9 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 1 (;@12;) | |
local.get 9 | |
call $sbrk | |
local.tee 6 | |
i32.const 0 | |
call $sbrk | |
local.tee 0 | |
i32.ge_u | |
br_if 1 (;@12;) | |
local.get 6 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
local.get 6 | |
i32.sub | |
local.tee 2 | |
local.get 3 | |
i32.const 40 | |
i32.add | |
i32.le_u | |
br_if 1 (;@12;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1456 | |
local.get 2 | |
i32.add | |
local.tee 0 | |
i32.store offset=1456 | |
block ;; label = @13 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1460 | |
i32.le_u | |
br_if 0 (;@13;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1460 | |
end | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@16;) | |
i32.const 1472 | |
local.set 0 | |
loop ;; label = @17 | |
local.get 6 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 9 | |
i32.add | |
i32.eq | |
br_if 2 (;@15;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@17;) | |
br 3 (;@14;) | |
end | |
end | |
block ;; label = @16 | |
block ;; label = @17 | |
i32.const 0 | |
i32.load offset=1040 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@17;) | |
local.get 6 | |
local.get 0 | |
i32.ge_u | |
br_if 1 (;@16;) | |
end | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1040 | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1476 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1472 | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1056 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1496 | |
i32.store offset=1060 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1484 | |
loop ;; label = @16 | |
local.get 0 | |
i32.const 1072 | |
i32.add | |
local.get 0 | |
i32.const 1064 | |
i32.add | |
local.tee 4 | |
i32.store | |
local.get 0 | |
i32.const 1076 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.tee 0 | |
i32.const 256 | |
i32.ne | |
br_if 0 (;@16;) | |
end | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 0 | |
i32.add | |
local.tee 4 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 5 | |
local.get 0 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1512 | |
i32.store offset=1052 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1036 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1048 | |
local.get 6 | |
local.get 5 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
br 2 (;@13;) | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
br_if 0 (;@14;) | |
local.get 6 | |
local.get 4 | |
i32.le_u | |
br_if 0 (;@14;) | |
local.get 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 4 | |
i32.const -8 | |
local.get 4 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 5 | |
i32.add | |
local.tee 6 | |
i32.const 0 | |
i32.load offset=1036 | |
local.get 2 | |
i32.add | |
local.tee 8 | |
local.get 5 | |
i32.sub | |
local.tee 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
local.get 2 | |
i32.add | |
i32.store | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1512 | |
i32.store offset=1052 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1036 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1048 | |
local.get 4 | |
local.get 8 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
br 1 (;@13;) | |
end | |
block ;; label = @14 | |
local.get 6 | |
i32.const 0 | |
i32.load offset=1040 | |
i32.ge_u | |
br_if 0 (;@14;) | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1040 | |
end | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.set 5 | |
i32.const 1472 | |
local.set 0 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
block ;; label = @17 | |
block ;; label = @18 | |
block ;; label = @19 | |
block ;; label = @20 | |
block ;; label = @21 | |
loop ;; label = @22 | |
local.get 0 | |
i32.load | |
local.get 5 | |
i32.eq | |
br_if 1 (;@21;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@22;) | |
br 2 (;@20;) | |
end | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
br_if 0 (;@20;) | |
local.get 0 | |
local.get 6 | |
i32.store | |
local.get 0 | |
local.get 0 | |
i32.load offset=4 | |
local.get 2 | |
i32.add | |
i32.store offset=4 | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 2 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
i32.const -8 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 6 | |
local.get 2 | |
i32.sub | |
local.get 3 | |
i32.sub | |
local.set 0 | |
local.get 2 | |
local.get 3 | |
i32.add | |
local.set 5 | |
local.get 4 | |
local.get 6 | |
i32.eq | |
br_if 1 (;@19;) | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 6 | |
i32.eq | |
br_if 9 (;@11;) | |
local.get 6 | |
i32.load offset=4 | |
local.tee 4 | |
i32.const 3 | |
i32.and | |
i32.const 1 | |
i32.ne | |
br_if 15 (;@5;) | |
local.get 4 | |
i32.const -8 | |
i32.and | |
local.set 7 | |
local.get 4 | |
i32.const 255 | |
i32.gt_u | |
br_if 10 (;@10;) | |
local.get 6 | |
i32.load offset=12 | |
local.tee 3 | |
local.get 6 | |
i32.load offset=8 | |
local.tee 9 | |
i32.eq | |
br_if 11 (;@9;) | |
local.get 3 | |
local.get 9 | |
i32.store offset=8 | |
local.get 9 | |
local.get 3 | |
i32.store offset=12 | |
br 14 (;@6;) | |
end | |
i32.const 1472 | |
local.set 0 | |
block ;; label = @20 | |
loop ;; label = @21 | |
block ;; label = @22 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@22;) | |
local.get 5 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 2 (;@20;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 0 | |
br 0 (;@21;) | |
end | |
end | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 0 | |
i32.add | |
local.tee 8 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 9 | |
local.get 0 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 9 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.const 39 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const -39 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
i32.const -47 | |
i32.add | |
local.tee 9 | |
local.get 9 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
i32.lt_u | |
select | |
local.tee 9 | |
i32.const 27 | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1512 | |
i32.store offset=1052 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1036 | |
i32.const 0 | |
local.get 8 | |
i32.store offset=1048 | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.const 0 | |
i64.load offset=1480 align=4 | |
i64.store align=4 | |
local.get 9 | |
i32.const 0 | |
i64.load offset=1472 align=4 | |
i64.store offset=8 align=4 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1476 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1472 | |
i32.const 0 | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.store offset=1480 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1484 | |
local.get 9 | |
i32.const 28 | |
i32.add | |
local.set 0 | |
loop ;; label = @20 | |
local.get 0 | |
i32.const 7 | |
i32.store | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.tee 0 | |
local.get 5 | |
i32.lt_u | |
br_if 0 (;@20;) | |
end | |
local.get 9 | |
local.get 4 | |
i32.eq | |
br_if 6 (;@13;) | |
local.get 9 | |
i32.const 4 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 9 | |
local.get 9 | |
local.get 4 | |
i32.sub | |
local.tee 2 | |
i32.store | |
local.get 4 | |
local.get 2 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @20 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@20;) | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 6 | |
i32.const 1 | |
local.get 5 | |
i32.shl | |
local.tee 5 | |
i32.and | |
i32.eqz | |
br_if 2 (;@18;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 5 | |
br 3 (;@17;) | |
end | |
i32.const 0 | |
local.set 0 | |
block ;; label = @20 | |
local.get 2 | |
i32.const 8 | |
i32.shr_u | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@20;) | |
i32.const 31 | |
local.set 0 | |
local.get 2 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@20;) | |
local.get 2 | |
i32.const 14 | |
local.get 5 | |
local.get 5 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 5 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 5 | |
local.get 6 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 5 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 5 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 0 | |
end | |
local.get 4 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 28 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.set 5 | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 6 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 3 (;@16;) | |
local.get 2 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 5 | |
i32.load | |
local.set 6 | |
loop ;; label = @20 | |
local.get 6 | |
local.tee 5 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 2 | |
i32.eq | |
br_if 6 (;@14;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 6 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 5 | |
local.get 6 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 9 | |
i32.load | |
local.tee 6 | |
br_if 0 (;@20;) | |
end | |
local.get 9 | |
local.get 4 | |
i32.store | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 5 | |
i32.store | |
br 4 (;@15;) | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1048 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1036 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1036 | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 14 (;@4;) | |
end | |
i32.const 0 | |
local.get 6 | |
local.get 5 | |
i32.or | |
i32.store offset=1024 | |
local.get 0 | |
local.set 5 | |
end | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 4 | |
i32.store offset=8 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
br 3 (;@13;) | |
end | |
local.get 5 | |
local.get 4 | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 9 | |
i32.or | |
i32.store offset=1028 | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 5 | |
i32.store | |
end | |
local.get 4 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 4 | |
i32.store offset=8 | |
br 1 (;@13;) | |
end | |
local.get 5 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 5 | |
local.get 4 | |
i32.store offset=8 | |
local.get 4 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 4 | |
local.get 5 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.load offset=1036 | |
local.tee 0 | |
local.get 3 | |
i32.le_u | |
br_if 0 (;@12;) | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 4 | |
local.get 3 | |
i32.add | |
local.tee 5 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1036 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1048 | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 11 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1520 | |
br 10 (;@1;) | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1044 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1032 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1032 | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
br 6 (;@4;) | |
end | |
local.get 6 | |
i32.load offset=24 | |
local.set 10 | |
local.get 6 | |
i32.load offset=12 | |
local.tee 9 | |
local.get 6 | |
i32.eq | |
br_if 1 (;@8;) | |
local.get 6 | |
i32.load offset=8 | |
local.tee 4 | |
local.get 9 | |
i32.store offset=12 | |
local.get 9 | |
local.get 4 | |
i32.store offset=8 | |
local.get 10 | |
br_if 2 (;@7;) | |
br 3 (;@6;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 4 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
br 2 (;@6;) | |
end | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@9;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@8;) | |
end | |
loop ;; label = @9 | |
local.get 4 | |
local.set 8 | |
local.get 3 | |
local.tee 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@9;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 3 | |
br_if 0 (;@9;) | |
end | |
local.get 8 | |
i32.const 0 | |
i32.store | |
local.get 10 | |
i32.eqz | |
br_if 2 (;@6;) | |
br 1 (;@7;) | |
end | |
i32.const 0 | |
local.set 9 | |
local.get 10 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 6 | |
i32.load offset=28 | |
local.tee 3 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.get 6 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 10 | |
i32.const 16 | |
i32.const 20 | |
local.get 10 | |
i32.load offset=16 | |
local.get 6 | |
i32.eq | |
select | |
i32.add | |
local.get 9 | |
i32.store | |
local.get 9 | |
br_if 1 (;@8;) | |
br 3 (;@6;) | |
end | |
local.get 4 | |
local.get 9 | |
i32.store | |
local.get 9 | |
i32.eqz | |
br_if 1 (;@7;) | |
end | |
local.get 9 | |
local.get 10 | |
i32.store offset=24 | |
block ;; label = @8 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 9 | |
local.get 4 | |
i32.store offset=16 | |
local.get 4 | |
local.get 9 | |
i32.store offset=24 | |
end | |
local.get 6 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 4 | |
local.get 9 | |
i32.store offset=24 | |
br 1 (;@6;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 3 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
local.get 7 | |
local.get 0 | |
i32.add | |
local.set 0 | |
local.get 6 | |
local.get 7 | |
i32.add | |
local.set 6 | |
end | |
local.get 6 | |
local.get 6 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 3 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
br 2 (;@8;) | |
end | |
i32.const 0 | |
local.set 4 | |
block ;; label = @10 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@10;) | |
i32.const 31 | |
local.set 4 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 0 | |
i32.const 14 | |
local.get 3 | |
local.get 3 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 3 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 6 | |
local.get 4 | |
i32.or | |
local.get 3 | |
local.get 6 | |
i32.shl | |
local.tee 4 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 3 | |
i32.or | |
i32.sub | |
local.get 4 | |
local.get 3 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 4 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 4 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 4 | |
end | |
local.get 5 | |
local.get 4 | |
i32.store offset=28 | |
local.get 5 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 6 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 2 (;@7;) | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 4 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 4 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 4 | |
local.get 3 | |
i32.load | |
local.set 6 | |
loop ;; label = @10 | |
local.get 6 | |
local.tee 3 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 5 (;@5;) | |
local.get 4 | |
i32.const 29 | |
i32.shr_u | |
local.set 6 | |
local.get 4 | |
i32.const 1 | |
i32.shl | |
local.set 4 | |
local.get 3 | |
local.get 6 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 9 | |
i32.load | |
local.tee 6 | |
br_if 0 (;@10;) | |
end | |
local.get 9 | |
local.get 5 | |
i32.store | |
local.get 5 | |
local.get 3 | |
i32.store offset=24 | |
br 3 (;@6;) | |
end | |
i32.const 0 | |
local.get 3 | |
local.get 4 | |
i32.or | |
i32.store offset=1024 | |
local.get 0 | |
local.set 4 | |
end | |
local.get 4 | |
local.get 5 | |
i32.store offset=12 | |
local.get 0 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 0 | |
i32.store offset=12 | |
local.get 5 | |
local.get 4 | |
i32.store offset=8 | |
br 3 (;@4;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 9 | |
i32.or | |
i32.store offset=1028 | |
local.get 5 | |
local.get 3 | |
i32.store offset=24 | |
end | |
local.get 5 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 5 | |
i32.store offset=8 | |
br 1 (;@4;) | |
end | |
local.get 3 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 5 | |
i32.store offset=12 | |
local.get 3 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 5 | |
local.get 3 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 2 (;@1;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 9 | |
local.get 9 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 10 | |
i32.const 16 | |
i32.const 20 | |
local.get 10 | |
i32.load offset=16 | |
local.get 9 | |
i32.eq | |
select | |
i32.add | |
local.get 6 | |
i32.store | |
local.get 6 | |
br_if 1 (;@4;) | |
br 3 (;@2;) | |
end | |
local.get 0 | |
local.get 6 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
local.get 6 | |
local.get 10 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 6 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 6 | |
i32.store offset=24 | |
end | |
local.get 9 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 6 | |
i32.store offset=24 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.get 7 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
local.tee 7 | |
i32.store offset=1028 | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 5 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@3;) | |
local.get 9 | |
local.get 5 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 9 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@2;) | |
end | |
local.get 8 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 9 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 8 | |
local.get 5 | |
i32.add | |
local.get 5 | |
i32.store | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 5 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 5 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
i32.eqz | |
br_if 1 (;@6;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
br 2 (;@5;) | |
end | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 2 (;@4;) | |
i32.const 31 | |
local.set 0 | |
local.get 5 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 3 (;@3;) | |
local.get 5 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 3 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 3 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 0 | |
br 3 (;@3;) | |
end | |
i32.const 0 | |
local.get 5 | |
local.get 4 | |
i32.or | |
i32.store offset=1024 | |
local.get 0 | |
local.set 4 | |
end | |
local.get 4 | |
local.get 8 | |
i32.store offset=12 | |
local.get 0 | |
local.get 8 | |
i32.store offset=8 | |
local.get 8 | |
local.get 0 | |
i32.store offset=12 | |
local.get 8 | |
local.get 4 | |
i32.store offset=8 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 0 | |
end | |
local.get 8 | |
local.get 0 | |
i32.store offset=28 | |
local.get 8 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.set 4 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 7 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 5 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 4 | |
i32.load | |
local.set 3 | |
loop ;; label = @6 | |
local.get 3 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 5 | |
i32.eq | |
br_if 3 (;@3;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 3 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 6 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@6;) | |
end | |
local.get 6 | |
local.get 8 | |
i32.store | |
local.get 8 | |
local.get 4 | |
i32.store offset=24 | |
br 1 (;@4;) | |
end | |
local.get 4 | |
local.get 8 | |
i32.store | |
i32.const 0 | |
local.get 7 | |
local.get 3 | |
i32.or | |
i32.store offset=1028 | |
local.get 8 | |
local.get 4 | |
i32.store offset=24 | |
end | |
local.get 8 | |
local.get 8 | |
i32.store offset=12 | |
local.get 8 | |
local.get 8 | |
i32.store offset=8 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 8 | |
i32.store offset=12 | |
local.get 4 | |
local.get 8 | |
i32.store offset=8 | |
local.get 8 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 8 | |
local.get 4 | |
i32.store offset=12 | |
local.get 8 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 9 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $free (type 3) (param i32) | |
local.get 0 | |
call $dlfree) | |
(func $dlfree (type 3) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.const -8 | |
i32.add | |
local.tee 1 | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.const -8 | |
i32.and | |
local.tee 0 | |
i32.add | |
local.set 3 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 2 (;@2;) | |
local.get 1 | |
local.get 1 | |
i32.load | |
local.tee 2 | |
i32.sub | |
local.tee 1 | |
i32.const 0 | |
i32.load offset=1040 | |
i32.lt_u | |
br_if 2 (;@2;) | |
local.get 2 | |
local.get 0 | |
i32.add | |
local.set 0 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 1 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 1 (;@8;) | |
local.get 1 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 2 (;@7;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 6 (;@3;) | |
br 7 (;@2;) | |
end | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 4 (;@4;) | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1032 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
return | |
end | |
local.get 1 | |
i32.load offset=24 | |
local.set 6 | |
local.get 1 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 1 | |
i32.eq | |
br_if 1 (;@6;) | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@5;) | |
br 3 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 3 (;@3;) | |
br 4 (;@2;) | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 1 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
loop ;; label = @7 | |
local.get 2 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@7;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@4;) | |
br 1 (;@5;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 1 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 1 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 1 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@6;) | |
br 3 (;@4;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @6 | |
local.get 1 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 1 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 2 (;@3;) | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
local.get 1 | |
local.get 3 | |
i32.ge_u | |
br_if 1 (;@2;) | |
end | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 2 | |
i32.const 2 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1048 | |
local.get 3 | |
i32.eq | |
br_if 1 (;@10;) | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 3 | |
i32.eq | |
br_if 2 (;@9;) | |
local.get 2 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.add | |
local.set 0 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 3 (;@8;) | |
local.get 3 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 4 (;@7;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 7 (;@4;) | |
end | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 7 (;@3;) | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1048 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1036 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1036 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.ne | |
br_if 7 (;@2;) | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1032 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1044 | |
return | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1044 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1032 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1032 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
return | |
end | |
local.get 3 | |
i32.load offset=24 | |
local.set 6 | |
local.get 3 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 3 | |
i32.eq | |
br_if 1 (;@6;) | |
local.get 3 | |
i32.load offset=8 | |
local.tee 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@5;) | |
br 3 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
br 2 (;@4;) | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 3 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
loop ;; label = @7 | |
local.get 2 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@7;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@4;) | |
br 1 (;@5;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 3 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 3 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 3 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@6;) | |
br 3 (;@4;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @6 | |
local.get 3 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 3 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.ne | |
br_if 0 (;@3;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1032 | |
return | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 2 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 4 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 2 | |
i32.and | |
i32.eqz | |
br_if 1 (;@8;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 2 | |
br 2 (;@7;) | |
end | |
i32.const 0 | |
local.set 2 | |
block ;; label = @9 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@9;) | |
i32.const 31 | |
local.set 2 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 0 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 2 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 2 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shl | |
local.tee 2 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 2 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 2 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 2 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 2 | |
end | |
local.get 1 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 1 | |
i32.const 28 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 5 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 2 (;@6;) | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 2 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 2 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 2 | |
local.get 4 | |
i32.load | |
local.set 5 | |
loop ;; label = @9 | |
local.get 5 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 5 (;@4;) | |
local.get 2 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 2 | |
i32.const 1 | |
i32.shl | |
local.set 2 | |
local.get 4 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@9;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.store | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
br 3 (;@5;) | |
end | |
i32.const 0 | |
local.get 4 | |
local.get 2 | |
i32.or | |
i32.store offset=1024 | |
local.get 0 | |
local.set 2 | |
end | |
local.get 2 | |
local.get 1 | |
i32.store offset=12 | |
local.get 0 | |
local.get 1 | |
i32.store offset=8 | |
local.get 1 | |
local.get 0 | |
i32.store offset=12 | |
local.get 1 | |
local.get 2 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
local.get 1 | |
i32.store | |
i32.const 0 | |
local.get 5 | |
local.get 3 | |
i32.or | |
i32.store offset=1028 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
end | |
local.get 1 | |
local.get 1 | |
i32.store offset=12 | |
local.get 1 | |
local.get 1 | |
i32.store offset=8 | |
br 1 (;@3;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 1 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 1 | |
local.get 4 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1056 | |
i32.const -1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1056 | |
local.get 1 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
return | |
end | |
i32.const 1480 | |
local.set 1 | |
loop ;; label = @1 | |
local.get 1 | |
i32.load | |
local.tee 0 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
local.get 0 | |
br_if 0 (;@1;) | |
end | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1056) | |
(func $calloc (type 1) (param i32 i32) (result i32) | |
(local i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 1 | |
local.get 0 | |
i32.mul | |
local.set 2 | |
block ;; label = @4 | |
local.get 1 | |
local.get 0 | |
i32.or | |
i32.const 65536 | |
i32.lt_u | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const -1 | |
local.get 2 | |
local.get 0 | |
i32.div_u | |
local.get 1 | |
i32.eq | |
select | |
local.set 2 | |
end | |
local.get 2 | |
call $dlmalloc | |
local.tee 0 | |
br_if 1 (;@2;) | |
br 2 (;@1;) | |
end | |
i32.const 0 | |
local.set 2 | |
i32.const 0 | |
call $dlmalloc | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load8_u | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 0 | |
local.get 2 | |
call $memset | |
drop | |
end | |
local.get 0) | |
(func $realloc (type 1) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 1 | |
i32.const -64 | |
i32.lt_u | |
br_if 1 (;@1;) | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1520 | |
i32.const 0 | |
return | |
end | |
local.get 1 | |
call $dlmalloc | |
return | |
end | |
i32.const 16 | |
local.get 1 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.set 2 | |
local.get 0 | |
i32.const -4 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.const -8 | |
i32.and | |
local.set 5 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 4 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.const -8 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.add | |
local.set 7 | |
local.get 5 | |
local.get 2 | |
i32.ge_u | |
br_if 1 (;@12;) | |
i32.const 0 | |
i32.load offset=1048 | |
local.get 7 | |
i32.eq | |
br_if 2 (;@11;) | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 7 | |
i32.eq | |
br_if 3 (;@10;) | |
local.get 7 | |
i32.load offset=4 | |
local.tee 8 | |
i32.const 2 | |
i32.and | |
br_if 4 (;@9;) | |
local.get 8 | |
i32.const -8 | |
i32.and | |
local.get 5 | |
i32.add | |
local.tee 9 | |
local.get 2 | |
i32.lt_u | |
br_if 4 (;@9;) | |
local.get 9 | |
local.get 2 | |
i32.sub | |
local.set 10 | |
local.get 8 | |
i32.const 255 | |
i32.gt_u | |
br_if 8 (;@5;) | |
local.get 7 | |
i32.load offset=12 | |
local.tee 1 | |
local.get 7 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 9 (;@4;) | |
local.get 1 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 1 | |
i32.store offset=12 | |
br 12 (;@1;) | |
end | |
local.get 2 | |
i32.const 256 | |
i32.lt_u | |
br_if 3 (;@9;) | |
local.get 5 | |
local.get 2 | |
i32.const 4 | |
i32.or | |
i32.lt_u | |
br_if 3 (;@9;) | |
local.get 5 | |
local.get 2 | |
i32.sub | |
i32.const 0 | |
i32.load offset=1504 | |
i32.const 1 | |
i32.shl | |
i32.gt_u | |
br_if 3 (;@9;) | |
br 4 (;@8;) | |
end | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 1 | |
i32.const 16 | |
i32.lt_u | |
br_if 3 (;@8;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 7 | |
local.get 7 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 2 | |
local.get 1 | |
call $dispose_chunk | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
i32.load offset=1036 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 2 | |
i32.le_u | |
br_if 1 (;@9;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 1 | |
i32.store offset=1048 | |
i32.const 0 | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 2 | |
i32.store offset=1036 | |
local.get 1 | |
local.get 2 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
i32.load offset=1032 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 2 | |
i32.ge_u | |
br_if 3 (;@6;) | |
end | |
local.get 1 | |
call $dlmalloc | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@7;) | |
local.get 2 | |
local.get 0 | |
local.get 3 | |
i32.load | |
local.tee 5 | |
i32.const -8 | |
i32.and | |
i32.const 4 | |
i32.const 8 | |
local.get 5 | |
i32.const 3 | |
i32.and | |
select | |
i32.sub | |
local.tee 5 | |
local.get 1 | |
local.get 5 | |
local.get 1 | |
i32.lt_u | |
select | |
call $memcpy | |
drop | |
local.get 0 | |
call $dlfree | |
local.get 2 | |
local.set 0 | |
end | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
return | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 1 | |
i32.const 16 | |
i32.lt_u | |
br_if 0 (;@7;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 1 | |
i32.store | |
local.get 5 | |
local.get 5 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
br 1 (;@6;) | |
end | |
local.get 3 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
local.get 5 | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 5 | |
i32.add | |
local.tee 1 | |
local.get 1 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.set 1 | |
i32.const 0 | |
local.set 2 | |
end | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1044 | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1032 | |
local.get 0 | |
return | |
end | |
local.get 7 | |
i32.load offset=24 | |
local.set 11 | |
local.get 7 | |
i32.load offset=12 | |
local.tee 8 | |
local.get 7 | |
i32.eq | |
br_if 1 (;@3;) | |
local.get 7 | |
i32.load offset=8 | |
local.tee 1 | |
local.get 8 | |
i32.store offset=12 | |
local.get 8 | |
local.get 1 | |
i32.store offset=8 | |
local.get 11 | |
br_if 2 (;@2;) | |
br 3 (;@1;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 8 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
br 2 (;@1;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 7 | |
i32.const 20 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@4;) | |
local.get 7 | |
i32.const 16 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
loop ;; label = @4 | |
local.get 1 | |
local.set 12 | |
local.get 5 | |
local.tee 8 | |
i32.const 20 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@4;) | |
local.get 8 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
local.get 8 | |
i32.load offset=16 | |
local.tee 5 | |
br_if 0 (;@4;) | |
end | |
local.get 12 | |
i32.const 0 | |
i32.store | |
local.get 11 | |
i32.eqz | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.set 8 | |
local.get 11 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 7 | |
i32.load offset=28 | |
local.tee 5 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.get 7 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 11 | |
i32.const 16 | |
i32.const 20 | |
local.get 11 | |
i32.load offset=16 | |
local.get 7 | |
i32.eq | |
select | |
i32.add | |
local.get 8 | |
i32.store | |
local.get 8 | |
br_if 1 (;@3;) | |
br 3 (;@1;) | |
end | |
local.get 1 | |
local.get 8 | |
i32.store | |
local.get 8 | |
i32.eqz | |
br_if 1 (;@2;) | |
end | |
local.get 8 | |
local.get 11 | |
i32.store offset=24 | |
block ;; label = @3 | |
local.get 7 | |
i32.load offset=16 | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 8 | |
local.get 1 | |
i32.store offset=16 | |
local.get 1 | |
local.get 8 | |
i32.store offset=24 | |
end | |
local.get 7 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 8 | |
i32.const 20 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 1 | |
local.get 8 | |
i32.store offset=24 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
block ;; label = @1 | |
local.get 10 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
local.get 9 | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 9 | |
i32.add | |
local.tee 1 | |
local.get 1 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
return | |
end | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 1 | |
local.get 10 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 9 | |
i32.add | |
local.tee 2 | |
local.get 2 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 10 | |
call $dispose_chunk | |
local.get 0) | |
(func $dispose_chunk (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32) | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 1 | |
i32.and | |
br_if 0 (;@10;) | |
local.get 3 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 0 | |
i32.load | |
local.tee 3 | |
local.get 1 | |
i32.add | |
local.set 1 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 0 | |
i32.eq | |
br_if 0 (;@15;) | |
local.get 3 | |
i32.const 255 | |
i32.gt_u | |
br_if 1 (;@14;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 0 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 2 (;@13;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 5 (;@10;) | |
end | |
local.get 2 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 4 (;@10;) | |
local.get 2 | |
i32.const 4 | |
i32.add | |
local.get 3 | |
i32.const -2 | |
i32.and | |
i32.store | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1032 | |
local.get 2 | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
return | |
end | |
local.get 0 | |
i32.load offset=24 | |
local.set 6 | |
local.get 0 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 0 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 3 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@11;) | |
br 3 (;@10;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 3 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
br 2 (;@10;) | |
end | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 0 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@12;) | |
end | |
loop ;; label = @13 | |
local.get 3 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@13;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@13;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@10;) | |
br 1 (;@11;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@10;) | |
end | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 0 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.get 0 | |
i32.eq | |
br_if 0 (;@13;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 0 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@12;) | |
br 3 (;@10;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@11;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @12 | |
local.get 0 | |
i32.load offset=16 | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@12;) | |
local.get 5 | |
local.get 3 | |
i32.store offset=16 | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 0 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@10;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@10;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 2 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 2 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1048 | |
local.get 2 | |
i32.eq | |
br_if 1 (;@10;) | |
i32.const 0 | |
i32.load offset=1044 | |
local.get 2 | |
i32.eq | |
br_if 3 (;@8;) | |
local.get 3 | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 255 | |
i32.gt_u | |
br_if 4 (;@7;) | |
local.get 2 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 6 (;@5;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 9 (;@2;) | |
end | |
local.get 2 | |
i32.const 4 | |
i32.add | |
local.get 3 | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 9 (;@1;) | |
end | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1048 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1036 | |
local.get 1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1036 | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.eq | |
br_if 3 (;@6;) | |
end | |
return | |
end | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1044 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1032 | |
local.get 1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1032 | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
return | |
end | |
local.get 2 | |
i32.load offset=24 | |
local.set 6 | |
local.get 2 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 2 | |
i32.eq | |
br_if 2 (;@4;) | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 3 | |
i32.store offset=8 | |
local.get 6 | |
br_if 3 (;@3;) | |
br 4 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1032 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1044 | |
return | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1024 | |
i32.const -2 | |
local.get 3 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1024 | |
br 2 (;@2;) | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
loop ;; label = @5 | |
local.get 3 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@5;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@2;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.get 2 | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 2 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@4;) | |
br 3 (;@2;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 2 | |
i32.load offset=16 | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 5 | |
local.get 3 | |
i32.store offset=16 | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 2 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1028 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1028 | |
end | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.ne | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1032 | |
return | |
end | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 1 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 1 | |
i32.const 3 | |
i32.shr_u | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
i32.const 1064 | |
i32.add | |
local.set 1 | |
i32.const 0 | |
i32.load offset=1024 | |
local.tee 4 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@5;) | |
local.get 1 | |
i32.load offset=8 | |
local.set 3 | |
br 2 (;@4;) | |
end | |
i32.const 0 | |
local.set 3 | |
block ;; label = @6 | |
local.get 1 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@6;) | |
i32.const 31 | |
local.set 3 | |
local.get 1 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 1 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 3 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 3 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shl | |
local.tee 3 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 3 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 3 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 3 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 3 | |
end | |
local.get 0 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 0 | |
i32.const 28 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
i32.const 2 | |
i32.shl | |
i32.const 1328 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1028 | |
local.tee 5 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 2 | |
i32.and | |
i32.eqz | |
br_if 2 (;@3;) | |
local.get 1 | |
i32.const 0 | |
i32.const 25 | |
local.get 3 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 3 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 3 | |
local.get 4 | |
i32.load | |
local.set 5 | |
loop ;; label = @6 | |
local.get 5 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.eq | |
br_if 5 (;@1;) | |
local.get 3 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 3 | |
i32.const 1 | |
i32.shl | |
local.set 3 | |
local.get 4 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@6;) | |
end | |
local.get 2 | |
local.get 0 | |
i32.store | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
local.get 4 | |
local.get 3 | |
i32.or | |
i32.store offset=1024 | |
local.get 1 | |
local.set 3 | |
end | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
local.get 1 | |
i32.store offset=12 | |
local.get 0 | |
local.get 3 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
local.get 0 | |
i32.store | |
i32.const 0 | |
local.get 5 | |
local.get 2 | |
i32.or | |
i32.store offset=1028 | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
end | |
local.get 0 | |
local.get 0 | |
i32.store offset=12 | |
local.get 0 | |
local.get 0 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 1 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 1 | |
i32.store offset=8) | |
(func $posix_memalign (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 1 | |
i32.const 8 | |
i32.ne | |
br_if 0 (;@3;) | |
local.get 2 | |
call $dlmalloc | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@2;) | |
br 2 (;@1;) | |
end | |
i32.const 28 | |
local.set 3 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.const 2 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.get 4 | |
i32.and | |
br_if 0 (;@4;) | |
i32.const 48 | |
local.set 3 | |
i32.const -64 | |
local.get 1 | |
i32.sub | |
local.get 2 | |
i32.ge_u | |
br_if 1 (;@3;) | |
end | |
local.get 3 | |
return | |
end | |
local.get 1 | |
i32.const 16 | |
local.get 1 | |
i32.const 16 | |
i32.gt_u | |
select | |
local.get 2 | |
call $internal_memalign | |
local.tee 1 | |
br_if 1 (;@1;) | |
end | |
i32.const 48 | |
return | |
end | |
local.get 0 | |
local.get 1 | |
i32.store | |
i32.const 0) | |
(func $internal_memalign (type 1) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32) | |
i32.const 16 | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.const 16 | |
local.get 0 | |
i32.const 16 | |
i32.gt_u | |
select | |
local.tee 3 | |
i32.const -1 | |
i32.add | |
local.get 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
loop ;; label = @3 | |
local.get 2 | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.set 2 | |
local.get 0 | |
local.get 3 | |
i32.lt_u | |
br_if 0 (;@3;) | |
br 2 (;@1;) | |
end | |
end | |
local.get 3 | |
local.set 0 | |
end | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
i32.const -64 | |
local.get 0 | |
i32.sub | |
local.get 1 | |
i32.le_u | |
br_if 0 (;@5;) | |
i32.const 16 | |
local.get 1 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.tee 1 | |
local.get 0 | |
i32.add | |
i32.const 12 | |
i32.add | |
call $dlmalloc | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 2 | |
i32.const -8 | |
i32.add | |
local.set 3 | |
local.get 0 | |
i32.const -1 | |
i32.add | |
local.get 2 | |
i32.and | |
i32.eqz | |
br_if 2 (;@3;) | |
local.get 2 | |
i32.const -4 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 5 | |
i32.const -8 | |
i32.and | |
local.get 2 | |
local.get 0 | |
i32.add | |
i32.const -1 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -8 | |
i32.add | |
local.tee 2 | |
local.get 2 | |
local.get 0 | |
i32.add | |
local.get 2 | |
local.get 3 | |
i32.sub | |
i32.const 15 | |
i32.gt_u | |
select | |
local.tee 0 | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
i32.sub | |
local.set 6 | |
local.get 5 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 3 (;@2;) | |
local.get 0 | |
local.get 6 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 6 | |
i32.add | |
local.tee 6 | |
local.get 6 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 2 | |
local.get 4 | |
i32.load | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 3 | |
local.get 2 | |
call $dispose_chunk | |
br 4 (;@1;) | |
end | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1520 | |
i32.const 0 | |
return | |
end | |
i32.const 0 | |
return | |
end | |
local.get 3 | |
local.set 0 | |
br 1 (;@1;) | |
end | |
local.get 0 | |
local.get 6 | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.load | |
local.get 2 | |
i32.add | |
i32.store | |
end | |
block ;; label = @1 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const -8 | |
i32.and | |
local.tee 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
i32.le_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.get 1 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.tee 2 | |
local.get 3 | |
local.get 1 | |
i32.sub | |
local.tee 1 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.add | |
local.tee 3 | |
local.get 3 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 2 | |
local.get 1 | |
call $dispose_chunk | |
end | |
local.get 0 | |
i32.const 8 | |
i32.add) | |
(func $aligned_alloc (type 1) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.const 8 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 1 | |
call $dlmalloc | |
return | |
end | |
local.get 0 | |
local.get 1 | |
call $internal_memalign) | |
(func $malloc_usable_size (type 0) (param i32) (result i32) | |
(local i32 i32) | |
i32.const 0 | |
local.set 1 | |
block ;; label = @1 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -8 | |
i32.and | |
i32.const 4 | |
i32.const 8 | |
local.get 2 | |
select | |
i32.sub | |
local.set 1 | |
end | |
local.get 1) | |
(func $_Exit (type 3) (param i32) | |
local.get 0 | |
call $__wasi_proc_exit | |
unreachable) | |
(func $openat (type 12) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32 i64 i64 i64) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 2 | |
i32.const 503316480 | |
i32.and | |
i32.const -33554432 | |
i32.add | |
i32.const 25 | |
i32.shr_u | |
local.tee 5 | |
i32.const 9 | |
i32.gt_u | |
br_if 0 (;@6;) | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
i32.const 1 | |
local.get 5 | |
i32.shl | |
local.tee 5 | |
i32.const 642 | |
i32.and | |
i32.eqz | |
br_if 0 (;@10;) | |
local.get 2 | |
i32.const 67108864 | |
i32.and | |
br_if 1 (;@9;) | |
i64.const 0 | |
local.set 6 | |
i64.const -4211012 | |
local.set 7 | |
br 2 (;@8;) | |
end | |
local.get 5 | |
i32.const 9 | |
i32.and | |
i32.eqz | |
br_if 3 (;@6;) | |
i64.const 0 | |
local.set 6 | |
i64.const -4211012 | |
local.set 7 | |
br 2 (;@7;) | |
end | |
i64.const 16384 | |
i64.const 2 | |
local.get 2 | |
i32.const 8192 | |
i32.and | |
select | |
local.set 6 | |
i64.const -4194626 | |
local.set 7 | |
end | |
local.get 2 | |
i32.const 268435456 | |
i32.and | |
i32.eqz | |
br_if 0 (;@7;) | |
local.get 7 | |
i64.const 4194625 | |
i64.or | |
local.set 7 | |
local.get 6 | |
i64.const 64 | |
i64.const 68 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
select | |
i64.or | |
local.set 6 | |
end | |
local.get 6 | |
local.get 7 | |
i64.and | |
local.get 6 | |
i64.ne | |
br_if 5 (;@1;) | |
block ;; label = @7 | |
local.get 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
call $__wasi_fd_fdstat_get | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@7;) | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1520 | |
i32.const -1 | |
local.set 5 | |
br 5 (;@2;) | |
end | |
local.get 4 | |
i32.load8_u offset=8 | |
i32.const 3 | |
i32.ne | |
br_if 1 (;@5;) | |
local.get 4 | |
i64.load offset=24 | |
local.tee 8 | |
local.get 6 | |
i64.and | |
local.get 6 | |
i64.ne | |
br_if 2 (;@4;) | |
i32.const -1 | |
local.set 5 | |
local.get 0 | |
local.get 2 | |
i32.const 24 | |
i32.shr_u | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
i32.const 12 | |
i32.shr_u | |
i32.const 4095 | |
i32.and | |
local.get 8 | |
local.get 7 | |
i64.and | |
local.get 8 | |
local.get 2 | |
i32.const 4095 | |
i32.and | |
local.get 4 | |
i32.const 4 | |
i32.add | |
call $__wasi_path_open | |
local.tee 2 | |
i32.eqz | |
br_if 3 (;@3;) | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1520 | |
br 4 (;@2;) | |
end | |
i32.const 0 | |
i32.const 28 | |
i32.store offset=1520 | |
i32.const -1 | |
local.set 5 | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
i32.const 54 | |
i32.store offset=1520 | |
i32.const -1 | |
local.set 5 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
i32.const -1 | |
local.set 5 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=4 | |
local.set 5 | |
end | |
local.get 4 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 5 | |
return | |
end | |
call $abort | |
unreachable) | |
(func $faccessat (type 12) (param i32 i32 i32 i32) (result i32) | |
(local i32 i64) | |
global.get 0 | |
i32.const 80 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 7 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 3 | |
br_if 0 (;@4;) | |
local.get 0 | |
i32.const 1 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 4 | |
i32.const 24 | |
i32.add | |
call $__wasi_path_filestat_get | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@3;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
i32.const 28 | |
i32.store offset=1520 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.set 1 | |
local.get 2 | |
i32.eqz | |
br_if 1 (;@1;) | |
block ;; label = @3 | |
local.get 0 | |
local.get 4 | |
call $__wasi_fd_fdstat_get | |
local.tee 3 | |
br_if 0 (;@3;) | |
i64.const 0 | |
local.set 5 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@4;) | |
i64.const 16384 | |
i64.const 2 | |
local.get 4 | |
i32.load8_u offset=40 | |
i32.const 3 | |
i32.eq | |
select | |
local.set 5 | |
end | |
i32.const 2 | |
local.set 3 | |
local.get 5 | |
local.get 2 | |
i32.const 5 | |
i32.shl | |
i32.const 64 | |
i32.and | |
i64.extend_i32_u | |
i64.or | |
local.tee 5 | |
local.get 4 | |
i64.load offset=16 | |
i64.and | |
local.get 5 | |
i64.eq | |
br_if 2 (;@1;) | |
end | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1520 | |
end | |
i32.const -1 | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 80 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $fstatat (type 12) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32 i64 i64 i64 i64 i64 i64) | |
global.get 0 | |
i32.const 96 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
i32.const -1 | |
local.set 5 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 3 | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 4 | |
i32.const 8 | |
i32.add | |
call $__wasi_path_filestat_get | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
br 1 (;@1;) | |
end | |
local.get 2 | |
i64.const 0 | |
i64.store offset=64 | |
i32.const 0 | |
local.set 5 | |
local.get 2 | |
i32.const 0 | |
i32.store offset=56 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=40 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=32 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=24 | |
local.get 4 | |
i32.const 88 | |
i32.add | |
i64.const 0 | |
i64.store align=4 | |
local.get 4 | |
i32.const 80 | |
i32.add | |
i64.const 0 | |
i64.store align=4 | |
local.get 2 | |
local.get 4 | |
i64.load offset=32 | |
i64.store offset=48 | |
local.get 2 | |
local.get 4 | |
i64.load32_u offset=28 | |
i64.store offset=16 | |
local.get 2 | |
local.get 4 | |
i64.load offset=16 | |
i64.store offset=8 | |
local.get 2 | |
local.get 4 | |
i64.load offset=8 | |
i64.store | |
local.get 2 | |
local.get 4 | |
i64.load offset=56 | |
local.tee 6 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 7 | |
i64.store offset=104 | |
local.get 2 | |
local.get 4 | |
i64.load offset=48 | |
local.tee 8 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 9 | |
i64.store offset=88 | |
local.get 2 | |
local.get 4 | |
i64.load offset=40 | |
local.tee 10 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 11 | |
i64.store offset=72 | |
local.get 2 | |
i32.const 112 | |
i32.add | |
local.get 6 | |
local.get 7 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 2 | |
i32.const 96 | |
i32.add | |
local.get 8 | |
local.get 9 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 2 | |
i32.const 80 | |
i32.add | |
local.get 10 | |
local.get 11 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 4 | |
i64.const 0 | |
i64.store offset=72 align=4 | |
local.get 2 | |
i32.const 140 | |
i32.add | |
local.get 4 | |
i32.const 68 | |
i32.add | |
i32.const 24 | |
i32.add | |
i32.load | |
i32.store | |
local.get 2 | |
i32.const 132 | |
i32.add | |
local.get 4 | |
i32.const 84 | |
i32.add | |
i64.load align=4 | |
i64.store align=4 | |
local.get 2 | |
i32.const 124 | |
i32.add | |
local.get 4 | |
i32.const 76 | |
i32.add | |
i64.load align=4 | |
i64.store align=4 | |
local.get 2 | |
local.get 4 | |
i64.load offset=68 align=4 | |
i64.store offset=116 align=4 | |
local.get 4 | |
i32.load8_u offset=24 | |
i32.const -1 | |
i32.add | |
local.tee 1 | |
i32.const 255 | |
i32.and | |
i32.const 6 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const 24 | |
i32.add | |
local.get 1 | |
i32.const 24 | |
i32.shl | |
i32.const 24 | |
i32.shr_s | |
i32.const 2 | |
i32.shl | |
i32.const 1536 | |
i32.add | |
i32.load | |
i32.store | |
end | |
local.get 4 | |
i32.const 96 | |
i32.add | |
global.set 0 | |
local.get 5) | |
(func $renameat (type 12) (param i32 i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 3 | |
call $strlen | |
call $__wasi_path_rename | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $__wasilibc_rmfileat (type 1) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_unlink_file | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $__wasilibc_rmdirat (type 1) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_remove_directory | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $linkat (type 5) (param i32 i32 i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 4 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 3 | |
call $strlen | |
call $__wasi_path_link | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $mkdirat (type 2) (param i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_create_directory | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $fdopendir (type 0) (param i32) (result i32) | |
(local i32 i32) | |
i32.const 0 | |
local.set 1 | |
block ;; label = @1 | |
i32.const 40 | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const 4096 | |
call $malloc | |
local.tee 1 | |
i32.store offset=16 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 0 | |
local.get 1 | |
i32.const 4096 | |
i64.const 0 | |
local.get 2 | |
i32.const 28 | |
i32.add | |
call $__wasi_fd_readdir | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 2 | |
i32.const 16 | |
i32.add | |
i32.load | |
call $free | |
local.get 2 | |
call $free | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
i32.const 0 | |
return | |
end | |
local.get 2 | |
call $free | |
i32.const 0 | |
return | |
end | |
local.get 2 | |
i64.const 4294967296 | |
i64.store offset=32 | |
local.get 2 | |
i64.const 17592186044416 | |
i64.store offset=20 align=4 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=8 | |
local.get 2 | |
local.get 0 | |
i32.store | |
local.get 2 | |
local.set 1 | |
end | |
local.get 1) | |
(func $close (type 0) (param i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
call $__wasi_fd_close | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $opendirat (type 1) (param i32 i32) (result i32) | |
(local i32) | |
i32.const 0 | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 1 | |
i32.const 67117060 | |
i32.const 0 | |
call $openat | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
call $fdopendir | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
local.get 2 | |
return | |
end | |
local.get 0 | |
call $close | |
drop | |
i32.const 0) | |
(func $readlinkat (type 12) (param i32 i32 i32 i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 12 | |
i32.add | |
call $__wasi_path_readlink | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
i32.const -1 | |
local.set 1 | |
br 1 (;@1;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $scandirat (type 5) (param i32 i32 i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 5 | |
global.set 0 | |
i32.const -1 | |
local.set 6 | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
i32.const 67117060 | |
i32.const 0 | |
call $openat | |
local.tee 7 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@1;) | |
i32.const 4096 | |
local.set 0 | |
block ;; label = @2 | |
i32.const 4096 | |
call $malloc | |
local.tee 8 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
i32.const 1 | |
local.get 3 | |
select | |
local.set 9 | |
local.get 5 | |
i32.const 4096 | |
i32.store offset=28 | |
i64.const 0 | |
local.set 10 | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 11 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
local.set 12 | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.set 13 | |
i32.const 0 | |
local.set 14 | |
i32.const 0 | |
local.set 6 | |
i32.const 0 | |
local.set 15 | |
i32.const 0 | |
local.set 16 | |
i32.const 0 | |
local.set 17 | |
i32.const 4096 | |
local.set 18 | |
i32.const 4096 | |
local.set 1 | |
loop ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
local.get 0 | |
local.get 18 | |
i32.sub | |
local.tee 19 | |
i32.const 23 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 0 | |
local.get 1 | |
i32.lt_u | |
br_if 5 (;@9;) | |
local.get 8 | |
local.set 3 | |
local.get 1 | |
local.set 0 | |
br 1 (;@13;) | |
end | |
local.get 5 | |
local.get 8 | |
local.get 18 | |
i32.add | |
local.tee 20 | |
i32.const 24 | |
call $memcpy | |
drop | |
local.get 11 | |
i32.load | |
local.tee 0 | |
i32.const 24 | |
i32.add | |
local.set 3 | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@12;) | |
local.get 19 | |
local.get 3 | |
i32.ge_u | |
br_if 2 (;@11;) | |
loop ;; label = @14 | |
local.get 1 | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.set 1 | |
local.get 0 | |
local.get 3 | |
i32.lt_u | |
br_if 0 (;@14;) | |
end | |
local.get 8 | |
local.get 0 | |
call $realloc | |
local.tee 3 | |
i32.eqz | |
br_if 5 (;@8;) | |
end | |
i32.const 0 | |
local.set 18 | |
local.get 7 | |
local.get 3 | |
local.get 0 | |
local.get 10 | |
local.get 5 | |
i32.const 28 | |
i32.add | |
call $__wasi_fd_readdir | |
local.tee 1 | |
br_if 2 (;@10;) | |
local.get 3 | |
local.set 8 | |
local.get 0 | |
local.set 1 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 9 (;@3;) | |
end | |
local.get 3 | |
local.get 18 | |
i32.add | |
local.set 18 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 8 (;@3;) | |
end | |
local.get 3 | |
local.get 18 | |
i32.add | |
local.set 18 | |
local.get 20 | |
i32.const 24 | |
i32.add | |
local.tee 3 | |
i32.const 0 | |
local.get 0 | |
call $memchr | |
br_if 6 (;@4;) | |
local.get 0 | |
i32.const 10 | |
i32.add | |
call $malloc | |
local.tee 0 | |
i32.eqz | |
br_if 2 (;@8;) | |
local.get 12 | |
i64.load | |
local.set 10 | |
local.get 0 | |
local.get 13 | |
i32.load8_u | |
i32.store8 offset=8 | |
local.get 0 | |
local.get 10 | |
i64.store | |
local.get 0 | |
i32.const 9 | |
i32.add | |
local.tee 19 | |
local.get 3 | |
local.get 11 | |
i32.load | |
call $memcpy | |
drop | |
local.get 19 | |
local.get 11 | |
i32.load | |
i32.add | |
i32.const 0 | |
i32.store8 | |
local.get 5 | |
i64.load | |
local.set 10 | |
block ;; label = @11 | |
local.get 0 | |
local.get 9 | |
call_indirect (type 0) | |
i32.eqz | |
br_if 0 (;@11;) | |
block ;; label = @12 | |
local.get 6 | |
local.get 14 | |
i32.ne | |
br_if 0 (;@12;) | |
local.get 16 | |
i32.const 8 | |
local.get 14 | |
i32.const 1 | |
i32.shl | |
local.get 14 | |
i32.const 8 | |
i32.lt_u | |
select | |
local.tee 3 | |
i32.const 2 | |
i32.shl | |
call $realloc | |
local.tee 16 | |
i32.eqz | |
br_if 5 (;@7;) | |
local.get 3 | |
local.set 14 | |
local.get 16 | |
local.set 15 | |
local.get 16 | |
local.set 17 | |
end | |
local.get 17 | |
local.get 6 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 6 | |
i32.const 1 | |
i32.add | |
local.set 6 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 8 (;@3;) | |
end | |
local.get 0 | |
call $free | |
br 6 (;@4;) | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1520 | |
local.get 3 | |
local.set 8 | |
local.get 6 | |
local.tee 14 | |
br_if 3 (;@6;) | |
br 4 (;@5;) | |
end | |
local.get 8 | |
call $free | |
local.get 7 | |
call $close | |
drop | |
local.get 16 | |
local.get 6 | |
i32.const 4 | |
local.get 4 | |
call $qsort | |
local.get 2 | |
local.get 15 | |
i32.store | |
br 7 (;@1;) | |
end | |
local.get 6 | |
local.tee 14 | |
i32.eqz | |
br_if 2 (;@5;) | |
br 1 (;@6;) | |
end | |
local.get 0 | |
call $free | |
local.get 14 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
loop ;; label = @6 | |
local.get 17 | |
i32.load | |
call $free | |
local.get 17 | |
i32.const 4 | |
i32.add | |
local.set 17 | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 14 | |
br_if 0 (;@6;) | |
end | |
end | |
local.get 15 | |
call $free | |
local.get 8 | |
call $free | |
local.get 7 | |
call $close | |
drop | |
i32.const -1 | |
local.set 6 | |
br 3 (;@1;) | |
end | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 0 (;@3;) | |
end | |
end | |
local.get 7 | |
call $close | |
drop | |
end | |
local.get 5 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 6) | |
(func $sel_true (type 0) (param i32) (result i32) | |
i32.const 1) | |
(func $symlinkat (type 2) (param i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 0 | |
call $strlen | |
local.get 1 | |
local.get 2 | |
local.get 2 | |
call $strlen | |
call $__wasi_path_symlink | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $open (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 3 | |
global.set 0 | |
i32.const 0 | |
local.set 4 | |
block ;; label = @1 | |
local.get 1 | |
i32.const 4096 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 2 | |
i32.const 4 | |
i32.add | |
i32.store offset=28 | |
local.get 2 | |
i32.load | |
local.set 4 | |
end | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 3 | |
i32.load offset=16 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
i32.load offset=20 | |
local.set 0 | |
local.get 3 | |
local.get 4 | |
i32.store | |
local.get 2 | |
local.get 0 | |
local.get 1 | |
local.get 3 | |
call $openat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 3 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $find_relative (type 13) (param i32 i32 i64 i64) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
i32.const 0 | |
local.set 4 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
i32.const 0 | |
i32.load offset=1524 | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 5 | |
call $po_map_assertvalid | |
i32.const 0 | |
i32.load offset=1524 | |
local.tee 5 | |
call $po_map_assertvalid | |
local.get 1 | |
i32.eqz | |
br_if 3 (;@2;) | |
local.get 5 | |
i32.load offset=12 | |
local.tee 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.load offset=4 | |
local.set 7 | |
i32.const 0 | |
local.set 8 | |
local.get 1 | |
i32.load8_u | |
local.tee 9 | |
i32.const 47 | |
i32.eq | |
local.set 10 | |
local.get 9 | |
i32.const 46 | |
i32.ne | |
local.set 11 | |
i32.const -1 | |
local.set 12 | |
i32.const 0 | |
local.set 13 | |
loop ;; label = @6 | |
local.get 7 | |
local.get 8 | |
i32.const 24 | |
i32.mul | |
i32.add | |
local.tee 14 | |
i32.load | |
local.tee 15 | |
call $strlen | |
local.set 16 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 10 | |
br_if 0 (;@15;) | |
block ;; label = @16 | |
local.get 11 | |
br_if 0 (;@16;) | |
local.get 1 | |
i32.const 1 | |
i32.add | |
i32.load8_u | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@15;) | |
local.get 4 | |
i32.const 47 | |
i32.eq | |
br_if 1 (;@15;) | |
end | |
block ;; label = @16 | |
local.get 16 | |
i32.const 2 | |
i32.lt_u | |
br_if 0 (;@16;) | |
local.get 15 | |
i32.load8_u | |
local.tee 4 | |
i32.const 46 | |
i32.ne | |
br_if 4 (;@12;) | |
i32.const 46 | |
local.set 4 | |
local.get 15 | |
i32.load8_u offset=1 | |
i32.const 47 | |
i32.ne | |
br_if 4 (;@12;) | |
local.get 16 | |
i32.const -2 | |
i32.add | |
local.set 16 | |
local.get 15 | |
i32.const 2 | |
i32.add | |
local.set 15 | |
local.get 10 | |
i32.eqz | |
br_if 2 (;@14;) | |
br 3 (;@13;) | |
end | |
local.get 16 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@15;) | |
local.get 15 | |
i32.const 1 | |
i32.add | |
local.get 15 | |
local.get 15 | |
i32.load8_u | |
local.tee 4 | |
i32.const 46 | |
i32.eq | |
select | |
local.set 15 | |
local.get 4 | |
i32.const 46 | |
i32.ne | |
local.set 16 | |
local.get 10 | |
i32.eqz | |
br_if 1 (;@14;) | |
br 2 (;@13;) | |
end | |
local.get 15 | |
i32.eqz | |
br_if 9 (;@5;) | |
local.get 10 | |
br_if 1 (;@13;) | |
end | |
i32.const 0 | |
local.set 17 | |
local.get 16 | |
i32.eqz | |
br_if 5 (;@8;) | |
end | |
local.get 16 | |
i32.eqz | |
br_if 1 (;@11;) | |
local.get 15 | |
i32.load8_u | |
local.set 4 | |
end | |
local.get 9 | |
local.get 4 | |
i32.const 255 | |
i32.and | |
i32.ne | |
br_if 4 (;@7;) | |
i32.const 1 | |
local.set 4 | |
loop ;; label = @12 | |
local.get 4 | |
local.get 16 | |
i32.ge_u | |
br_if 2 (;@10;) | |
local.get 15 | |
local.get 4 | |
i32.add | |
local.set 5 | |
local.get 1 | |
local.get 4 | |
i32.add | |
local.set 18 | |
local.get 4 | |
i32.const 1 | |
i32.add | |
local.set 4 | |
local.get 18 | |
i32.load8_u | |
local.get 5 | |
i32.load8_u | |
i32.eq | |
br_if 0 (;@12;) | |
br 5 (;@7;) | |
end | |
end | |
i32.const 0 | |
local.set 17 | |
i32.const 0 | |
local.set 4 | |
br 1 (;@9;) | |
end | |
local.get 16 | |
local.set 17 | |
end | |
local.get 15 | |
i32.const -1 | |
i32.add | |
local.set 18 | |
block ;; label = @9 | |
loop ;; label = @10 | |
local.get 4 | |
local.tee 5 | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.set 4 | |
local.get 18 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
i32.const 47 | |
i32.eq | |
br_if 0 (;@10;) | |
end | |
end | |
local.get 1 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
local.tee 4 | |
i32.const 47 | |
i32.eq | |
br_if 0 (;@8;) | |
local.get 4 | |
br_if 1 (;@7;) | |
end | |
local.get 14 | |
i64.load offset=8 | |
i64.const -1 | |
i64.xor | |
local.get 2 | |
i64.and | |
i64.const 0 | |
i64.ne | |
br_if 0 (;@7;) | |
local.get 14 | |
i64.load offset=16 | |
i64.const -1 | |
i64.xor | |
local.get 3 | |
i64.and | |
i64.const 0 | |
i64.ne | |
br_if 0 (;@7;) | |
local.get 14 | |
i32.load offset=4 | |
local.set 12 | |
local.get 17 | |
local.set 13 | |
end | |
local.get 8 | |
i32.const 1 | |
i32.add | |
local.tee 8 | |
local.get 6 | |
i32.lt_u | |
br_if 0 (;@6;) | |
br 3 (;@3;) | |
end | |
end | |
call $abort | |
unreachable | |
end | |
i32.const -1 | |
local.set 12 | |
i32.const 0 | |
local.set 13 | |
end | |
local.get 1 | |
local.get 13 | |
i32.add | |
local.tee 4 | |
i32.const 1 | |
i32.add | |
local.get 4 | |
local.get 4 | |
i32.load8_u | |
i32.const 47 | |
i32.eq | |
local.tee 5 | |
select | |
i32.const 1564 | |
local.get 4 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
select | |
local.set 4 | |
br 1 (;@1;) | |
end | |
i32.const -1 | |
local.set 12 | |
end | |
local.get 0 | |
local.get 4 | |
i32.store offset=4 | |
local.get 0 | |
local.get 12 | |
i32.store) | |
(func $po_map_assertvalid (type 3) (param i32) | |
(local i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.load | |
i32.const 0 | |
i32.le_s | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 1 | |
local.get 0 | |
i32.load offset=8 | |
local.tee 2 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.load offset=4 | |
local.set 0 | |
block ;; label = @2 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
block ;; label = @2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @3 | |
local.get 0 | |
i32.load | |
i32.eqz | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
i32.load | |
i32.const -1 | |
i32.le_s | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.set 0 | |
local.get 2 | |
i32.const 1 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.lt_u | |
br_if 0 (;@3;) | |
end | |
end | |
return | |
end | |
call $abort | |
unreachable) | |
(func $access (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 0 | |
call $faccessat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $eaccess (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 0 | |
call $faccessat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $lstat (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 1 | |
call $fstatat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $rename (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 65536 | |
i64.const 0 | |
call $find_relative | |
local.get 2 | |
local.get 1 | |
i64.const 131072 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
i32.load | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 2 | |
i32.load offset=12 | |
local.get 3 | |
local.get 2 | |
i32.load offset=4 | |
call $renameat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $stat (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 1 | |
call $fstatat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $unlink (type 0) (param i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 67108864 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
call $__wasilibc_rmfileat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $rmdir (type 0) (param i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 33554432 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
call $__wasilibc_rmdirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $remove (type 0) (param i32) (result i32) | |
(local i32 i32 i32 i32 i64) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 100663296 | |
i64.const 0 | |
call $find_relative | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 1 | |
local.get 0 | |
i64.const 67108864 | |
i64.const 0 | |
call $find_relative | |
local.get 1 | |
local.get 1 | |
i64.load | |
local.tee 5 | |
i64.store offset=8 | |
block ;; label = @4 | |
local.get 5 | |
i32.wrap_i64 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 5 | |
i64.const 32 | |
i64.shr_u | |
i32.wrap_i64 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
local.get 1 | |
local.get 0 | |
i64.const 33554432 | |
i64.const 0 | |
call $find_relative | |
local.get 1 | |
local.get 1 | |
i64.load | |
local.tee 5 | |
i64.store offset=8 | |
i32.const -1 | |
local.set 0 | |
block ;; label = @4 | |
local.get 5 | |
i32.wrap_i64 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 5 | |
i64.const 32 | |
i64.shr_u | |
i32.wrap_i64 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
br 2 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
br 1 (;@1;) | |
end | |
block ;; label = @2 | |
i32.const 0 | |
i32.load offset=1520 | |
local.tee 4 | |
i32.const 76 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 4 | |
i32.const 31 | |
i32.ne | |
br_if 1 (;@1;) | |
end | |
local.get 2 | |
local.get 3 | |
call $__wasilibc_rmdirat | |
local.set 0 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $link (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 2048 | |
i64.const 0 | |
call $find_relative | |
local.get 2 | |
local.get 1 | |
i64.const 4096 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
i32.load | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 2 | |
i32.load offset=12 | |
local.get 3 | |
local.get 2 | |
i32.load offset=4 | |
i32.const 0 | |
call $linkat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $mkdir (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 512 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
call $mkdirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $opendir (type 0) (param i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 0 | |
call $find_relative | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 1 | |
i32.load offset=12 | |
call $opendirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $readlink (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 3 | |
global.set 0 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 32768 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 4 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 4 | |
local.get 3 | |
i32.load offset=12 | |
local.get 1 | |
local.get 2 | |
call $readlinkat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 3 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $scandir (type 12) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 16384 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 5 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 5 | |
local.get 4 | |
i32.load offset=12 | |
local.get 1 | |
local.get 2 | |
local.get 3 | |
call $scandirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $symlink (type 1) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i64.const 16777216 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
call $symlinkat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1520 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $__wasilibc_init_preopen (type 9) | |
(local i32 i32) | |
block ;; label = @1 | |
i32.const 16 | |
call $malloc | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 24 | |
i32.const 4 | |
call $calloc | |
local.tee 1 | |
i32.store offset=4 | |
block ;; label = @2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i64.const 4 | |
i64.store offset=8 align=4 | |
local.get 0 | |
i32.const 1 | |
i32.store | |
local.get 0 | |
call $po_map_assertvalid | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1524 | |
local.get 0 | |
call $po_map_assertvalid | |
return | |
end | |
local.get 0 | |
call $free | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1524 | |
unreachable | |
unreachable) | |
(func $__wasilibc_register_preopened_fd (type 1) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
i32.const 0 | |
i32.load offset=1524 | |
call $po_map_assertvalid | |
i32.const -1 | |
local.set 3 | |
block ;; label = @1 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
i32.load offset=1524 | |
local.tee 4 | |
call $po_map_assertvalid | |
local.get 0 | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@1;) | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 4 | |
i32.load offset=8 | |
i32.ne | |
br_if 0 (;@3;) | |
i32.const 24 | |
local.get 5 | |
i32.const 1 | |
i32.shl | |
call $calloc | |
local.tee 6 | |
i32.eqz | |
br_if 2 (;@1;) | |
local.get 6 | |
local.get 4 | |
i32.load offset=4 | |
local.get 4 | |
i32.const 12 | |
i32.add | |
local.tee 5 | |
i32.load | |
i32.const 24 | |
i32.mul | |
call $memcpy | |
drop | |
local.get 4 | |
i32.load offset=4 | |
call $free | |
local.get 4 | |
local.get 6 | |
i32.store offset=4 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.tee 7 | |
local.get 7 | |
i32.load | |
i32.const 1 | |
i32.shl | |
i32.store | |
local.get 5 | |
i32.load | |
local.set 5 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=4 | |
local.set 6 | |
end | |
local.get 4 | |
i32.const 12 | |
i32.add | |
local.get 5 | |
i32.const 1 | |
i32.add | |
i32.store | |
local.get 1 | |
call $strdup | |
local.set 7 | |
local.get 6 | |
local.get 5 | |
i32.const 24 | |
i32.mul | |
i32.add | |
local.tee 1 | |
local.get 0 | |
i32.store offset=4 | |
local.get 1 | |
local.get 7 | |
i32.store | |
block ;; label = @2 | |
local.get 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
call $__wasi_fd_fdstat_get | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1520 | |
br 1 (;@1;) | |
end | |
local.get 1 | |
local.get 2 | |
i64.load offset=16 | |
i64.store offset=8 | |
local.get 1 | |
local.get 2 | |
i64.load offset=24 | |
i64.store offset=16 | |
local.get 4 | |
call $po_map_assertvalid | |
local.get 4 | |
call $po_map_assertvalid | |
i32.const 0 | |
local.set 3 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1524 | |
end | |
local.get 2 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 3) | |
(func $__wasilibc_find_relpath (type 14) (param i32 i64 i64 i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
local.get 1 | |
local.get 2 | |
call $find_relative | |
local.get 3 | |
local.get 4 | |
i32.load offset=12 | |
i32.store | |
local.get 4 | |
i32.load offset=8 | |
local.set 3 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 3) | |
(func $abort (type 9) | |
unreachable | |
unreachable) | |
(func $sbrk (type 0) (param i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.const 65535 | |
i32.and | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -1 | |
i32.le_s | |
br_if 0 (;@1;) | |
block ;; label = @2 | |
local.get 0 | |
i32.const 16 | |
i32.shr_u | |
memory.grow | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.const 16 | |
i32.shl | |
return | |
end | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1520 | |
i32.const -1 | |
return | |
end | |
call $abort | |
unreachable) | |
(func $dummy (type 9)) | |
(func $__prepare_for_exit (type 9) | |
call $dummy | |
call $dummy) | |
(func $exit (type 3) (param i32) | |
call $dummy | |
call $dummy | |
local.get 0 | |
call $_Exit | |
unreachable) | |
(func $memchr (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32) | |
local.get 2 | |
i32.const 0 | |
i32.ne | |
local.set 3 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
local.set 3 | |
loop ;; label = @6 | |
local.get 0 | |
i32.load8_u | |
local.get 3 | |
i32.eq | |
br_if 2 (;@4;) | |
local.get 2 | |
i32.const 1 | |
i32.ne | |
local.set 4 | |
local.get 2 | |
i32.const -1 | |
i32.add | |
local.set 5 | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 0 | |
block ;; label = @7 | |
local.get 2 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 5 | |
local.set 2 | |
local.get 0 | |
i32.const 3 | |
i32.and | |
br_if 1 (;@6;) | |
end | |
end | |
local.get 4 | |
br_if 2 (;@3;) | |
br 3 (;@2;) | |
end | |
local.get 2 | |
local.set 5 | |
local.get 3 | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 2 | |
local.set 5 | |
end | |
block ;; label = @3 | |
local.get 0 | |
i32.load8_u | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.eq | |
br_if 0 (;@3;) | |
local.get 5 | |
i32.const 4 | |
i32.lt_u | |
br_if 0 (;@3;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.const 16843009 | |
i32.mul | |
local.set 3 | |
loop ;; label = @4 | |
local.get 0 | |
i32.load | |
local.get 3 | |
i32.xor | |
local.tee 2 | |
i32.const -1 | |
i32.xor | |
local.get 2 | |
i32.const -16843009 | |
i32.add | |
i32.and | |
i32.const -2139062144 | |
i32.and | |
br_if 1 (;@3;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.set 0 | |
local.get 5 | |
i32.const -4 | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.gt_u | |
br_if 0 (;@4;) | |
end | |
end | |
local.get 5 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
local.set 2 | |
loop ;; label = @3 | |
local.get 0 | |
i32.load8_u | |
local.get 2 | |
i32.eq | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 0 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@3;) | |
end | |
end | |
i32.const 0 | |
return | |
end | |
local.get 0) | |
(func $memcpy (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 0 | |
local.set 3 | |
block ;; label = @5 | |
loop ;; label = @6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 2 | |
i32.const -1 | |
i32.add | |
local.set 4 | |
local.get 3 | |
i32.const 1 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.set 1 | |
local.get 2 | |
i32.const 1 | |
i32.eq | |
br_if 1 (;@5;) | |
local.get 4 | |
local.set 2 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
br_if 0 (;@6;) | |
end | |
end | |
local.get 3 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 2 | |
local.set 4 | |
local.get 0 | |
local.tee 3 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
br_if 1 (;@2;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 4 | |
i32.const 16 | |
i32.lt_u | |
br_if 0 (;@4;) | |
local.get 4 | |
i32.const -16 | |
i32.add | |
local.set 2 | |
loop ;; label = @5 | |
local.get 3 | |
local.get 1 | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 1 | |
i32.const 4 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i32.const 8 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 1 | |
i32.const 12 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -16 | |
i32.add | |
local.tee 4 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@5;) | |
br 2 (;@3;) | |
end | |
end | |
local.get 4 | |
local.set 2 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 8 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i64.load align=4 | |
i64.store align=4 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.set 3 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 4 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i32.load | |
i32.store | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.set 3 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 2 | |
i32.add | |
local.set 1 | |
end | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 0 | |
return | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 32 | |
i32.lt_u | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 3 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const 2 | |
i32.eq | |
br_if 1 (;@3;) | |
local.get 2 | |
i32.const 1 | |
i32.ne | |
br_if 2 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 4 | |
i32.const -3 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 3 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @5 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 8 | |
i32.shl | |
local.get 5 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 8 | |
i32.shl | |
local.get 10 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 8 | |
i32.shl | |
local.get 5 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 8 | |
i32.shl | |
local.get 10 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 16 | |
i32.gt_u | |
br_if 0 (;@5;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 3 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -19 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
br 2 (;@2;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 1 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @4 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 24 | |
i32.shl | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 24 | |
i32.shl | |
local.get 10 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 24 | |
i32.shl | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 24 | |
i32.shl | |
local.get 10 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 18 | |
i32.gt_u | |
br_if 0 (;@4;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 1 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -17 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
br 1 (;@2;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 4 | |
i32.const -2 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @3 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 16 | |
i32.shl | |
local.get 5 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 16 | |
i32.shl | |
local.get 10 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 16 | |
i32.shl | |
local.get 5 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 16 | |
i32.shl | |
local.get 10 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 17 | |
i32.gt_u | |
br_if 0 (;@3;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 2 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -18 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 16 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load16_u align=1 | |
i32.store16 align=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=4 | |
i32.store8 offset=4 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=5 | |
i32.store8 offset=5 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=6 | |
i32.store8 offset=6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=7 | |
i32.store8 offset=7 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=8 | |
i32.store8 offset=8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=9 | |
i32.store8 offset=9 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=10 | |
i32.store8 offset=10 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=11 | |
i32.store8 offset=11 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=12 | |
i32.store8 offset=12 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=13 | |
i32.store8 offset=13 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=14 | |
i32.store8 offset=14 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=15 | |
i32.store8 offset=15 | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 8 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=4 | |
i32.store8 offset=4 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=5 | |
i32.store8 offset=5 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=6 | |
i32.store8 offset=6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=7 | |
i32.store8 offset=7 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 4 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 2 | |
i32.add | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
end | |
local.get 0) | |
(func $memset (type 2) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i64) | |
block ;; label = @1 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
i32.const -1 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 3 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=2 | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const -3 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 3 | |
i32.const -2 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 7 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=3 | |
local.get 3 | |
i32.const -4 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 9 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.const 3 | |
i32.and | |
local.tee 4 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.const 16843009 | |
i32.mul | |
local.tee 1 | |
i32.store | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.sub | |
i32.const -4 | |
i32.and | |
local.tee 4 | |
i32.add | |
local.tee 2 | |
i32.const -4 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
i32.const 9 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.store offset=8 | |
local.get 3 | |
local.get 1 | |
i32.store offset=4 | |
local.get 2 | |
i32.const -8 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -12 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
i32.const 25 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.store offset=24 | |
local.get 3 | |
local.get 1 | |
i32.store offset=20 | |
local.get 3 | |
local.get 1 | |
i32.store offset=16 | |
local.get 3 | |
local.get 1 | |
i32.store offset=12 | |
local.get 2 | |
i32.const -16 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -20 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -24 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -28 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.const 4 | |
i32.and | |
i32.const 24 | |
i32.or | |
local.tee 5 | |
i32.sub | |
local.tee 2 | |
i32.const 32 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 1 | |
i64.extend_i32_u | |
local.tee 6 | |
i64.const 32 | |
i64.shl | |
local.get 6 | |
i64.or | |
local.set 6 | |
local.get 3 | |
local.get 5 | |
i32.add | |
local.set 1 | |
loop ;; label = @2 | |
local.get 1 | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 32 | |
i32.add | |
local.set 1 | |
local.get 2 | |
i32.const -32 | |
i32.add | |
local.tee 2 | |
i32.const 31 | |
i32.gt_u | |
br_if 0 (;@2;) | |
end | |
end | |
local.get 0) | |
(func $strdup (type 0) (param i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
call $strlen | |
i32.const 1 | |
i32.add | |
local.tee 1 | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
local.get 0 | |
local.get 1 | |
call $memcpy | |
return | |
end | |
i32.const 0) | |
(func $strlen (type 0) (param i32) (result i32) | |
(local i32 i32 i32) | |
local.get 0 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 0 | |
i32.load8_u | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 1 | |
loop ;; label = @4 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@3;) | |
local.get 1 | |
i32.load8_u | |
local.set 2 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 3 | |
local.set 1 | |
local.get 2 | |
br_if 0 (;@4;) | |
end | |
local.get 3 | |
i32.const -1 | |
i32.add | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 1 | |
i32.const -4 | |
i32.add | |
local.set 1 | |
loop ;; label = @3 | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 2 | |
i32.const -1 | |
i32.xor | |
local.get 2 | |
i32.const -16843009 | |
i32.add | |
i32.and | |
i32.const -2139062144 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
end | |
local.get 2 | |
i32.const 255 | |
i32.and | |
i32.eqz | |
br_if 1 (;@1;) | |
loop ;; label = @3 | |
local.get 1 | |
i32.load8_u offset=1 | |
local.set 2 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 3 | |
local.set 1 | |
local.get 2 | |
br_if 0 (;@3;) | |
end | |
local.get 3 | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 0 | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 1 | |
local.get 0 | |
i32.sub) | |
(func $qsort (type 15) (param i32 i32 i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 704 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i64.const 1 | |
i64.store offset=8 | |
block ;; label = @1 | |
local.get 2 | |
local.get 1 | |
i32.mul | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 4 | |
local.get 2 | |
i32.store offset=16 | |
local.get 4 | |
local.get 2 | |
i32.store offset=20 | |
i32.const 0 | |
local.get 2 | |
i32.sub | |
local.set 6 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
i32.const 8 | |
i32.or | |
local.set 1 | |
local.get 2 | |
local.set 7 | |
local.get 2 | |
local.set 8 | |
loop ;; label = @2 | |
local.get 1 | |
local.get 8 | |
local.get 2 | |
i32.add | |
local.get 7 | |
local.tee 8 | |
i32.add | |
local.tee 7 | |
i32.store | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
local.get 8 | |
local.set 8 | |
local.get 7 | |
local.get 5 | |
i32.lt_u | |
br_if 0 (;@2;) | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
local.get 5 | |
i32.add | |
local.get 6 | |
i32.add | |
local.tee 9 | |
local.get 0 | |
i32.le_u | |
br_if 0 (;@3;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
i32.const 4 | |
i32.or | |
local.set 10 | |
i32.const 1 | |
local.set 1 | |
i32.const 1 | |
local.set 11 | |
loop ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 0 (;@11;) | |
local.get 4 | |
local.get 0 | |
i32.store offset=208 | |
local.get 11 | |
i32.const 2 | |
i32.lt_s | |
br_if 5 (;@6;) | |
i32.const 1 | |
local.set 12 | |
local.get 10 | |
local.set 5 | |
local.get 0 | |
local.set 13 | |
local.get 0 | |
local.set 1 | |
local.get 11 | |
local.set 14 | |
block ;; label = @12 | |
loop ;; label = @13 | |
block ;; label = @14 | |
local.get 13 | |
local.get 1 | |
local.get 6 | |
i32.add | |
local.tee 7 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 14 | |
i32.const -2 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 1 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@14;) | |
local.get 13 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@12;) | |
end | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
local.get 1 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@16;) | |
local.get 5 | |
local.get 1 | |
i32.store | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@15;) | |
br 2 (;@14;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store | |
local.get 7 | |
local.set 1 | |
local.get 8 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@14;) | |
end | |
local.get 12 | |
i32.const 1 | |
i32.add | |
local.set 12 | |
local.get 5 | |
i32.const 4 | |
i32.add | |
local.set 5 | |
local.get 4 | |
i32.load offset=208 | |
local.set 13 | |
local.get 8 | |
local.set 14 | |
br 1 (;@13;) | |
end | |
end | |
local.get 12 | |
i32.const 1 | |
i32.add | |
local.set 12 | |
end | |
local.get 12 | |
i32.const 2 | |
i32.lt_s | |
br_if 5 (;@6;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.get 12 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 15 | |
local.get 4 | |
i32.const 448 | |
i32.add | |
i32.store | |
local.get 2 | |
i32.eqz | |
br_if 5 (;@6;) | |
local.get 4 | |
i32.const 448 | |
i32.add | |
local.set 16 | |
local.get 2 | |
local.set 17 | |
br 1 (;@10;) | |
end | |
block ;; label = @11 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 11 | |
i32.const -1 | |
i32.add | |
local.tee 18 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
local.get 9 | |
local.get 0 | |
i32.sub | |
i32.ge_u | |
br_if 0 (;@11;) | |
local.get 4 | |
local.get 0 | |
i32.store offset=208 | |
local.get 11 | |
i32.const 2 | |
i32.lt_s | |
br_if 4 (;@7;) | |
i32.const 1 | |
local.set 19 | |
local.get 10 | |
local.set 5 | |
local.get 0 | |
local.set 13 | |
local.get 0 | |
local.set 1 | |
local.get 11 | |
local.set 14 | |
block ;; label = @12 | |
loop ;; label = @13 | |
block ;; label = @14 | |
local.get 13 | |
local.get 1 | |
local.get 6 | |
i32.add | |
local.tee 7 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 14 | |
i32.const -2 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 1 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@14;) | |
local.get 13 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@12;) | |
end | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
local.get 1 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@16;) | |
local.get 5 | |
local.get 1 | |
i32.store | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@15;) | |
br 2 (;@14;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store | |
local.get 7 | |
local.set 1 | |
local.get 8 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@14;) | |
end | |
local.get 19 | |
i32.const 1 | |
i32.add | |
local.set 19 | |
local.get 5 | |
i32.const 4 | |
i32.add | |
local.set 5 | |
local.get 4 | |
i32.load offset=208 | |
local.set 13 | |
local.get 8 | |
local.set 14 | |
br 1 (;@13;) | |
end | |
end | |
local.get 19 | |
i32.const 1 | |
i32.add | |
local.set 19 | |
end | |
local.get 19 | |
i32.const 2 | |
i32.lt_s | |
br_if 4 (;@7;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.get 19 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 20 | |
local.get 4 | |
i32.const 448 | |
i32.add | |
i32.store | |
local.get 2 | |
i32.eqz | |
br_if 4 (;@7;) | |
local.get 4 | |
i32.const 448 | |
i32.add | |
local.set 21 | |
local.get 2 | |
local.set 22 | |
br 2 (;@9;) | |
end | |
local.get 0 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 0 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
br 3 (;@7;) | |
end | |
i32.const 0 | |
local.set 1 | |
br 1 (;@8;) | |
end | |
i32.const 1 | |
local.set 1 | |
end | |
loop ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 1 | |
br_table 0 (;@10;) 1 (;@9;) 1 (;@9;) | |
end | |
local.get 16 | |
local.get 4 | |
i32.load offset=208 | |
local.tee 1 | |
local.get 17 | |
i32.const 256 | |
local.get 17 | |
i32.const 256 | |
i32.lt_u | |
select | |
local.tee 8 | |
call $memcpy | |
drop | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.set 7 | |
local.get 12 | |
local.set 5 | |
loop ;; label = @10 | |
local.get 1 | |
local.get 7 | |
i32.const 4 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 14 | |
local.get 8 | |
call $memcpy | |
drop | |
local.get 7 | |
local.get 1 | |
local.get 8 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 7 | |
local.get 14 | |
local.set 1 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@10;) | |
end | |
local.get 17 | |
local.get 8 | |
i32.sub | |
local.tee 17 | |
i32.eqz | |
br_if 3 (;@6;) | |
local.get 15 | |
i32.load | |
local.set 16 | |
i32.const 0 | |
local.set 1 | |
br 1 (;@8;) | |
end | |
local.get 21 | |
local.get 4 | |
i32.load offset=208 | |
local.tee 1 | |
local.get 22 | |
i32.const 256 | |
local.get 22 | |
i32.const 256 | |
i32.lt_u | |
select | |
local.tee 8 | |
call $memcpy | |
drop | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.set 7 | |
local.get 19 | |
local.set 5 | |
loop ;; label = @9 | |
local.get 1 | |
local.get 7 | |
i32.const 4 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 14 | |
local.get 8 | |
call $memcpy | |
drop | |
local.get 7 | |
local.get 1 | |
local.get 8 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 7 | |
local.get 14 | |
local.set 1 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@9;) | |
end | |
local.get 22 | |
local.get 8 | |
i32.sub | |
local.tee 22 | |
i32.eqz | |
br_if 1 (;@7;) | |
local.get 20 | |
i32.load | |
local.set 21 | |
i32.const 1 | |
local.set 1 | |
br 0 (;@8;) | |
end | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 11 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 18 | |
i32.const 31 | |
i32.le_u | |
br_if 1 (;@8;) | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 8 | |
i32.store offset=12 | |
i32.const 0 | |
local.set 7 | |
local.get 4 | |
i32.const 0 | |
i32.store offset=8 | |
local.get 11 | |
i32.const -33 | |
i32.add | |
local.set 18 | |
br 2 (;@7;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 7 | |
i32.const 1 | |
i32.shl | |
local.tee 1 | |
i32.store offset=8 | |
local.get 4 | |
local.get 7 | |
i32.const 31 | |
i32.shr_u | |
local.get 4 | |
i32.load offset=12 | |
i32.const 1 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
i32.const 0 | |
local.set 11 | |
br 3 (;@5;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.set 7 | |
local.get 4 | |
i32.load offset=12 | |
local.set 8 | |
end | |
local.get 4 | |
local.get 7 | |
local.get 18 | |
i32.shl | |
local.tee 1 | |
i32.store offset=8 | |
local.get 4 | |
local.get 7 | |
i32.const 32 | |
local.get 18 | |
i32.sub | |
i32.shr_u | |
local.get 8 | |
local.get 18 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
i32.const 1 | |
local.set 11 | |
br 1 (;@5;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 1 | |
i32.const 2 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 30 | |
i32.shl | |
local.get 4 | |
i32.load offset=8 | |
i32.const 2 | |
i32.shr_u | |
i32.or | |
local.tee 1 | |
i32.store offset=8 | |
local.get 11 | |
i32.const 2 | |
i32.add | |
local.set 11 | |
end | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
local.tee 1 | |
i32.store offset=8 | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.tee 0 | |
local.get 9 | |
i32.lt_u | |
br_if 0 (;@4;) | |
br 2 (;@2;) | |
end | |
end | |
i32.const 1 | |
local.set 11 | |
end | |
local.get 0 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 0 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 0 | |
local.get 6 | |
i32.add | |
local.set 5 | |
loop ;; label = @2 | |
local.get 4 | |
i32.load offset=8 | |
local.set 1 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 11 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@8;) | |
local.get 1 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@8;) | |
local.get 4 | |
i32.load offset=12 | |
br_if 1 (;@7;) | |
br 7 (;@1;) | |
end | |
local.get 11 | |
i32.const 1 | |
i32.gt_s | |
br_if 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
i32.const 1 | |
local.get 1 | |
i32.sub | |
local.get 1 | |
i32.const -1 | |
i32.add | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 7 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 7 | |
i32.const 1568 | |
i32.add | |
i32.load8_s | |
local.tee 13 | |
i32.const 31 | |
i32.le_u | |
br_if 1 (;@7;) | |
br 4 (;@4;) | |
end | |
i32.const 0 | |
local.set 13 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 8 | |
i32.const 0 | |
local.get 8 | |
i32.sub | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 7 | |
i32.eqz | |
br_if 2 (;@5;) | |
local.get 7 | |
i32.const 1568 | |
i32.add | |
i32.load8_s | |
i32.const 32 | |
i32.add | |
local.tee 13 | |
i32.const 31 | |
i32.gt_u | |
br_if 3 (;@4;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 8 | |
local.get 13 | |
local.set 7 | |
br 3 (;@3;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=12 | |
i32.const 2 | |
i32.shl | |
local.get 1 | |
i32.const 30 | |
i32.shr_u | |
local.tee 7 | |
i32.or | |
i32.const 1 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.shl | |
i32.const 2147483646 | |
i32.and | |
local.get 7 | |
i32.const 31 | |
i32.shl | |
i32.or | |
i32.const 3 | |
i32.xor | |
i32.store offset=8 | |
local.get 11 | |
i32.const -1 | |
i32.add | |
local.set 1 | |
local.get 5 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 11 | |
i32.const -2 | |
i32.add | |
local.tee 11 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i32.const 1 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 1 | |
i32.const 31 | |
i32.shr_u | |
local.get 4 | |
i32.load offset=12 | |
i32.const 1 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.shl | |
i32.const 1 | |
i32.or | |
i32.store offset=8 | |
local.get 5 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 1 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.set 5 | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
local.set 7 | |
br 1 (;@3;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 1 | |
i32.const 0 | |
local.set 8 | |
local.get 4 | |
i32.const 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 13 | |
i32.const -32 | |
i32.add | |
local.set 7 | |
end | |
local.get 4 | |
local.get 8 | |
local.get 7 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 8 | |
i32.const 32 | |
local.get 7 | |
i32.sub | |
i32.shl | |
local.get 1 | |
local.get 7 | |
i32.shr_u | |
i32.or | |
i32.store offset=8 | |
local.get 13 | |
local.get 11 | |
i32.add | |
local.set 11 | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.set 5 | |
br 0 (;@2;) | |
end | |
end | |
local.get 4 | |
i32.const 704 | |
i32.add | |
global.set 0) | |
(func $trinkle (type 16) (param i32 i32 i32 i32 i32 i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 736 | |
i32.sub | |
local.tee 7 | |
global.set 0 | |
local.get 7 | |
local.get 0 | |
i32.store | |
local.get 3 | |
i32.load | |
local.set 8 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 3 | |
i32.load offset=4 | |
local.tee 9 | |
br_if 0 (;@5;) | |
i32.const 1 | |
local.set 10 | |
local.get 8 | |
i32.const 1 | |
i32.eq | |
br_if 1 (;@4;) | |
end | |
i32.const 1 | |
local.set 10 | |
local.get 0 | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 11 | |
local.get 0 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const 1 | |
i32.lt_s | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 1 | |
i32.sub | |
local.set 12 | |
local.get 7 | |
i32.const 4 | |
i32.or | |
local.set 13 | |
local.get 5 | |
i32.eqz | |
local.set 5 | |
i32.const 1 | |
local.set 10 | |
br 1 (;@3;) | |
end | |
local.get 0 | |
local.set 3 | |
local.get 5 | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
block ;; label = @3 | |
loop ;; label = @4 | |
local.get 11 | |
local.set 3 | |
block ;; label = @5 | |
local.get 5 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 4 | |
i32.const 2 | |
i32.lt_s | |
br_if 0 (;@5;) | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.const -8 | |
i32.add | |
i32.load | |
local.set 11 | |
local.get 0 | |
local.get 12 | |
i32.add | |
local.tee 5 | |
local.get 3 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@3;) | |
local.get 5 | |
local.get 11 | |
i32.sub | |
local.get 3 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@3;) | |
end | |
local.get 13 | |
local.get 3 | |
i32.store | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
i32.const 1 | |
local.get 8 | |
i32.sub | |
local.get 8 | |
i32.const -1 | |
i32.add | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@7;) | |
local.get 0 | |
i32.const 1568 | |
i32.add | |
i32.load8_s | |
local.set 0 | |
br 1 (;@6;) | |
end | |
i32.const 0 | |
local.set 0 | |
block ;; label = @7 | |
local.get 9 | |
i32.const 0 | |
local.get 9 | |
i32.sub | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 11 | |
br_if 0 (;@7;) | |
i32.const 0 | |
local.set 11 | |
br 2 (;@5;) | |
end | |
local.get 11 | |
i32.const 1568 | |
i32.add | |
i32.load8_s | |
i32.const 32 | |
i32.add | |
local.set 0 | |
end | |
local.get 0 | |
i32.const -32 | |
i32.add | |
local.get 0 | |
local.get 0 | |
i32.const 31 | |
i32.gt_u | |
local.tee 5 | |
select | |
local.set 11 | |
local.get 9 | |
local.get 8 | |
local.get 5 | |
select | |
local.set 8 | |
i32.const 0 | |
local.get 9 | |
local.get 5 | |
select | |
local.set 9 | |
end | |
local.get 10 | |
i32.const 1 | |
i32.add | |
local.set 10 | |
local.get 9 | |
i32.const 32 | |
local.get 11 | |
i32.sub | |
i32.shl | |
local.get 8 | |
local.get 11 | |
i32.shr_u | |
i32.or | |
local.set 8 | |
local.get 0 | |
local.get 4 | |
i32.add | |
local.set 4 | |
block ;; label = @5 | |
local.get 9 | |
local.get 11 | |
i32.shr_u | |
local.tee 9 | |
br_if 0 (;@5;) | |
local.get 8 | |
i32.const 1 | |
i32.eq | |
br_if 3 (;@2;) | |
end | |
local.get 13 | |
i32.const 4 | |
i32.add | |
local.set 13 | |
i32.const 1 | |
local.set 5 | |
local.get 3 | |
local.set 0 | |
local.get 3 | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 11 | |
local.get 7 | |
i32.load | |
local.get 2 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.gt_s | |
br_if 0 (;@4;) | |
end | |
i32.const 0 | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
local.get 0 | |
local.set 3 | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 10 | |
i32.const 2 | |
i32.lt_u | |
br_if 0 (;@5;) | |
local.get 7 | |
local.get 10 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 14 | |
local.get 7 | |
i32.const 480 | |
i32.add | |
i32.store | |
local.get 1 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 7 | |
i32.const 480 | |
i32.add | |
local.set 15 | |
i32.const 256 | |
local.set 16 | |
i32.const 4 | |
local.set 17 | |
i32.const -1 | |
local.set 18 | |
local.get 1 | |
local.set 19 | |
i32.const 0 | |
local.set 20 | |
br 2 (;@3;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 1 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
end | |
loop ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 8 | |
br_table 0 (;@8;) 1 (;@7;) 1 (;@7;) | |
end | |
local.get 7 | |
local.get 3 | |
i32.store offset=240 | |
local.get 4 | |
i32.const 1 | |
i32.le_s | |
br_if 6 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.sub | |
local.set 13 | |
local.get 7 | |
i32.const 240 | |
i32.add | |
i32.const 4 | |
i32.or | |
local.set 11 | |
i32.const 1 | |
local.set 21 | |
local.get 3 | |
local.set 8 | |
block ;; label = @8 | |
loop ;; label = @9 | |
block ;; label = @10 | |
local.get 3 | |
local.get 8 | |
local.get 13 | |
i32.add | |
local.tee 9 | |
local.get 6 | |
local.get 4 | |
i32.const -2 | |
i32.add | |
local.tee 0 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 8 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@10;) | |
local.get 3 | |
local.get 9 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@8;) | |
end | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
local.get 8 | |
local.get 9 | |
local.get 2 | |
call_indirect (type 1) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@12;) | |
local.get 11 | |
local.get 8 | |
i32.store | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@11;) | |
br 2 (;@10;) | |
end | |
local.get 11 | |
local.get 9 | |
i32.store | |
local.get 9 | |
local.set 8 | |
local.get 0 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@10;) | |
end | |
local.get 21 | |
i32.const 1 | |
i32.add | |
local.set 21 | |
local.get 11 | |
i32.const 4 | |
i32.add | |
local.set 11 | |
local.get 7 | |
i32.load offset=240 | |
local.set 3 | |
local.get 0 | |
local.set 4 | |
br 1 (;@9;) | |
end | |
end | |
local.get 21 | |
i32.const 1 | |
i32.add | |
local.set 21 | |
end | |
local.get 21 | |
i32.const 2 | |
i32.lt_s | |
br_if 6 (;@1;) | |
local.get 7 | |
i32.const 240 | |
i32.add | |
local.get 21 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 22 | |
local.get 7 | |
i32.const 480 | |
i32.add | |
i32.store | |
local.get 1 | |
i32.eqz | |
br_if 6 (;@1;) | |
local.get 7 | |
i32.const 480 | |
i32.add | |
local.set 23 | |
i32.const 256 | |
local.set 24 | |
i32.const 4 | |
local.set 25 | |
i32.const -1 | |
local.set 26 | |
br 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 20 | |
br_table 0 (;@8;) 1 (;@7;) 1 (;@7;) | |
end | |
local.get 15 | |
local.get 7 | |
i32.load | |
local.tee 8 | |
local.get 19 | |
local.get 16 | |
local.get 19 | |
local.get 16 | |
i32.lt_u | |
select | |
local.tee 0 | |
call $memcpy | |
drop | |
local.get 7 | |
local.set 9 | |
local.get 10 | |
local.set 11 | |
loop ;; label = @8 | |
local.get 8 | |
local.get 9 | |
local.get 17 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
call $memcpy | |
drop | |
local.get 9 | |
local.get 8 | |
local.get 0 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 9 | |
local.get 5 | |
local.set 8 | |
local.get 11 | |
local.get 18 | |
i32.add | |
local.tee 11 | |
br_if 0 (;@8;) | |
end | |
block ;; label = @8 | |
local.get 19 | |
local.get 0 | |
i32.sub | |
local.tee 19 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 14 | |
i32.load | |
local.set 15 | |
i32.const 0 | |
local.set 20 | |
br 3 (;@5;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 5 (;@2;) | |
end | |
local.get 23 | |
local.get 7 | |
i32.load offset=240 | |
local.tee 8 | |
local.get 1 | |
local.get 24 | |
local.get 1 | |
local.get 24 | |
i32.lt_u | |
select | |
local.tee 0 | |
call $memcpy | |
drop | |
local.get 7 | |
i32.const 240 | |
i32.add | |
local.set 9 | |
local.get 21 | |
local.set 11 | |
loop ;; label = @7 | |
local.get 8 | |
local.get 9 | |
local.get 25 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
call $memcpy | |
drop | |
local.get 9 | |
local.get 8 | |
local.get 0 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 9 | |
local.get 5 | |
local.set 8 | |
local.get 11 | |
local.get 26 | |
i32.add | |
local.tee 11 | |
br_if 0 (;@7;) | |
end | |
local.get 1 | |
local.get 0 | |
i32.sub | |
local.tee 1 | |
i32.eqz | |
br_if 5 (;@1;) | |
local.get 22 | |
i32.load | |
local.set 23 | |
i32.const 1 | |
local.set 20 | |
br 3 (;@3;) | |
end | |
i32.const 1 | |
local.set 20 | |
br 1 (;@4;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 2 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 1 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 0 (;@2;) | |
end | |
end | |
local.get 7 | |
i32.const 736 | |
i32.add | |
global.set 0) | |
(table (;0;) 2 2 anyfunc) | |
(memory (;0;) 2) | |
(global (;0;) (mut i32) (i32.const 67136)) | |
(global (;1;) i32 (i32.const 67136)) | |
(global (;2;) i32 (i32.const 1600)) | |
(global (;3;) i32 (i32.const 1024)) | |
(global (;4;) i32 (i32.const 1528)) | |
(global (;5;) i32 (i32.const 1520)) | |
(global (;6;) i32 (i32.const 1528)) | |
(global (;7;) i32 (i32.const 1528)) | |
(global (;8;) i32 (i32.const 1528)) | |
(export "memory" (memory 0)) | |
(export "__wasm_call_ctors" (func $__wasm_call_ctors)) | |
(export "__heap_base" (global 1)) | |
(export "__data_end" (global 2)) | |
(export "__dso_handle" (global 3)) | |
(export "__original_main" (func $__original_main)) | |
(export "main" (func $main)) | |
(export "_start" (func $_start)) | |
(export "__wasilibc_init_preopen" (func $__wasilibc_init_preopen)) | |
(export "malloc" (func $malloc)) | |
(export "__wasilibc_register_preopened_fd" (func $__wasilibc_register_preopened_fd)) | |
(export "free" (func $free)) | |
(export "__environ" (global 4)) | |
(export "_Exit" (func $_Exit)) | |
(export "__prepare_for_exit" (func $__prepare_for_exit)) | |
(export "sbrk" (func $sbrk)) | |
(export "errno" (global 5)) | |
(export "calloc" (func $calloc)) | |
(export "memset" (func $memset)) | |
(export "realloc" (func $realloc)) | |
(export "memcpy" (func $memcpy)) | |
(export "posix_memalign" (func $posix_memalign)) | |
(export "aligned_alloc" (func $aligned_alloc)) | |
(export "malloc_usable_size" (func $malloc_usable_size)) | |
(export "fdopendir" (func $fdopendir)) | |
(export "opendirat" (func $opendirat)) | |
(export "scandirat" (func $scandirat)) | |
(export "faccessat" (func $faccessat)) | |
(export "readlinkat" (func $readlinkat)) | |
(export "__wasilibc_rmdirat" (func $__wasilibc_rmdirat)) | |
(export "linkat" (func $linkat)) | |
(export "symlinkat" (func $symlinkat)) | |
(export "__wasilibc_rmfileat" (func $__wasilibc_rmfileat)) | |
(export "close" (func $close)) | |
(export "fstatat" (func $fstatat)) | |
(export "mkdirat" (func $mkdirat)) | |
(export "renameat" (func $renameat)) | |
(export "_exit" (func $_Exit)) | |
(export "openat" (func $openat)) | |
(export "open" (func $open)) | |
(export "access" (func $access)) | |
(export "eaccess" (func $eaccess)) | |
(export "lstat" (func $lstat)) | |
(export "rename" (func $rename)) | |
(export "stat" (func $stat)) | |
(export "unlink" (func $unlink)) | |
(export "rmdir" (func $rmdir)) | |
(export "remove" (func $remove)) | |
(export "link" (func $link)) | |
(export "mkdir" (func $mkdir)) | |
(export "opendir" (func $opendir)) | |
(export "readlink" (func $readlink)) | |
(export "scandir" (func $scandir)) | |
(export "symlink" (func $symlink)) | |
(export "strlen" (func $strlen)) | |
(export "abort" (func $abort)) | |
(export "memchr" (func $memchr)) | |
(export "qsort" (func $qsort)) | |
(export "strdup" (func $strdup)) | |
(export "__wasilibc_find_relpath" (func $__wasilibc_find_relpath)) | |
(export "__funcs_on_exit" (func $dummy)) | |
(export "__stdio_exit" (func $dummy)) | |
(export "exit" (func $exit)) | |
(export "_fini" (func $dummy)) | |
(export "___environ" (global 6)) | |
(export "_environ" (global 7)) | |
(export "environ" (global 8)) | |
(elem (;0;) (i32.const 1) $sel_true) | |
(data (;0;) (i32.const 1024) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") | |
(data (;1;) (i32.const 1536) "\00`\00\00\00 \00\00\00@\00\00\00\80\00\00\00\c0\00\00\00\c0\00\00\00\a0\00\00.\00\00\00\00\01\17\02\1d\18\13\03\1e\1b\19\0b\14\08\04\0d\1f\16\1c\12\1a\0a\07\0c\15\11\09\06\10\05\0f\0e")) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(module | |
(type (;0;) (func (param i32 i32) (result i32))) | |
(type (;1;) (func (param i32) (result i32))) | |
(type (;2;) (func)) | |
(type (;3;) (func (param i32 i32 i32 i32) (result i32))) | |
(type (;4;) (func (param i32 i32 i32) (result i32))) | |
(type (;5;) (func (param i32))) | |
(type (;6;) (func (param i32 i32 i32 i32 i32 i64 i64 i32 i32) (result i32))) | |
(type (;7;) (func (param i32 i32 i32 i32 i32) (result i32))) | |
(type (;8;) (func (param i32 i32 i32 i32 i32 i32) (result i32))) | |
(type (;9;) (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) | |
(type (;10;) (func (param i32 i32 i32 i64 i32) (result i32))) | |
(type (;11;) (func (param i32 i32))) | |
(type (;12;) (func (param i32 i32 i64 i64))) | |
(type (;13;) (func (param i32 i64 i64 i32) (result i32))) | |
(type (;14;) (func (param i32 i32 i32 i32))) | |
(type (;15;) (func (param i32 i32 i32 i32 i32 i32 i32))) | |
(import "wasi_unstable" "proc_raise" (func $proc_raise (type 1))) | |
(import "env" "__stack_chk_fail" (func $__stack_chk_fail (type 2))) | |
(import "wasi_unstable" "fd_write" (func $fd_write (type 3))) | |
(import "wasi_unstable" "fd_prestat_get" (func $__wasi_fd_prestat_get (type 0))) | |
(import "wasi_unstable" "fd_prestat_dir_name" (func $__wasi_fd_prestat_dir_name (type 4))) | |
(import "wasi_unstable" "environ_sizes_get" (func $__wasi_environ_sizes_get (type 0))) | |
(import "wasi_unstable" "environ_get" (func $__wasi_environ_get (type 0))) | |
(import "wasi_unstable" "args_sizes_get" (func $__wasi_args_sizes_get (type 0))) | |
(import "wasi_unstable" "args_get" (func $__wasi_args_get (type 0))) | |
(import "wasi_unstable" "proc_exit" (func $__wasi_proc_exit (type 5))) | |
(import "wasi_unstable" "fd_fdstat_get" (func $__wasi_fd_fdstat_get (type 0))) | |
(import "wasi_unstable" "path_open" (func $__wasi_path_open (type 6))) | |
(import "wasi_unstable" "path_filestat_get" (func $__wasi_path_filestat_get (type 7))) | |
(import "wasi_unstable" "path_rename" (func $__wasi_path_rename (type 8))) | |
(import "wasi_unstable" "path_unlink_file" (func $__wasi_path_unlink_file (type 4))) | |
(import "wasi_unstable" "path_remove_directory" (func $__wasi_path_remove_directory (type 4))) | |
(import "wasi_unstable" "path_link" (func $__wasi_path_link (type 9))) | |
(import "wasi_unstable" "path_create_directory" (func $__wasi_path_create_directory (type 4))) | |
(import "wasi_unstable" "fd_readdir" (func $__wasi_fd_readdir (type 10))) | |
(import "wasi_unstable" "fd_close" (func $__wasi_fd_close (type 1))) | |
(import "wasi_unstable" "path_readlink" (func $__wasi_path_readlink (type 8))) | |
(import "wasi_unstable" "path_symlink" (func $__wasi_path_symlink (type 7))) | |
(func $__wasm_call_ctors (type 2)) | |
(func $std.special.panic (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
i32.const 1592 | |
local.set 5 | |
i32.const 0 | |
local.set 6 | |
i32.const 6 | |
local.set 7 | |
local.get 4 | |
local.get 1 | |
i32.store offset=12 | |
local.get 0 | |
call $std.debug.warn | |
local.get 7 | |
call $proc_raise | |
drop | |
local.get 5 | |
local.get 6 | |
call $std.special.panic | |
unreachable) | |
(func $std.debug.warn (type 5) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 1 | |
i32.const 32 | |
local.set 2 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
local.set 3 | |
local.get 3 | |
global.set 0 | |
i32.const 0 | |
local.set 4 | |
i32.const 16 | |
local.set 5 | |
local.get 3 | |
local.get 5 | |
i32.add | |
local.set 6 | |
local.get 6 | |
local.set 7 | |
i32.const 8 | |
local.set 8 | |
local.get 3 | |
local.get 8 | |
i32.add | |
local.set 9 | |
local.get 9 | |
local.set 10 | |
i32.const 24 | |
local.set 11 | |
local.get 3 | |
local.get 11 | |
i32.add | |
local.set 12 | |
local.get 12 | |
local.set 13 | |
i32.const 1024 | |
local.set 14 | |
i32.const 0 | |
local.set 15 | |
local.get 15 | |
i32.load | |
local.set 16 | |
local.get 3 | |
local.get 16 | |
i32.store offset=28 | |
local.get 13 | |
local.get 14 | |
call $std.mutex.Mutex.acquire | |
local.get 13 | |
i32.load | |
local.set 17 | |
local.get 10 | |
local.get 17 | |
i32.store | |
local.get 7 | |
call $std.debug.getStderrStream | |
local.get 3 | |
i32.load16_u offset=16 | |
local.set 18 | |
i32.const 65535 | |
local.set 19 | |
local.get 18 | |
local.get 19 | |
i32.and | |
local.set 20 | |
i32.const 65535 | |
local.set 21 | |
local.get 4 | |
local.get 21 | |
i32.and | |
local.set 22 | |
local.get 20 | |
local.get 22 | |
i32.ne | |
local.set 23 | |
i32.const 1 | |
local.set 24 | |
local.get 23 | |
local.get 24 | |
i32.and | |
local.set 25 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 25 | |
i32.eqz | |
br_if 0 (;@4;) | |
i32.const 8 | |
local.set 26 | |
local.get 3 | |
local.get 26 | |
i32.add | |
local.set 27 | |
local.get 27 | |
local.set 28 | |
local.get 28 | |
call $std.mutex.Held.release | |
i32.const 0 | |
local.set 29 | |
local.get 29 | |
i32.load | |
local.set 30 | |
local.get 3 | |
i32.load offset=28 | |
local.set 31 | |
local.get 30 | |
local.set 32 | |
local.get 31 | |
local.set 33 | |
local.get 32 | |
local.get 33 | |
i32.eq | |
local.set 34 | |
i32.const 1 | |
local.set 35 | |
local.get 34 | |
local.get 35 | |
i32.and | |
local.set 36 | |
local.get 36 | |
i32.eqz | |
br_if 1 (;@3;) | |
i32.const 32 | |
local.set 37 | |
local.get 3 | |
local.get 37 | |
i32.add | |
local.set 38 | |
local.get 38 | |
global.set 0 | |
return | |
end | |
local.get 3 | |
i32.load offset=20 | |
local.set 39 | |
i32.const 0 | |
local.set 40 | |
local.get 3 | |
local.get 39 | |
i32.store | |
local.get 3 | |
i32.load | |
local.set 41 | |
local.get 41 | |
local.get 0 | |
call $std.io.OutStream_error_SystemResources_OperationAborted_BrokenPipe_Unexpected_DiskQuota_FileTooBig_InputOutput_NoSpaceLeft_AccessDenied___.print | |
local.set 42 | |
local.get 3 | |
local.get 42 | |
i32.store16 offset=6 | |
i32.const 65535 | |
local.set 43 | |
local.get 42 | |
local.get 43 | |
i32.and | |
local.set 44 | |
i32.const 65535 | |
local.set 45 | |
local.get 40 | |
local.get 45 | |
i32.and | |
local.set 46 | |
local.get 44 | |
local.get 46 | |
i32.ne | |
local.set 47 | |
i32.const 1 | |
local.set 48 | |
local.get 47 | |
local.get 48 | |
i32.and | |
local.set 49 | |
block ;; label = @4 | |
local.get 49 | |
i32.eqz | |
br_if 0 (;@4;) | |
i32.const 8 | |
local.set 50 | |
local.get 3 | |
local.get 50 | |
i32.add | |
local.set 51 | |
local.get 51 | |
local.set 52 | |
local.get 52 | |
call $std.mutex.Held.release | |
i32.const 0 | |
local.set 53 | |
local.get 53 | |
i32.load | |
local.set 54 | |
local.get 3 | |
i32.load offset=28 | |
local.set 55 | |
local.get 54 | |
local.set 56 | |
local.get 55 | |
local.set 57 | |
local.get 56 | |
local.get 57 | |
i32.eq | |
local.set 58 | |
i32.const 1 | |
local.set 59 | |
local.get 58 | |
local.get 59 | |
i32.and | |
local.set 60 | |
local.get 60 | |
i32.eqz | |
br_if 2 (;@2;) | |
i32.const 32 | |
local.set 61 | |
local.get 3 | |
local.get 61 | |
i32.add | |
local.set 62 | |
local.get 62 | |
global.set 0 | |
return | |
end | |
i32.const 8 | |
local.set 63 | |
local.get 3 | |
local.get 63 | |
i32.add | |
local.set 64 | |
local.get 64 | |
local.set 65 | |
local.get 65 | |
call $std.mutex.Held.release | |
i32.const 0 | |
local.set 66 | |
local.get 66 | |
i32.load | |
local.set 67 | |
local.get 3 | |
i32.load offset=28 | |
local.set 68 | |
local.get 67 | |
local.set 69 | |
local.get 68 | |
local.set 70 | |
local.get 69 | |
local.get 70 | |
i32.eq | |
local.set 71 | |
i32.const 1 | |
local.set 72 | |
local.get 71 | |
local.get 72 | |
i32.and | |
local.set 73 | |
local.get 73 | |
i32.eqz | |
br_if 2 (;@1;) | |
i32.const 32 | |
local.set 74 | |
local.get 3 | |
local.get 74 | |
i32.add | |
local.set 75 | |
local.get 75 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable | |
end | |
call $__stack_chk_fail | |
unreachable | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.mutex.Mutex.acquire (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
i32.const 0 | |
local.set 5 | |
local.get 5 | |
i32.load | |
local.set 6 | |
local.get 4 | |
local.get 6 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=4 | |
local.get 4 | |
i32.load offset=4 | |
local.set 7 | |
local.get 7 | |
i32.load8_u | |
local.set 8 | |
i32.const 1 | |
local.set 9 | |
local.get 8 | |
local.get 9 | |
i32.and | |
local.set 10 | |
block ;; label = @1 | |
local.get 10 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 1620 | |
local.set 11 | |
i32.const 0 | |
local.set 12 | |
local.get 11 | |
local.get 12 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 8 | |
local.set 13 | |
local.get 4 | |
local.get 13 | |
i32.add | |
local.set 14 | |
local.get 14 | |
local.set 15 | |
local.get 4 | |
i32.load offset=4 | |
local.set 16 | |
local.get 4 | |
local.get 16 | |
i32.store offset=8 | |
local.get 15 | |
i32.load | |
local.set 17 | |
local.get 0 | |
local.get 17 | |
i32.store | |
i32.const 0 | |
local.set 18 | |
local.get 18 | |
i32.load | |
local.set 19 | |
local.get 4 | |
i32.load offset=12 | |
local.set 20 | |
local.get 19 | |
local.set 21 | |
local.get 20 | |
local.set 22 | |
local.get 21 | |
local.get 22 | |
i32.eq | |
local.set 23 | |
i32.const 1 | |
local.set 24 | |
local.get 23 | |
local.get 24 | |
i32.and | |
local.set 25 | |
block ;; label = @1 | |
local.get 25 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 16 | |
local.set 26 | |
local.get 4 | |
local.get 26 | |
i32.add | |
local.set 27 | |
local.get 27 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.debug.getStderrStream (type 5) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 1 | |
i32.const 48 | |
local.set 2 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
local.set 3 | |
local.get 3 | |
global.set 0 | |
i32.const 0 | |
local.set 4 | |
i32.const 0 | |
local.set 5 | |
local.get 5 | |
i32.load | |
local.set 6 | |
local.get 3 | |
local.get 6 | |
i32.store offset=44 | |
i32.const 0 | |
local.set 7 | |
local.get 7 | |
i32.load offset=1028 | |
local.set 8 | |
local.get 8 | |
local.set 9 | |
local.get 4 | |
local.set 10 | |
local.get 9 | |
local.get 10 | |
i32.ne | |
local.set 11 | |
i32.const 1 | |
local.set 12 | |
local.get 11 | |
local.get 12 | |
i32.and | |
local.set 13 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 13 | |
i32.eqz | |
br_if 0 (;@4;) | |
i32.const 32 | |
local.set 14 | |
local.get 3 | |
local.get 14 | |
i32.add | |
local.set 15 | |
local.get 15 | |
local.set 16 | |
i32.const 0 | |
local.set 17 | |
i32.const 0 | |
local.set 18 | |
local.get 18 | |
i32.load offset=1028 | |
local.set 19 | |
local.get 3 | |
local.get 19 | |
i32.store offset=4 | |
local.get 3 | |
i32.load offset=4 | |
local.set 20 | |
local.get 3 | |
local.get 17 | |
i32.store16 offset=32 | |
local.get 3 | |
local.get 20 | |
i32.store offset=36 | |
local.get 16 | |
i64.load align=4 | |
local.set 21 | |
local.get 0 | |
local.get 21 | |
i64.store align=4 | |
i32.const 0 | |
local.set 22 | |
local.get 22 | |
i32.load | |
local.set 23 | |
local.get 3 | |
i32.load offset=44 | |
local.set 24 | |
local.get 23 | |
local.set 25 | |
local.get 24 | |
local.set 26 | |
local.get 25 | |
local.get 26 | |
i32.eq | |
local.set 27 | |
i32.const 1 | |
local.set 28 | |
local.get 27 | |
local.get 28 | |
i32.and | |
local.set 29 | |
local.get 29 | |
i32.eqz | |
br_if 1 (;@3;) | |
i32.const 48 | |
local.set 30 | |
local.get 3 | |
local.get 30 | |
i32.add | |
local.set 31 | |
local.get 31 | |
global.set 0 | |
return | |
end | |
i32.const 0 | |
local.set 32 | |
i32.const 24 | |
local.set 33 | |
local.get 3 | |
local.get 33 | |
i32.add | |
local.set 34 | |
local.get 34 | |
local.set 35 | |
local.get 35 | |
call $std.io.getStdErr | |
local.get 3 | |
i32.load16_u offset=24 | |
local.set 36 | |
i32.const 65535 | |
local.set 37 | |
local.get 36 | |
local.get 37 | |
i32.and | |
local.set 38 | |
i32.const 65535 | |
local.set 39 | |
local.get 32 | |
local.get 39 | |
i32.and | |
local.set 40 | |
local.get 38 | |
local.get 40 | |
i32.ne | |
local.set 41 | |
i32.const 1 | |
local.set 42 | |
local.get 41 | |
local.get 42 | |
i32.and | |
local.set 43 | |
block ;; label = @4 | |
local.get 43 | |
i32.eqz | |
br_if 0 (;@4;) | |
i32.const 16 | |
local.set 44 | |
local.get 3 | |
local.get 44 | |
i32.add | |
local.set 45 | |
local.get 45 | |
local.set 46 | |
local.get 3 | |
i32.load16_u offset=24 | |
local.set 47 | |
local.get 3 | |
local.get 47 | |
i32.store16 offset=16 | |
local.get 46 | |
i64.load align=4 | |
local.set 48 | |
local.get 0 | |
local.get 48 | |
i64.store align=4 | |
i32.const 0 | |
local.set 49 | |
local.get 49 | |
i32.load | |
local.set 50 | |
local.get 3 | |
i32.load offset=44 | |
local.set 51 | |
local.get 50 | |
local.set 52 | |
local.get 51 | |
local.set 53 | |
local.get 52 | |
local.get 53 | |
i32.eq | |
local.set 54 | |
i32.const 1 | |
local.set 55 | |
local.get 54 | |
local.get 55 | |
i32.and | |
local.set 56 | |
local.get 56 | |
i32.eqz | |
br_if 2 (;@2;) | |
i32.const 48 | |
local.set 57 | |
local.get 3 | |
local.get 57 | |
i32.add | |
local.set 58 | |
local.get 58 | |
global.set 0 | |
return | |
end | |
i32.const 1036 | |
local.set 59 | |
i32.const 4 | |
local.set 60 | |
local.get 59 | |
local.get 60 | |
i32.add | |
local.set 61 | |
i32.const 8 | |
local.set 62 | |
local.get 3 | |
local.get 62 | |
i32.add | |
local.set 63 | |
local.get 63 | |
local.set 64 | |
i32.const 1032 | |
local.set 65 | |
i32.const 24 | |
local.set 66 | |
local.get 3 | |
local.get 66 | |
i32.add | |
local.set 67 | |
local.get 67 | |
local.set 68 | |
i32.const 4 | |
local.set 69 | |
local.get 68 | |
local.get 69 | |
i32.add | |
local.set 70 | |
local.get 70 | |
i32.load | |
local.set 71 | |
i32.const 0 | |
local.set 72 | |
local.get 72 | |
local.get 71 | |
i32.store offset=1032 | |
local.get 64 | |
local.get 65 | |
call $std.os.file.File.outStream | |
local.get 64 | |
i64.load align=4 | |
local.set 73 | |
i32.const 0 | |
local.set 74 | |
local.get 74 | |
local.get 73 | |
i64.store offset=1036 align=4 | |
local.get 3 | |
local.get 61 | |
i32.store | |
i32.const 0 | |
local.set 75 | |
local.get 75 | |
local.get 61 | |
i32.store offset=1028 | |
i32.const 0 | |
local.set 76 | |
local.get 76 | |
i64.load offset=1628 align=4 | |
local.set 77 | |
local.get 0 | |
local.get 77 | |
i64.store align=4 | |
i32.const 0 | |
local.set 78 | |
local.get 78 | |
i32.load | |
local.set 79 | |
local.get 3 | |
i32.load offset=44 | |
local.set 80 | |
local.get 79 | |
local.set 81 | |
local.get 80 | |
local.set 82 | |
local.get 81 | |
local.get 82 | |
i32.eq | |
local.set 83 | |
i32.const 1 | |
local.set 84 | |
local.get 83 | |
local.get 84 | |
i32.and | |
local.set 85 | |
local.get 85 | |
i32.eqz | |
br_if 2 (;@1;) | |
i32.const 48 | |
local.set 86 | |
local.get 3 | |
local.get 86 | |
i32.add | |
local.set 87 | |
local.get 87 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable | |
end | |
call $__stack_chk_fail | |
unreachable | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.mutex.Held.release (type 5) (param i32) | |
(local i32 i32 i32 i32) | |
i32.const 0 | |
local.set 1 | |
local.get 0 | |
i32.load | |
local.set 2 | |
i32.const 1 | |
local.set 3 | |
local.get 1 | |
local.get 3 | |
i32.and | |
local.set 4 | |
local.get 2 | |
local.get 4 | |
i32.store8 | |
return) | |
(func $std.io.OutStream_error_SystemResources_OperationAborted_BrokenPipe_Unexpected_DiskQuota_FileTooBig_InputOutput_NoSpaceLeft_AccessDenied___.print (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
i32.load offset=12 | |
local.set 5 | |
local.get 4 | |
i32.load offset=12 | |
local.set 6 | |
local.get 6 | |
i32.load | |
local.set 7 | |
local.get 5 | |
local.get 7 | |
local.get 1 | |
call $std.fmt.format | |
local.set 8 | |
i32.const 16 | |
local.set 9 | |
local.get 4 | |
local.get 9 | |
i32.add | |
local.set 10 | |
local.get 10 | |
global.set 0 | |
local.get 8 | |
return) | |
(func $std.io.getStdErr (type 5) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 1 | |
i32.const 16 | |
local.set 2 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
local.set 3 | |
local.get 3 | |
global.set 0 | |
local.get 3 | |
local.set 4 | |
i32.const 8 | |
local.set 5 | |
local.get 3 | |
local.get 5 | |
i32.add | |
local.set 6 | |
local.get 6 | |
local.set 7 | |
i32.const 0 | |
local.set 8 | |
i32.const 2 | |
local.set 9 | |
i32.const 0 | |
local.set 10 | |
local.get 10 | |
i32.load | |
local.set 11 | |
local.get 3 | |
local.get 11 | |
i32.store offset=12 | |
local.get 7 | |
local.get 9 | |
call $std.os.file.File.openHandle | |
local.get 3 | |
local.get 8 | |
i32.store16 | |
i32.const 4 | |
local.set 12 | |
local.get 4 | |
local.get 12 | |
i32.add | |
local.set 13 | |
local.get 7 | |
i32.load | |
local.set 14 | |
local.get 13 | |
local.get 14 | |
i32.store | |
local.get 4 | |
i64.load align=4 | |
local.set 15 | |
local.get 0 | |
local.get 15 | |
i64.store align=4 | |
i32.const 0 | |
local.set 16 | |
local.get 16 | |
i32.load | |
local.set 17 | |
local.get 3 | |
i32.load offset=12 | |
local.set 18 | |
local.get 17 | |
local.set 19 | |
local.get 18 | |
local.set 20 | |
local.get 19 | |
local.get 20 | |
i32.eq | |
local.set 21 | |
i32.const 1 | |
local.set 22 | |
local.get 21 | |
local.get 22 | |
i32.and | |
local.set 23 | |
block ;; label = @1 | |
local.get 23 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 16 | |
local.set 24 | |
local.get 3 | |
local.get 24 | |
i32.add | |
local.set 25 | |
local.get 25 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.os.file.File.outStream (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
local.get 4 | |
local.set 5 | |
i32.const 0 | |
local.set 6 | |
local.get 6 | |
i32.load | |
local.set 7 | |
local.get 4 | |
local.get 7 | |
i32.store offset=12 | |
local.get 1 | |
i32.load | |
local.set 8 | |
local.get 5 | |
local.get 8 | |
i32.store | |
i32.const 4 | |
local.set 9 | |
local.get 5 | |
local.get 9 | |
i32.add | |
local.set 10 | |
i32.const 0 | |
local.set 11 | |
local.get 11 | |
i32.load offset=1636 | |
local.set 12 | |
local.get 10 | |
local.get 12 | |
i32.store | |
local.get 5 | |
i64.load align=4 | |
local.set 13 | |
local.get 0 | |
local.get 13 | |
i64.store align=4 | |
i32.const 0 | |
local.set 14 | |
local.get 14 | |
i32.load | |
local.set 15 | |
local.get 4 | |
i32.load offset=12 | |
local.set 16 | |
local.get 15 | |
local.set 17 | |
local.get 16 | |
local.set 18 | |
local.get 17 | |
local.get 18 | |
i32.eq | |
local.set 19 | |
i32.const 1 | |
local.set 20 | |
local.get 19 | |
local.get 20 | |
i32.and | |
local.set 21 | |
block ;; label = @1 | |
local.get 21 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 16 | |
local.set 22 | |
local.get 4 | |
local.get 22 | |
i32.add | |
local.set 23 | |
local.get 23 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.fmt.format (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 3 | |
i32.const 16 | |
local.set 4 | |
local.get 3 | |
local.get 4 | |
i32.sub | |
local.set 5 | |
local.get 5 | |
global.set 0 | |
i32.const 0 | |
local.set 6 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
local.get 5 | |
local.get 1 | |
i32.store offset=4 | |
local.get 5 | |
i32.load offset=8 | |
local.set 7 | |
local.get 5 | |
i32.load offset=4 | |
local.set 8 | |
local.get 2 | |
local.get 7 | |
local.get 8 | |
call $std.fmt.formatType | |
local.set 9 | |
local.get 5 | |
local.get 9 | |
i32.store16 offset=14 | |
i32.const 65535 | |
local.set 10 | |
local.get 9 | |
local.get 10 | |
i32.and | |
local.set 11 | |
i32.const 65535 | |
local.set 12 | |
local.get 6 | |
local.get 12 | |
i32.and | |
local.set 13 | |
local.get 11 | |
local.get 13 | |
i32.ne | |
local.set 14 | |
i32.const 1 | |
local.set 15 | |
local.get 14 | |
local.get 15 | |
i32.and | |
local.set 16 | |
block ;; label = @1 | |
local.get 16 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 5 | |
i32.load16_u offset=14 | |
local.set 17 | |
i32.const 16 | |
local.set 18 | |
local.get 5 | |
local.get 18 | |
i32.add | |
local.set 19 | |
local.get 19 | |
global.set 0 | |
local.get 17 | |
return | |
end | |
i32.const 0 | |
local.set 20 | |
i32.const 16 | |
local.set 21 | |
local.get 5 | |
local.get 21 | |
i32.add | |
local.set 22 | |
local.get 22 | |
global.set 0 | |
local.get 20 | |
return) | |
(func $std.os.file.File.openHandle (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
i32.const 8 | |
local.set 5 | |
local.get 4 | |
local.get 5 | |
i32.add | |
local.set 6 | |
local.get 6 | |
local.set 7 | |
i32.const 0 | |
local.set 8 | |
local.get 8 | |
i32.load | |
local.set 9 | |
local.get 4 | |
local.get 9 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=4 | |
local.get 4 | |
i32.load offset=4 | |
local.set 10 | |
local.get 4 | |
local.get 10 | |
i32.store offset=8 | |
local.get 7 | |
i32.load | |
local.set 11 | |
local.get 0 | |
local.get 11 | |
i32.store | |
i32.const 0 | |
local.set 12 | |
local.get 12 | |
i32.load | |
local.set 13 | |
local.get 4 | |
i32.load offset=12 | |
local.set 14 | |
local.get 13 | |
local.set 15 | |
local.get 14 | |
local.set 16 | |
local.get 15 | |
local.get 16 | |
i32.eq | |
local.set 17 | |
i32.const 1 | |
local.set 18 | |
local.get 17 | |
local.get 18 | |
i32.and | |
local.set 19 | |
block ;; label = @1 | |
local.get 19 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 16 | |
local.set 20 | |
local.get 4 | |
local.get 20 | |
i32.add | |
local.set 21 | |
local.get 21 | |
global.set 0 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.os.file.OutStream.writeFn (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
i32.load offset=12 | |
local.set 5 | |
i32.const 4 | |
local.set 6 | |
local.get 5 | |
local.get 6 | |
i32.sub | |
local.set 7 | |
local.get 4 | |
local.get 7 | |
i32.store offset=8 | |
local.get 4 | |
i32.load offset=8 | |
local.set 8 | |
local.get 8 | |
local.get 1 | |
call $std.os.file.File.write | |
local.set 9 | |
i32.const 16 | |
local.set 10 | |
local.get 4 | |
local.get 10 | |
i32.add | |
local.set 11 | |
local.get 11 | |
global.set 0 | |
local.get 9 | |
return) | |
(func $std.os.file.File.write (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
i32.const 0 | |
local.set 5 | |
local.get 0 | |
i32.load | |
local.set 6 | |
local.get 6 | |
local.get 1 | |
call $std.os.posixWrite | |
local.set 7 | |
local.get 4 | |
local.get 7 | |
i32.store16 offset=14 | |
i32.const 65535 | |
local.set 8 | |
local.get 7 | |
local.get 8 | |
i32.and | |
local.set 9 | |
i32.const 65535 | |
local.set 10 | |
local.get 5 | |
local.get 10 | |
i32.and | |
local.set 11 | |
local.get 9 | |
local.get 11 | |
i32.ne | |
local.set 12 | |
i32.const 1 | |
local.set 13 | |
local.get 12 | |
local.get 13 | |
i32.and | |
local.set 14 | |
block ;; label = @1 | |
local.get 14 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 4 | |
i32.load16_u offset=14 | |
local.set 15 | |
i32.const 16 | |
local.set 16 | |
local.get 4 | |
local.get 16 | |
i32.add | |
local.set 17 | |
local.get 17 | |
global.set 0 | |
local.get 15 | |
return | |
end | |
i32.const 0 | |
local.set 18 | |
i32.const 16 | |
local.set 19 | |
local.get 4 | |
local.get 19 | |
i32.add | |
local.set 20 | |
local.get 20 | |
global.set 0 | |
local.get 18 | |
return) | |
(func $std.fmt.formatType (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 3 | |
i32.const 32 | |
local.set 4 | |
local.get 3 | |
local.get 4 | |
i32.sub | |
local.set 5 | |
local.get 5 | |
global.set 0 | |
i32.const 16 | |
local.set 6 | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.set 7 | |
local.get 7 | |
local.set 8 | |
i32.const 0 | |
local.set 9 | |
local.get 9 | |
i32.load | |
local.set 10 | |
local.get 5 | |
local.get 10 | |
i32.store offset=28 | |
local.get 5 | |
local.get 1 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 0 | |
i64.load align=4 | |
local.set 11 | |
local.get 8 | |
local.get 11 | |
i64.store align=4 | |
local.get 5 | |
i32.load offset=8 | |
local.set 12 | |
local.get 5 | |
i32.load offset=12 | |
local.set 13 | |
local.get 13 | |
local.get 8 | |
local.get 12 | |
call_indirect (type 0) | |
local.set 14 | |
i32.const 0 | |
local.set 15 | |
local.get 15 | |
i32.load | |
local.set 16 | |
local.get 5 | |
i32.load offset=28 | |
local.set 17 | |
local.get 16 | |
local.set 18 | |
local.get 17 | |
local.set 19 | |
local.get 18 | |
local.get 19 | |
i32.eq | |
local.set 20 | |
i32.const 1 | |
local.set 21 | |
local.get 20 | |
local.get 21 | |
i32.and | |
local.set 22 | |
block ;; label = @1 | |
local.get 22 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 32 | |
local.set 23 | |
local.get 5 | |
local.get 23 | |
i32.add | |
local.set 24 | |
local.get 24 | |
global.set 0 | |
local.get 14 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.os.posixWrite (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 32 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
global.set 0 | |
i32.const 0 | |
local.set 5 | |
local.get 4 | |
local.get 0 | |
i32.store offset=28 | |
local.get 4 | |
local.get 5 | |
i32.store offset=24 | |
loop ;; label = @1 | |
local.get 4 | |
i32.load offset=24 | |
local.set 6 | |
local.get 1 | |
i32.load offset=4 | |
local.set 7 | |
local.get 6 | |
local.set 8 | |
local.get 7 | |
local.set 9 | |
local.get 8 | |
local.get 9 | |
i32.lt_u | |
local.set 10 | |
i32.const 1 | |
local.set 11 | |
local.get 10 | |
local.get 11 | |
i32.and | |
local.set 12 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 12 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.load offset=4 | |
local.set 13 | |
local.get 4 | |
i32.load offset=24 | |
local.set 14 | |
local.get 13 | |
local.get 14 | |
i32.sub | |
local.set 15 | |
local.get 15 | |
local.get 13 | |
i32.gt_u | |
local.set 16 | |
i32.const 1 | |
local.set 17 | |
local.get 16 | |
local.get 17 | |
i32.and | |
local.set 18 | |
local.get 18 | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 57 | |
i32.const 32 | |
local.set 58 | |
local.get 4 | |
local.get 58 | |
i32.add | |
local.set 59 | |
local.get 59 | |
global.set 0 | |
local.get 57 | |
return | |
end | |
i32.const 1656 | |
local.set 60 | |
i32.const 0 | |
local.set 61 | |
local.get 60 | |
local.get 61 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 2147479552 | |
local.set 62 | |
local.get 15 | |
local.get 62 | |
call $std.math.min | |
local.set 63 | |
local.get 4 | |
local.get 63 | |
i32.store offset=20 | |
local.get 4 | |
i32.load offset=28 | |
local.set 64 | |
local.get 1 | |
i32.load | |
local.set 65 | |
local.get 4 | |
i32.load offset=24 | |
local.set 66 | |
local.get 65 | |
local.get 66 | |
i32.add | |
local.set 67 | |
local.get 4 | |
i32.load offset=20 | |
local.set 68 | |
local.get 64 | |
local.get 67 | |
local.get 68 | |
call $std.os.wasi.write | |
local.set 69 | |
local.get 4 | |
local.get 69 | |
i32.store offset=16 | |
local.get 4 | |
i32.load offset=16 | |
local.set 70 | |
local.get 70 | |
call $std.os.wasi.getErrno | |
local.set 71 | |
local.get 4 | |
local.get 71 | |
i32.store offset=12 | |
local.get 4 | |
i32.load offset=12 | |
local.set 72 | |
i32.const 64 | |
local.set 73 | |
local.get 72 | |
local.get 73 | |
i32.gt_u | |
local.set 74 | |
block ;; label = @2 | |
local.get 74 | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 72 | |
br_table 12 (;@3;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 8 (;@7;) 13 (;@2;) 7 (;@8;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 6 (;@9;) 13 (;@2;) 5 (;@10;) 13 (;@2;) 9 (;@6;) 4 (;@11;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 11 (;@4;) 10 (;@5;) 3 (;@12;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 2 (;@13;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 13 (;@2;) 1 (;@14;) 0 (;@15;) 12 (;@3;) | |
end | |
i32.const 3 | |
local.set 54 | |
i32.const 32 | |
local.set 55 | |
local.get 4 | |
local.get 55 | |
i32.add | |
local.set 56 | |
local.get 56 | |
global.set 0 | |
local.get 54 | |
return | |
end | |
i32.const 9 | |
local.set 51 | |
i32.const 32 | |
local.set 52 | |
local.get 4 | |
local.get 52 | |
i32.add | |
local.set 53 | |
local.get 53 | |
global.set 0 | |
local.get 51 | |
return | |
end | |
i32.const 8 | |
local.set 48 | |
i32.const 32 | |
local.set 49 | |
local.get 4 | |
local.get 49 | |
i32.add | |
local.set 50 | |
local.get 50 | |
global.set 0 | |
local.get 48 | |
return | |
end | |
i32.const 7 | |
local.set 45 | |
i32.const 32 | |
local.set 46 | |
local.get 4 | |
local.get 46 | |
i32.add | |
local.set 47 | |
local.get 47 | |
global.set 0 | |
local.get 45 | |
return | |
end | |
i32.const 6 | |
local.set 42 | |
i32.const 32 | |
local.set 43 | |
local.get 4 | |
local.get 43 | |
i32.add | |
local.set 44 | |
local.get 44 | |
global.set 0 | |
local.get 42 | |
return | |
end | |
i32.const 5 | |
local.set 39 | |
i32.const 32 | |
local.set 40 | |
local.get 4 | |
local.get 40 | |
i32.add | |
local.set 41 | |
local.get 41 | |
global.set 0 | |
local.get 39 | |
return | |
end | |
i32.const 1592 | |
local.set 37 | |
i32.const 0 | |
local.set 38 | |
local.get 37 | |
local.get 38 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 1592 | |
local.set 35 | |
i32.const 0 | |
local.set 36 | |
local.get 35 | |
local.get 36 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 1592 | |
local.set 33 | |
i32.const 0 | |
local.set 34 | |
local.get 33 | |
local.get 34 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 1592 | |
local.set 31 | |
i32.const 0 | |
local.set 32 | |
local.get 31 | |
local.get 32 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 1592 | |
local.set 29 | |
i32.const 0 | |
local.set 30 | |
local.get 29 | |
local.get 30 | |
call $std.special.panic | |
unreachable | |
end | |
br 2 (;@1;) | |
end | |
local.get 4 | |
i32.load offset=24 | |
local.set 23 | |
local.get 4 | |
i32.load offset=16 | |
local.set 24 | |
local.get 23 | |
local.get 24 | |
i32.add | |
local.set 25 | |
local.get 25 | |
local.get 23 | |
i32.lt_u | |
local.set 26 | |
i32.const 1 | |
local.set 27 | |
local.get 26 | |
local.get 27 | |
i32.and | |
local.set 28 | |
block ;; label = @3 | |
local.get 28 | |
i32.eqz | |
br_if 0 (;@3;) | |
i32.const 1656 | |
local.set 75 | |
i32.const 0 | |
local.set 76 | |
local.get 75 | |
local.get 76 | |
call $std.special.panic | |
unreachable | |
end | |
local.get 4 | |
local.get 25 | |
i32.store offset=24 | |
br 1 (;@1;) | |
end | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 19 | |
local.get 19 | |
call $std.os.unexpectedErrorPosix | |
local.set 20 | |
i32.const 32 | |
local.set 21 | |
local.get 4 | |
local.get 21 | |
i32.add | |
local.set 22 | |
local.get 22 | |
global.set 0 | |
local.get 20 | |
return) | |
(func $std.math.min (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 2 | |
i32.const 16 | |
local.set 3 | |
local.get 2 | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 4 | |
i32.load offset=12 | |
local.set 5 | |
local.get 4 | |
i32.load offset=8 | |
local.set 6 | |
local.get 5 | |
local.set 7 | |
local.get 6 | |
local.set 8 | |
local.get 7 | |
local.get 8 | |
i32.lt_u | |
local.set 9 | |
i32.const 1 | |
local.set 10 | |
local.get 9 | |
local.get 10 | |
i32.and | |
local.set 11 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 11 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 4 | |
i32.load offset=12 | |
local.set 12 | |
local.get 12 | |
local.set 13 | |
br 1 (;@1;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.set 14 | |
local.get 14 | |
local.set 13 | |
end | |
local.get 13 | |
local.set 15 | |
local.get 15 | |
return) | |
(func $std.os.wasi.write (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 3 | |
i32.const 48 | |
local.set 4 | |
local.get 3 | |
local.get 4 | |
i32.sub | |
local.set 5 | |
local.get 5 | |
global.set 0 | |
i32.const 1 | |
local.set 6 | |
i32.const 12 | |
local.set 7 | |
local.get 5 | |
local.get 7 | |
i32.add | |
local.set 8 | |
local.get 8 | |
local.set 9 | |
i32.const 24 | |
local.set 10 | |
local.get 5 | |
local.get 10 | |
i32.add | |
local.set 11 | |
local.get 11 | |
local.set 12 | |
i32.const 32 | |
local.set 13 | |
local.get 5 | |
local.get 13 | |
i32.add | |
local.set 14 | |
local.get 14 | |
local.set 15 | |
i32.const 16 | |
local.set 16 | |
local.get 5 | |
local.get 16 | |
i32.add | |
local.set 17 | |
local.get 17 | |
local.set 18 | |
i32.const 0 | |
local.set 19 | |
local.get 19 | |
i32.load | |
local.set 20 | |
local.get 5 | |
local.get 20 | |
i32.store offset=44 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
local.get 5 | |
local.get 1 | |
i32.store offset=4 | |
local.get 5 | |
local.get 2 | |
i32.store | |
i32.const -1431655766 | |
local.set 21 | |
local.get 9 | |
local.get 21 | |
i32.store | |
local.get 5 | |
i32.load offset=4 | |
local.set 22 | |
local.get 5 | |
i32.load | |
local.set 23 | |
local.get 5 | |
local.get 22 | |
i32.store offset=16 | |
local.get 5 | |
local.get 23 | |
i32.store offset=20 | |
local.get 18 | |
i64.load align=4 | |
local.set 24 | |
local.get 15 | |
local.get 24 | |
i64.store align=4 | |
local.get 15 | |
i64.load align=4 | |
local.set 25 | |
local.get 12 | |
local.get 25 | |
i64.store align=4 | |
local.get 5 | |
i32.load offset=8 | |
local.set 26 | |
local.get 26 | |
local.get 12 | |
local.get 6 | |
local.get 9 | |
call $fd_write | |
drop | |
local.get 5 | |
i32.load offset=12 | |
local.set 27 | |
i32.const 0 | |
local.set 28 | |
local.get 28 | |
i32.load | |
local.set 29 | |
local.get 5 | |
i32.load offset=44 | |
local.set 30 | |
local.get 29 | |
local.set 31 | |
local.get 30 | |
local.set 32 | |
local.get 31 | |
local.get 32 | |
i32.eq | |
local.set 33 | |
i32.const 1 | |
local.set 34 | |
local.get 33 | |
local.get 34 | |
i32.and | |
local.set 35 | |
block ;; label = @1 | |
local.get 35 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 48 | |
local.set 36 | |
local.get 5 | |
local.get 36 | |
i32.add | |
local.set 37 | |
local.get 37 | |
global.set 0 | |
local.get 27 | |
return | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $std.os.wasi.getErrno (type 1) (param i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 1 | |
i32.const 16 | |
local.set 2 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
local.set 3 | |
local.get 3 | |
global.set 0 | |
i32.const -4096 | |
local.set 4 | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 3 | |
i32.load offset=12 | |
local.set 5 | |
local.get 3 | |
local.get 5 | |
i32.store offset=8 | |
local.get 3 | |
i32.load offset=8 | |
local.set 6 | |
local.get 6 | |
local.set 7 | |
local.get 4 | |
local.set 8 | |
local.get 7 | |
local.get 8 | |
i32.gt_s | |
local.set 9 | |
i32.const 1 | |
local.set 10 | |
local.get 9 | |
local.get 10 | |
i32.and | |
local.set 11 | |
local.get 9 | |
local.set 12 | |
block ;; label = @1 | |
local.get 11 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.set 13 | |
local.get 3 | |
i32.load offset=8 | |
local.set 14 | |
local.get 14 | |
local.set 15 | |
local.get 13 | |
local.set 16 | |
local.get 15 | |
local.get 16 | |
i32.lt_s | |
local.set 17 | |
local.get 17 | |
local.set 12 | |
end | |
local.get 12 | |
local.set 18 | |
i32.const 1 | |
local.set 19 | |
local.get 18 | |
local.get 19 | |
i32.and | |
local.set 20 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 20 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 3 | |
i32.load offset=8 | |
local.set 21 | |
i32.const 0 | |
local.set 22 | |
local.get 22 | |
local.get 21 | |
i32.sub | |
local.set 23 | |
local.get 21 | |
local.get 23 | |
i32.and | |
local.set 24 | |
local.get 24 | |
local.get 22 | |
i32.lt_s | |
local.set 25 | |
i32.const 1 | |
local.set 26 | |
local.get 25 | |
local.get 26 | |
i32.and | |
local.set 27 | |
local.get 27 | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 28 | |
local.get 28 | |
local.set 29 | |
br 2 (;@1;) | |
end | |
i32.const 1656 | |
local.set 33 | |
i32.const 0 | |
local.set 34 | |
local.get 33 | |
local.get 34 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 0 | |
local.set 35 | |
local.get 23 | |
local.set 36 | |
local.get 35 | |
local.set 37 | |
local.get 36 | |
local.get 37 | |
i32.ge_s | |
local.set 38 | |
i32.const 1 | |
local.set 39 | |
local.get 38 | |
local.get 39 | |
i32.and | |
local.set 40 | |
block ;; label = @2 | |
local.get 40 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 23 | |
local.set 29 | |
br 1 (;@1;) | |
end | |
i32.const 1716 | |
local.set 41 | |
i32.const 0 | |
local.set 42 | |
local.get 41 | |
local.get 42 | |
call $std.special.panic | |
unreachable | |
end | |
local.get 29 | |
local.set 30 | |
i32.const 16 | |
local.set 31 | |
local.get 3 | |
local.get 31 | |
i32.add | |
local.set 32 | |
local.get 32 | |
global.set 0 | |
local.get 30 | |
return) | |
(func $std.os.unexpectedErrorPosix (type 1) (param i32) (result i32) | |
(local i32 i32 i32 i32) | |
global.get 0 | |
local.set 1 | |
i32.const 16 | |
local.set 2 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
local.set 3 | |
i32.const 4 | |
local.set 4 | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
return) | |
(func $main (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i64 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
local.set 3 | |
i32.const 64 | |
local.set 4 | |
local.get 3 | |
local.get 4 | |
i32.sub | |
local.set 5 | |
local.get 5 | |
global.set 0 | |
i32.const 0 | |
local.set 6 | |
i32.const 0 | |
local.set 7 | |
local.get 7 | |
i32.load | |
local.set 8 | |
local.get 5 | |
local.get 8 | |
i32.store offset=60 | |
local.get 5 | |
local.get 0 | |
i32.store offset=16 | |
local.get 5 | |
local.get 1 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 5 | |
local.get 6 | |
i32.store offset=4 | |
block ;; label = @1 | |
block ;; label = @2 | |
loop ;; label = @3 | |
i32.const 0 | |
local.set 9 | |
local.get 5 | |
i32.load offset=4 | |
local.set 10 | |
local.get 5 | |
i32.load offset=8 | |
local.set 11 | |
i32.const 2 | |
local.set 12 | |
local.get 10 | |
local.get 12 | |
i32.shl | |
local.set 13 | |
local.get 11 | |
local.get 13 | |
i32.add | |
local.set 14 | |
local.get 14 | |
i32.load | |
local.set 15 | |
local.get 15 | |
local.set 16 | |
local.get 9 | |
local.set 17 | |
local.get 16 | |
local.get 17 | |
i32.ne | |
local.set 18 | |
i32.const 1 | |
local.set 19 | |
local.get 18 | |
local.get 19 | |
i32.and | |
local.set 20 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 20 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 5 | |
i32.load offset=4 | |
local.set 21 | |
i32.const 1 | |
local.set 22 | |
local.get 21 | |
local.get 22 | |
i32.add | |
local.set 23 | |
local.get 23 | |
local.get 21 | |
i32.lt_u | |
local.set 24 | |
i32.const 1 | |
local.set 25 | |
local.get 24 | |
local.get 25 | |
i32.and | |
local.set 26 | |
local.get 26 | |
br_if 1 (;@5;) | |
br 2 (;@4;) | |
end | |
i32.const 0 | |
local.set 27 | |
local.get 5 | |
i32.load offset=8 | |
local.set 28 | |
local.get 28 | |
local.set 29 | |
local.get 27 | |
local.set 30 | |
local.get 29 | |
local.get 30 | |
i32.ne | |
local.set 31 | |
i32.const 1 | |
local.set 32 | |
local.get 31 | |
local.get 32 | |
i32.and | |
local.set 33 | |
local.get 33 | |
br_if 4 (;@1;) | |
br 3 (;@2;) | |
end | |
i32.const 1656 | |
local.set 34 | |
i32.const 0 | |
local.set 35 | |
local.get 34 | |
local.get 35 | |
call $std.special.panic | |
unreachable | |
end | |
local.get 5 | |
local.get 23 | |
i32.store offset=4 | |
br 0 (;@3;) | |
end | |
end | |
i32.const 1756 | |
local.set 36 | |
i32.const 0 | |
local.set 37 | |
local.get 36 | |
local.get 37 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 0 | |
local.set 38 | |
local.get 5 | |
local.get 28 | |
i32.store offset=20 | |
local.get 5 | |
i32.load offset=4 | |
local.set 39 | |
local.get 5 | |
i32.load offset=20 | |
local.set 40 | |
local.get 38 | |
local.set 41 | |
local.get 39 | |
local.set 42 | |
local.get 41 | |
local.get 42 | |
i32.le_u | |
local.set 43 | |
i32.const 1 | |
local.set 44 | |
local.get 43 | |
local.get 44 | |
i32.and | |
local.set 45 | |
block ;; label = @1 | |
local.get 45 | |
br_if 0 (;@1;) | |
i32.const 1784 | |
local.set 46 | |
i32.const 0 | |
local.set 47 | |
local.get 46 | |
local.get 47 | |
call $std.special.panic | |
unreachable | |
end | |
i32.const 0 | |
local.set 48 | |
i32.const 32 | |
local.set 49 | |
local.get 5 | |
local.get 49 | |
i32.add | |
local.set 50 | |
local.get 50 | |
local.set 51 | |
i32.const 40 | |
local.set 52 | |
local.get 5 | |
local.get 52 | |
i32.add | |
local.set 53 | |
local.get 53 | |
local.set 54 | |
local.get 5 | |
local.get 40 | |
i32.store offset=40 | |
i32.const 0 | |
local.set 55 | |
local.get 39 | |
local.get 55 | |
i32.sub | |
local.set 56 | |
local.get 5 | |
local.get 56 | |
i32.store offset=44 | |
local.get 54 | |
i64.load align=4 | |
local.set 57 | |
local.get 51 | |
local.get 57 | |
i64.store align=4 | |
local.get 5 | |
i32.load offset=16 | |
local.set 58 | |
local.get 58 | |
local.set 59 | |
local.get 48 | |
local.set 60 | |
local.get 59 | |
local.get 60 | |
i32.ge_s | |
local.set 61 | |
i32.const 1 | |
local.set 62 | |
local.get 61 | |
local.get 62 | |
i32.and | |
local.set 63 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 63 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.set 64 | |
i32.const 32 | |
local.set 65 | |
local.get 5 | |
local.get 65 | |
i32.add | |
local.set 66 | |
local.get 66 | |
local.set 67 | |
i32.const 48 | |
local.set 68 | |
local.get 5 | |
local.get 68 | |
i32.add | |
local.set 69 | |
local.get 69 | |
local.set 70 | |
local.get 5 | |
i32.load offset=12 | |
local.set 71 | |
local.get 5 | |
local.get 58 | |
i32.store offset=28 | |
local.get 5 | |
local.get 71 | |
i32.store offset=24 | |
local.get 5 | |
i32.load offset=28 | |
local.set 72 | |
local.get 5 | |
i32.load offset=24 | |
local.set 73 | |
local.get 5 | |
local.get 73 | |
i32.store offset=48 | |
local.get 5 | |
local.get 72 | |
i32.store offset=52 | |
local.get 70 | |
i64.load align=4 | |
local.set 74 | |
i32.const 0 | |
local.set 75 | |
local.get 75 | |
local.get 74 | |
i64.store offset=1044 align=4 | |
local.get 67 | |
i64.load align=4 | |
local.set 76 | |
i32.const 0 | |
local.set 77 | |
local.get 77 | |
local.get 76 | |
i64.store offset=1052 align=4 | |
call $main.0 | |
i32.const 255 | |
local.set 78 | |
local.get 64 | |
local.get 78 | |
i32.and | |
local.set 79 | |
i32.const 0 | |
local.set 80 | |
local.get 80 | |
i32.load | |
local.set 81 | |
local.get 5 | |
i32.load offset=60 | |
local.set 82 | |
local.get 81 | |
local.set 83 | |
local.get 82 | |
local.set 84 | |
local.get 83 | |
local.get 84 | |
i32.eq | |
local.set 85 | |
i32.const 1 | |
local.set 86 | |
local.get 85 | |
local.get 86 | |
i32.and | |
local.set 87 | |
local.get 87 | |
i32.eqz | |
br_if 1 (;@1;) | |
i32.const 64 | |
local.set 88 | |
local.get 5 | |
local.get 88 | |
i32.add | |
local.set 89 | |
local.get 89 | |
global.set 0 | |
local.get 79 | |
return | |
end | |
i32.const 1716 | |
local.set 90 | |
i32.const 0 | |
local.set 91 | |
local.get 90 | |
local.get 91 | |
call $std.special.panic | |
unreachable | |
end | |
call $__stack_chk_fail | |
unreachable) | |
(func $main.0 (type 2) | |
return) | |
(func $_start (type 2) | |
(local i32 i32 i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 0 | |
global.set 0 | |
call $__wasilibc_init_preopen | |
i32.const 3 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
loop ;; label = @5 | |
local.get 1 | |
local.get 0 | |
call $__wasi_fd_prestat_get | |
local.tee 2 | |
i32.const 8 | |
i32.eq | |
br_if 1 (;@4;) | |
local.get 2 | |
br_if 3 (;@2;) | |
block ;; label = @6 | |
local.get 0 | |
i32.load8_u | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.add | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 4 (;@2;) | |
local.get 1 | |
local.get 2 | |
local.get 0 | |
i32.load offset=4 | |
call $__wasi_fd_prestat_dir_name | |
br_if 3 (;@3;) | |
local.get 2 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
i32.const 0 | |
i32.store8 | |
local.get 1 | |
local.get 2 | |
call $__wasilibc_register_preopened_fd | |
local.set 3 | |
local.get 2 | |
call $free | |
local.get 3 | |
br_if 4 (;@2;) | |
end | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 1 | |
br_if 0 (;@5;) | |
end | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 0 | |
local.get 0 | |
i32.const 12 | |
i32.add | |
call $__wasi_environ_sizes_get | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@5;) | |
i32.const 0 | |
local.get 1 | |
i32.const 2 | |
i32.shl | |
i32.const 4 | |
i32.add | |
call $malloc | |
i32.store offset=1564 | |
local.get 0 | |
i32.load offset=12 | |
call $malloc | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@6;) | |
i32.const 0 | |
i32.load offset=1564 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 2 | |
local.get 0 | |
i32.load | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.const 0 | |
i32.store | |
i32.const 0 | |
i32.load offset=1564 | |
local.get 1 | |
call $__wasi_environ_get | |
i32.eqz | |
br_if 2 (;@4;) | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1564 | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 0 | |
i32.const 12 | |
i32.add | |
local.get 0 | |
call $__wasi_args_sizes_get | |
br_if 0 (;@6;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@5;) | |
local.get 1 | |
i32.const 2 | |
i32.shl | |
call $malloc | |
local.set 1 | |
local.get 0 | |
i32.load | |
call $malloc | |
local.set 2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 1 | |
local.get 2 | |
call $__wasi_args_get | |
i32.eqz | |
br_if 2 (;@4;) | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
end | |
call $__wasm_call_ctors | |
local.get 0 | |
i32.load offset=12 | |
local.get 1 | |
call $main | |
local.set 1 | |
call $__prepare_for_exit | |
local.get 1 | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
return | |
end | |
local.get 2 | |
call $free | |
end | |
i32.const 71 | |
call $_Exit | |
unreachable | |
end | |
local.get 1 | |
call $_Exit | |
unreachable) | |
(func $malloc (type 1) (param i32) (result i32) | |
local.get 0 | |
call $dlmalloc) | |
(func $dlmalloc (type 1) (param i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
block ;; label = @17 | |
block ;; label = @18 | |
block ;; label = @19 | |
block ;; label = @20 | |
block ;; label = @21 | |
block ;; label = @22 | |
block ;; label = @23 | |
block ;; label = @24 | |
block ;; label = @25 | |
block ;; label = @26 | |
block ;; label = @27 | |
block ;; label = @28 | |
block ;; label = @29 | |
block ;; label = @30 | |
block ;; label = @31 | |
block ;; label = @32 | |
block ;; label = @33 | |
block ;; label = @34 | |
block ;; label = @35 | |
block ;; label = @36 | |
block ;; label = @37 | |
block ;; label = @38 | |
local.get 0 | |
i32.const 244 | |
i32.gt_u | |
br_if 0 (;@38;) | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 2 | |
i32.const 16 | |
local.get 0 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.tee 3 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@37;) | |
local.get 0 | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 4 | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
local.tee 6 | |
i32.const 1108 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 6 | |
i32.const 1100 | |
i32.add | |
local.tee 6 | |
i32.eq | |
br_if 2 (;@36;) | |
local.get 3 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.get 3 | |
i32.store | |
br 3 (;@35;) | |
end | |
i32.const -1 | |
local.set 3 | |
local.get 0 | |
i32.const -65 | |
i32.gt_u | |
br_if 14 (;@23;) | |
local.get 0 | |
i32.const 11 | |
i32.add | |
local.tee 0 | |
i32.const -8 | |
i32.and | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 7 | |
i32.eqz | |
br_if 14 (;@23;) | |
i32.const 0 | |
local.set 8 | |
block ;; label = @38 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@38;) | |
i32.const 31 | |
local.set 8 | |
local.get 3 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@38;) | |
local.get 3 | |
i32.const 14 | |
local.get 0 | |
local.get 0 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 0 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 4 | |
i32.or | |
local.get 0 | |
local.get 5 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 8 | |
end | |
i32.const 0 | |
local.get 3 | |
i32.sub | |
local.set 5 | |
local.get 8 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 3 (;@34;) | |
local.get 3 | |
i32.const 0 | |
i32.const 25 | |
local.get 8 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 8 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 6 | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 9 | |
loop ;; label = @38 | |
block ;; label = @39 | |
local.get 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 5 | |
i32.ge_u | |
br_if 0 (;@39;) | |
local.get 2 | |
local.set 5 | |
local.get 4 | |
local.set 9 | |
local.get 2 | |
i32.eqz | |
br_if 8 (;@31;) | |
end | |
local.get 0 | |
local.get 4 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
local.get 2 | |
local.get 4 | |
local.get 6 | |
i32.const 29 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eq | |
select | |
local.get 0 | |
local.get 2 | |
select | |
local.set 0 | |
local.get 6 | |
local.get 4 | |
i32.const 0 | |
i32.ne | |
i32.shl | |
local.set 6 | |
local.get 4 | |
br_if 0 (;@38;) | |
end | |
local.get 0 | |
local.get 9 | |
i32.or | |
i32.eqz | |
br_if 4 (;@33;) | |
br 11 (;@26;) | |
end | |
local.get 3 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 7 | |
i32.le_u | |
br_if 13 (;@23;) | |
local.get 0 | |
i32.eqz | |
br_if 4 (;@32;) | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 2 | |
local.get 4 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
i32.and | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 5 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
local.tee 6 | |
i32.const 1108 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 6 | |
i32.const 1100 | |
i32.add | |
local.tee 6 | |
i32.eq | |
br_if 6 (;@30;) | |
local.get 0 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i32.store | |
br 7 (;@29;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
end | |
local.get 4 | |
local.get 5 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.add | |
local.tee 4 | |
local.get 4 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 33 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 9 | |
i32.const 0 | |
i32.const 0 | |
i32.or | |
br_if 7 (;@26;) | |
end | |
i32.const 2 | |
local.get 8 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
local.get 7 | |
i32.and | |
local.tee 0 | |
i32.eqz | |
br_if 9 (;@23;) | |
local.get 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 6 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
i32.load | |
local.tee 0 | |
br_if 7 (;@25;) | |
br 8 (;@24;) | |
end | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 10 | |
i32.eqz | |
br_if 8 (;@23;) | |
local.get 10 | |
i32.const 0 | |
local.get 10 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 5 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
i32.load | |
local.tee 6 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.set 5 | |
local.get 6 | |
local.tee 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@28;) | |
i32.const 1 | |
local.set 4 | |
br 4 (;@27;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 4 | |
local.set 9 | |
local.get 4 | |
local.set 0 | |
br 5 (;@25;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
local.tee 2 | |
i32.store offset=1060 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.add | |
local.get 5 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @29 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@29;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 9 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1080 | |
local.set 4 | |
block ;; label = @30 | |
block ;; label = @31 | |
local.get 2 | |
i32.const 1 | |
local.get 9 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 0 (;@31;) | |
local.get 3 | |
i32.load offset=8 | |
local.set 9 | |
br 1 (;@30;) | |
end | |
i32.const 0 | |
local.get 2 | |
local.get 9 | |
i32.or | |
i32.store offset=1060 | |
local.get 3 | |
local.set 9 | |
end | |
local.get 9 | |
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 9 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1080 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1068 | |
br 27 (;@1;) | |
end | |
i32.const 0 | |
local.set 4 | |
end | |
block ;; label = @27 | |
block ;; label = @28 | |
loop ;; label = @29 | |
block ;; label = @30 | |
block ;; label = @31 | |
block ;; label = @32 | |
block ;; label = @33 | |
local.get 4 | |
br_table 1 (;@32;) 0 (;@33;) 0 (;@33;) | |
end | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 4 | |
local.get 5 | |
local.get 4 | |
local.get 5 | |
i32.lt_u | |
local.tee 4 | |
select | |
local.set 5 | |
local.get 0 | |
local.get 6 | |
local.get 4 | |
select | |
local.set 6 | |
local.get 0 | |
local.tee 9 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 1 (;@31;) | |
i32.const 0 | |
local.set 4 | |
br 3 (;@29;) | |
end | |
local.get 9 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
br_if 1 (;@30;) | |
local.get 6 | |
local.get 3 | |
i32.add | |
local.tee 11 | |
local.get 6 | |
i32.le_u | |
br_if 8 (;@23;) | |
local.get 6 | |
i32.load offset=24 | |
local.set 12 | |
block ;; label = @32 | |
local.get 6 | |
i32.load offset=12 | |
local.tee 9 | |
local.get 6 | |
i32.eq | |
br_if 0 (;@32;) | |
local.get 6 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 9 | |
i32.store offset=12 | |
local.get 9 | |
local.get 0 | |
i32.store offset=8 | |
local.get 12 | |
br_if 4 (;@28;) | |
br 5 (;@27;) | |
end | |
block ;; label = @32 | |
block ;; label = @33 | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@33;) | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@32;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
end | |
loop ;; label = @33 | |
local.get 4 | |
local.set 8 | |
local.get 0 | |
local.tee 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@33;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@33;) | |
end | |
local.get 8 | |
i32.const 0 | |
i32.store | |
local.get 12 | |
i32.eqz | |
br_if 5 (;@27;) | |
br 4 (;@28;) | |
end | |
i32.const 0 | |
local.set 9 | |
local.get 12 | |
br_if 3 (;@28;) | |
br 4 (;@27;) | |
end | |
i32.const 1 | |
local.set 4 | |
br 1 (;@29;) | |
end | |
i32.const 1 | |
local.set 4 | |
br 0 (;@29;) | |
end | |
end | |
block ;; label = @28 | |
block ;; label = @29 | |
block ;; label = @30 | |
local.get 6 | |
local.get 6 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.eq | |
br_if 0 (;@30;) | |
local.get 12 | |
i32.const 16 | |
i32.const 20 | |
local.get 12 | |
i32.load offset=16 | |
local.get 6 | |
i32.eq | |
select | |
i32.add | |
local.get 9 | |
i32.store | |
local.get 9 | |
br_if 1 (;@29;) | |
br 3 (;@27;) | |
end | |
local.get 0 | |
local.get 9 | |
i32.store | |
local.get 9 | |
i32.eqz | |
br_if 1 (;@28;) | |
end | |
local.get 9 | |
local.get 12 | |
i32.store offset=24 | |
block ;; label = @29 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@29;) | |
local.get 9 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 9 | |
i32.store offset=24 | |
end | |
local.get 6 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@27;) | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 9 | |
i32.store offset=24 | |
br 1 (;@27;) | |
end | |
i32.const 0 | |
local.get 10 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
block ;; label = @27 | |
block ;; label = @28 | |
local.get 5 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@28;) | |
local.get 6 | |
local.get 5 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@27;) | |
end | |
local.get 11 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 11 | |
local.get 5 | |
i32.add | |
local.get 5 | |
i32.store | |
block ;; label = @28 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@28;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1080 | |
local.set 0 | |
block ;; label = @29 | |
block ;; label = @30 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 3 | |
local.get 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@30;) | |
local.get 4 | |
i32.load offset=8 | |
local.set 3 | |
br 1 (;@29;) | |
end | |
i32.const 0 | |
local.get 3 | |
local.get 2 | |
i32.or | |
i32.store offset=1060 | |
local.get 4 | |
local.set 3 | |
end | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 3 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 11 | |
i32.store offset=1080 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1068 | |
end | |
local.get 6 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 25 (;@1;) | |
end | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@24;) | |
end | |
loop ;; label = @25 | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 5 | |
i32.lt_u | |
local.set 6 | |
block ;; label = @26 | |
local.get 0 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@26;) | |
local.get 0 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.set 4 | |
end | |
local.get 2 | |
local.get 5 | |
local.get 6 | |
select | |
local.set 5 | |
local.get 0 | |
local.get 9 | |
local.get 6 | |
select | |
local.set 9 | |
local.get 4 | |
local.set 0 | |
local.get 4 | |
br_if 0 (;@25;) | |
end | |
end | |
local.get 9 | |
i32.eqz | |
br_if 0 (;@23;) | |
local.get 5 | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 3 | |
i32.sub | |
i32.ge_u | |
br_if 0 (;@23;) | |
local.get 9 | |
local.get 3 | |
i32.add | |
local.tee 8 | |
local.get 9 | |
i32.le_u | |
br_if 0 (;@23;) | |
local.get 9 | |
i32.load offset=24 | |
local.set 10 | |
local.get 9 | |
i32.load offset=12 | |
local.tee 6 | |
local.get 9 | |
i32.eq | |
br_if 1 (;@22;) | |
local.get 9 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
local.get 0 | |
i32.store offset=8 | |
local.get 10 | |
br_if 20 (;@3;) | |
br 21 (;@2;) | |
end | |
block ;; label = @23 | |
block ;; label = @24 | |
block ;; label = @25 | |
block ;; label = @26 | |
block ;; label = @27 | |
block ;; label = @28 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 0 | |
local.get 3 | |
i32.ge_u | |
br_if 0 (;@28;) | |
i32.const 0 | |
i32.load offset=1072 | |
local.tee 6 | |
local.get 3 | |
i32.le_u | |
br_if 1 (;@27;) | |
i32.const 0 | |
i32.load offset=1084 | |
local.tee 0 | |
local.get 3 | |
i32.add | |
local.tee 4 | |
local.get 6 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1072 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1084 | |
local.get 0 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 27 (;@1;) | |
end | |
i32.const 0 | |
i32.load offset=1080 | |
local.set 4 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 5 | |
i32.const 16 | |
i32.lt_u | |
br_if 1 (;@26;) | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1068 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1080 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
br 2 (;@25;) | |
end | |
i32.const 0 | |
i32.load offset=1532 | |
i32.eqz | |
br_if 2 (;@24;) | |
i32.const 0 | |
i32.load offset=1540 | |
local.set 4 | |
br 3 (;@23;) | |
end | |
local.get 4 | |
local.get 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1080 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1068 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 23 (;@1;) | |
end | |
i32.const 0 | |
i64.const -1 | |
i64.store offset=1544 align=4 | |
i32.const 0 | |
i64.const 281474976776192 | |
i64.store offset=1536 align=4 | |
i32.const 0 | |
local.get 1 | |
i32.const 12 | |
i32.add | |
i32.const -16 | |
i32.and | |
i32.const 1431655768 | |
i32.xor | |
i32.store offset=1532 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1552 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1504 | |
i32.const 65536 | |
local.set 4 | |
end | |
i32.const 0 | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 47 | |
i32.add | |
local.tee 7 | |
i32.add | |
local.tee 2 | |
i32.const 0 | |
local.get 4 | |
i32.sub | |
local.tee 8 | |
i32.and | |
local.tee 9 | |
local.get 3 | |
i32.le_u | |
br_if 21 (;@1;) | |
i32.const 0 | |
local.set 0 | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1500 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 0 | |
i32.load offset=1492 | |
local.tee 5 | |
local.get 9 | |
i32.add | |
local.tee 10 | |
local.get 5 | |
i32.le_u | |
br_if 22 (;@1;) | |
local.get 10 | |
local.get 4 | |
i32.gt_u | |
br_if 22 (;@1;) | |
end | |
i32.const 0 | |
i32.load8_u offset=1504 | |
i32.const 4 | |
i32.and | |
br_if 8 (;@14;) | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1084 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 1508 | |
local.set 0 | |
loop ;; label = @24 | |
block ;; label = @25 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@25;) | |
local.get 5 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.get 4 | |
i32.gt_u | |
br_if 4 (;@21;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@24;) | |
end | |
end | |
i32.const 0 | |
call $sbrk | |
local.tee 6 | |
i32.const -1 | |
i32.eq | |
br_if 7 (;@15;) | |
local.get 9 | |
local.set 2 | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1536 | |
local.tee 0 | |
i32.const -1 | |
i32.add | |
local.tee 4 | |
local.get 6 | |
i32.and | |
i32.eqz | |
br_if 0 (;@23;) | |
local.get 9 | |
local.get 6 | |
i32.sub | |
local.get 4 | |
local.get 6 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.add | |
local.set 2 | |
end | |
local.get 2 | |
local.get 3 | |
i32.le_u | |
br_if 7 (;@15;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 7 (;@15;) | |
block ;; label = @23 | |
i32.const 0 | |
i32.load offset=1500 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@23;) | |
i32.const 0 | |
i32.load offset=1492 | |
local.tee 4 | |
local.get 2 | |
i32.add | |
local.tee 5 | |
local.get 4 | |
i32.le_u | |
br_if 8 (;@15;) | |
local.get 5 | |
local.get 0 | |
i32.gt_u | |
br_if 8 (;@15;) | |
end | |
local.get 2 | |
call $sbrk | |
local.tee 0 | |
local.get 6 | |
i32.ne | |
br_if 2 (;@20;) | |
br 9 (;@13;) | |
end | |
block ;; label = @22 | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@22;) | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@19;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
end | |
loop ;; label = @22 | |
local.get 4 | |
local.set 2 | |
local.get 0 | |
local.tee 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@22;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@22;) | |
end | |
local.get 2 | |
i32.const 0 | |
i32.store | |
local.get 10 | |
i32.eqz | |
br_if 19 (;@2;) | |
br 18 (;@3;) | |
end | |
local.get 2 | |
local.get 6 | |
i32.sub | |
local.get 8 | |
i32.and | |
local.tee 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 5 (;@15;) | |
local.get 2 | |
call $sbrk | |
local.tee 6 | |
local.get 0 | |
i32.load | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
i32.eq | |
br_if 3 (;@17;) | |
local.get 6 | |
local.set 0 | |
end | |
local.get 0 | |
local.set 6 | |
local.get 3 | |
i32.const 48 | |
i32.add | |
local.get 2 | |
i32.le_u | |
br_if 1 (;@18;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 1 (;@18;) | |
local.get 6 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@18;) | |
local.get 7 | |
local.get 2 | |
i32.sub | |
i32.const 0 | |
i32.load offset=1540 | |
local.tee 0 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
local.tee 0 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 6 (;@13;) | |
local.get 0 | |
call $sbrk | |
i32.const -1 | |
i32.eq | |
br_if 3 (;@16;) | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.set 2 | |
br 6 (;@13;) | |
end | |
i32.const 0 | |
local.set 6 | |
local.get 10 | |
br_if 15 (;@3;) | |
br 16 (;@2;) | |
end | |
local.get 6 | |
i32.const -1 | |
i32.ne | |
br_if 4 (;@13;) | |
br 2 (;@15;) | |
end | |
local.get 6 | |
i32.const -1 | |
i32.ne | |
br_if 3 (;@13;) | |
br 1 (;@15;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.sub | |
call $sbrk | |
drop | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1504 | |
i32.const 4 | |
i32.or | |
i32.store offset=1504 | |
end | |
local.get 9 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 1 (;@12;) | |
local.get 9 | |
call $sbrk | |
local.tee 6 | |
i32.const 0 | |
call $sbrk | |
local.tee 0 | |
i32.ge_u | |
br_if 1 (;@12;) | |
local.get 6 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
local.get 6 | |
i32.sub | |
local.tee 2 | |
local.get 3 | |
i32.const 40 | |
i32.add | |
i32.le_u | |
br_if 1 (;@12;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1492 | |
local.get 2 | |
i32.add | |
local.tee 0 | |
i32.store offset=1492 | |
block ;; label = @13 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1496 | |
i32.le_u | |
br_if 0 (;@13;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1496 | |
end | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
i32.const 0 | |
i32.load offset=1084 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@16;) | |
i32.const 1508 | |
local.set 0 | |
loop ;; label = @17 | |
local.get 6 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 9 | |
i32.add | |
i32.eq | |
br_if 2 (;@15;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@17;) | |
br 3 (;@14;) | |
end | |
end | |
block ;; label = @16 | |
block ;; label = @17 | |
i32.const 0 | |
i32.load offset=1076 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@17;) | |
local.get 6 | |
local.get 0 | |
i32.ge_u | |
br_if 1 (;@16;) | |
end | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1076 | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1512 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1508 | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1092 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1532 | |
i32.store offset=1096 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1520 | |
loop ;; label = @16 | |
local.get 0 | |
i32.const 1108 | |
i32.add | |
local.get 0 | |
i32.const 1100 | |
i32.add | |
local.tee 4 | |
i32.store | |
local.get 0 | |
i32.const 1112 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.tee 0 | |
i32.const 256 | |
i32.ne | |
br_if 0 (;@16;) | |
end | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 0 | |
i32.add | |
local.tee 4 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 5 | |
local.get 0 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1548 | |
i32.store offset=1088 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1072 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1084 | |
local.get 6 | |
local.get 5 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
br 2 (;@13;) | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
br_if 0 (;@14;) | |
local.get 6 | |
local.get 4 | |
i32.le_u | |
br_if 0 (;@14;) | |
local.get 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 4 | |
i32.const -8 | |
local.get 4 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 5 | |
i32.add | |
local.tee 6 | |
i32.const 0 | |
i32.load offset=1072 | |
local.get 2 | |
i32.add | |
local.tee 8 | |
local.get 5 | |
i32.sub | |
local.tee 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
local.get 2 | |
i32.add | |
i32.store | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1548 | |
i32.store offset=1088 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1072 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1084 | |
local.get 4 | |
local.get 8 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
br 1 (;@13;) | |
end | |
block ;; label = @14 | |
local.get 6 | |
i32.const 0 | |
i32.load offset=1076 | |
i32.ge_u | |
br_if 0 (;@14;) | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1076 | |
end | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.set 5 | |
i32.const 1508 | |
local.set 0 | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
block ;; label = @17 | |
block ;; label = @18 | |
block ;; label = @19 | |
block ;; label = @20 | |
block ;; label = @21 | |
loop ;; label = @22 | |
local.get 0 | |
i32.load | |
local.get 5 | |
i32.eq | |
br_if 1 (;@21;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@22;) | |
br 2 (;@20;) | |
end | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
br_if 0 (;@20;) | |
local.get 0 | |
local.get 6 | |
i32.store | |
local.get 0 | |
local.get 0 | |
i32.load offset=4 | |
local.get 2 | |
i32.add | |
i32.store offset=4 | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 2 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
i32.const -8 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 6 | |
local.get 2 | |
i32.sub | |
local.get 3 | |
i32.sub | |
local.set 0 | |
local.get 2 | |
local.get 3 | |
i32.add | |
local.set 5 | |
local.get 4 | |
local.get 6 | |
i32.eq | |
br_if 1 (;@19;) | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 6 | |
i32.eq | |
br_if 9 (;@11;) | |
local.get 6 | |
i32.load offset=4 | |
local.tee 4 | |
i32.const 3 | |
i32.and | |
i32.const 1 | |
i32.ne | |
br_if 15 (;@5;) | |
local.get 4 | |
i32.const -8 | |
i32.and | |
local.set 7 | |
local.get 4 | |
i32.const 255 | |
i32.gt_u | |
br_if 10 (;@10;) | |
local.get 6 | |
i32.load offset=12 | |
local.tee 3 | |
local.get 6 | |
i32.load offset=8 | |
local.tee 9 | |
i32.eq | |
br_if 11 (;@9;) | |
local.get 3 | |
local.get 9 | |
i32.store offset=8 | |
local.get 9 | |
local.get 3 | |
i32.store offset=12 | |
br 14 (;@6;) | |
end | |
i32.const 1508 | |
local.set 0 | |
block ;; label = @20 | |
loop ;; label = @21 | |
block ;; label = @22 | |
local.get 0 | |
i32.load | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@22;) | |
local.get 5 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.tee 5 | |
local.get 4 | |
i32.gt_u | |
br_if 2 (;@20;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 0 | |
br 0 (;@21;) | |
end | |
end | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 0 | |
i32.add | |
local.tee 8 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 9 | |
local.get 0 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 9 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.const 39 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const -39 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
i32.const -47 | |
i32.add | |
local.tee 9 | |
local.get 9 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
i32.lt_u | |
select | |
local.tee 9 | |
i32.const 27 | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1548 | |
i32.store offset=1088 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1072 | |
i32.const 0 | |
local.get 8 | |
i32.store offset=1084 | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.const 0 | |
i64.load offset=1516 align=4 | |
i64.store align=4 | |
local.get 9 | |
i32.const 0 | |
i64.load offset=1508 align=4 | |
i64.store offset=8 align=4 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1512 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1508 | |
i32.const 0 | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.store offset=1516 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1520 | |
local.get 9 | |
i32.const 28 | |
i32.add | |
local.set 0 | |
loop ;; label = @20 | |
local.get 0 | |
i32.const 7 | |
i32.store | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.tee 0 | |
local.get 5 | |
i32.lt_u | |
br_if 0 (;@20;) | |
end | |
local.get 9 | |
local.get 4 | |
i32.eq | |
br_if 6 (;@13;) | |
local.get 9 | |
i32.const 4 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 9 | |
local.get 9 | |
local.get 4 | |
i32.sub | |
local.tee 2 | |
i32.store | |
local.get 4 | |
local.get 2 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @20 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@20;) | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
local.tee 5 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 6 | |
i32.const 1 | |
local.get 5 | |
i32.shl | |
local.tee 5 | |
i32.and | |
i32.eqz | |
br_if 2 (;@18;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 5 | |
br 3 (;@17;) | |
end | |
i32.const 0 | |
local.set 0 | |
block ;; label = @20 | |
local.get 2 | |
i32.const 8 | |
i32.shr_u | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@20;) | |
i32.const 31 | |
local.set 0 | |
local.get 2 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@20;) | |
local.get 2 | |
i32.const 14 | |
local.get 5 | |
local.get 5 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 5 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 5 | |
local.get 6 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 5 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 5 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 0 | |
end | |
local.get 4 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 28 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.set 5 | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 6 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 3 (;@16;) | |
local.get 2 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 5 | |
i32.load | |
local.set 6 | |
loop ;; label = @20 | |
local.get 6 | |
local.tee 5 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 2 | |
i32.eq | |
br_if 6 (;@14;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 6 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 5 | |
local.get 6 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 9 | |
i32.load | |
local.tee 6 | |
br_if 0 (;@20;) | |
end | |
local.get 9 | |
local.get 4 | |
i32.store | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 5 | |
i32.store | |
br 4 (;@15;) | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1084 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1072 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1072 | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 14 (;@4;) | |
end | |
i32.const 0 | |
local.get 6 | |
local.get 5 | |
i32.or | |
i32.store offset=1060 | |
local.get 0 | |
local.set 5 | |
end | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 4 | |
i32.store offset=8 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
br 3 (;@13;) | |
end | |
local.get 5 | |
local.get 4 | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 9 | |
i32.or | |
i32.store offset=1064 | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 5 | |
i32.store | |
end | |
local.get 4 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 4 | |
i32.store offset=8 | |
br 1 (;@13;) | |
end | |
local.get 5 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 5 | |
local.get 4 | |
i32.store offset=8 | |
local.get 4 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 4 | |
local.get 5 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.load offset=1072 | |
local.tee 0 | |
local.get 3 | |
i32.le_u | |
br_if 0 (;@12;) | |
i32.const 0 | |
i32.load offset=1084 | |
local.tee 4 | |
local.get 3 | |
i32.add | |
local.tee 5 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1072 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1084 | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 11 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1556 | |
br 10 (;@1;) | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1080 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1068 | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
br 6 (;@4;) | |
end | |
local.get 6 | |
i32.load offset=24 | |
local.set 10 | |
local.get 6 | |
i32.load offset=12 | |
local.tee 9 | |
local.get 6 | |
i32.eq | |
br_if 1 (;@8;) | |
local.get 6 | |
i32.load offset=8 | |
local.tee 4 | |
local.get 9 | |
i32.store offset=12 | |
local.get 9 | |
local.get 4 | |
i32.store offset=8 | |
local.get 10 | |
br_if 2 (;@7;) | |
br 3 (;@6;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 4 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
br 2 (;@6;) | |
end | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@9;) | |
local.get 6 | |
i32.const 16 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@8;) | |
end | |
loop ;; label = @9 | |
local.get 4 | |
local.set 8 | |
local.get 3 | |
local.tee 9 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@9;) | |
local.get 9 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 3 | |
br_if 0 (;@9;) | |
end | |
local.get 8 | |
i32.const 0 | |
i32.store | |
local.get 10 | |
i32.eqz | |
br_if 2 (;@6;) | |
br 1 (;@7;) | |
end | |
i32.const 0 | |
local.set 9 | |
local.get 10 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 6 | |
i32.load offset=28 | |
local.tee 3 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.get 6 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 10 | |
i32.const 16 | |
i32.const 20 | |
local.get 10 | |
i32.load offset=16 | |
local.get 6 | |
i32.eq | |
select | |
i32.add | |
local.get 9 | |
i32.store | |
local.get 9 | |
br_if 1 (;@8;) | |
br 3 (;@6;) | |
end | |
local.get 4 | |
local.get 9 | |
i32.store | |
local.get 9 | |
i32.eqz | |
br_if 1 (;@7;) | |
end | |
local.get 9 | |
local.get 10 | |
i32.store offset=24 | |
block ;; label = @8 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 9 | |
local.get 4 | |
i32.store offset=16 | |
local.get 4 | |
local.get 9 | |
i32.store offset=24 | |
end | |
local.get 6 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
local.get 9 | |
i32.const 20 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 4 | |
local.get 9 | |
i32.store offset=24 | |
br 1 (;@6;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 3 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
local.get 7 | |
local.get 0 | |
i32.add | |
local.set 0 | |
local.get 6 | |
local.get 7 | |
i32.add | |
local.set 6 | |
end | |
local.get 6 | |
local.get 6 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 5 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 3 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
br 2 (;@8;) | |
end | |
i32.const 0 | |
local.set 4 | |
block ;; label = @10 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@10;) | |
i32.const 31 | |
local.set 4 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 0 | |
i32.const 14 | |
local.get 3 | |
local.get 3 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 3 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 6 | |
local.get 4 | |
i32.or | |
local.get 3 | |
local.get 6 | |
i32.shl | |
local.tee 4 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 3 | |
i32.or | |
i32.sub | |
local.get 4 | |
local.get 3 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 4 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 4 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 4 | |
end | |
local.get 5 | |
local.get 4 | |
i32.store offset=28 | |
local.get 5 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 6 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 9 | |
i32.and | |
i32.eqz | |
br_if 2 (;@7;) | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 4 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 4 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 4 | |
local.get 3 | |
i32.load | |
local.set 6 | |
loop ;; label = @10 | |
local.get 6 | |
local.tee 3 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 5 (;@5;) | |
local.get 4 | |
i32.const 29 | |
i32.shr_u | |
local.set 6 | |
local.get 4 | |
i32.const 1 | |
i32.shl | |
local.set 4 | |
local.get 3 | |
local.get 6 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 9 | |
i32.load | |
local.tee 6 | |
br_if 0 (;@10;) | |
end | |
local.get 9 | |
local.get 5 | |
i32.store | |
local.get 5 | |
local.get 3 | |
i32.store offset=24 | |
br 3 (;@6;) | |
end | |
i32.const 0 | |
local.get 3 | |
local.get 4 | |
i32.or | |
i32.store offset=1060 | |
local.get 0 | |
local.set 4 | |
end | |
local.get 4 | |
local.get 5 | |
i32.store offset=12 | |
local.get 0 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 0 | |
i32.store offset=12 | |
local.get 5 | |
local.get 4 | |
i32.store offset=8 | |
br 3 (;@4;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 9 | |
i32.or | |
i32.store offset=1064 | |
local.get 5 | |
local.get 3 | |
i32.store offset=24 | |
end | |
local.get 5 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 5 | |
i32.store offset=8 | |
br 1 (;@4;) | |
end | |
local.get 3 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 5 | |
i32.store offset=12 | |
local.get 3 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 5 | |
local.get 3 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 2 (;@1;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 9 | |
local.get 9 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 10 | |
i32.const 16 | |
i32.const 20 | |
local.get 10 | |
i32.load offset=16 | |
local.get 9 | |
i32.eq | |
select | |
i32.add | |
local.get 6 | |
i32.store | |
local.get 6 | |
br_if 1 (;@4;) | |
br 3 (;@2;) | |
end | |
local.get 0 | |
local.get 6 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
local.get 6 | |
local.get 10 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 9 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 6 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 6 | |
i32.store offset=24 | |
end | |
local.get 9 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 6 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 6 | |
i32.store offset=24 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.get 7 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
local.tee 7 | |
i32.store offset=1064 | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 5 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@3;) | |
local.get 9 | |
local.get 5 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 9 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@2;) | |
end | |
local.get 8 | |
local.get 5 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 9 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 8 | |
local.get 5 | |
i32.add | |
local.get 5 | |
i32.store | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 5 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 5 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
i32.eqz | |
br_if 1 (;@6;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
br 2 (;@5;) | |
end | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 2 (;@4;) | |
i32.const 31 | |
local.set 0 | |
local.get 5 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 3 (;@3;) | |
local.get 5 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 3 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 3 | |
i32.shl | |
local.tee 0 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 0 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 0 | |
br 3 (;@3;) | |
end | |
i32.const 0 | |
local.get 5 | |
local.get 4 | |
i32.or | |
i32.store offset=1060 | |
local.get 0 | |
local.set 4 | |
end | |
local.get 4 | |
local.get 8 | |
i32.store offset=12 | |
local.get 0 | |
local.get 8 | |
i32.store offset=8 | |
local.get 8 | |
local.get 0 | |
i32.store offset=12 | |
local.get 8 | |
local.get 4 | |
i32.store offset=8 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 0 | |
end | |
local.get 8 | |
local.get 0 | |
i32.store offset=28 | |
local.get 8 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.set 4 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 7 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 5 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 4 | |
i32.load | |
local.set 3 | |
loop ;; label = @6 | |
local.get 3 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 5 | |
i32.eq | |
br_if 3 (;@3;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 3 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 6 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@6;) | |
end | |
local.get 6 | |
local.get 8 | |
i32.store | |
local.get 8 | |
local.get 4 | |
i32.store offset=24 | |
br 1 (;@4;) | |
end | |
local.get 4 | |
local.get 8 | |
i32.store | |
i32.const 0 | |
local.get 7 | |
local.get 3 | |
i32.or | |
i32.store offset=1064 | |
local.get 8 | |
local.get 4 | |
i32.store offset=24 | |
end | |
local.get 8 | |
local.get 8 | |
i32.store offset=12 | |
local.get 8 | |
local.get 8 | |
i32.store offset=8 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 8 | |
i32.store offset=12 | |
local.get 4 | |
local.get 8 | |
i32.store offset=8 | |
local.get 8 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 8 | |
local.get 4 | |
i32.store offset=12 | |
local.get 8 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 9 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $free (type 5) (param i32) | |
local.get 0 | |
call $dlfree) | |
(func $dlfree (type 5) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.const -8 | |
i32.add | |
local.tee 1 | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.const -8 | |
i32.and | |
local.tee 0 | |
i32.add | |
local.set 3 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 2 (;@2;) | |
local.get 1 | |
local.get 1 | |
i32.load | |
local.tee 2 | |
i32.sub | |
local.tee 1 | |
i32.const 0 | |
i32.load offset=1076 | |
i32.lt_u | |
br_if 2 (;@2;) | |
local.get 2 | |
local.get 0 | |
i32.add | |
local.set 0 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 1 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 1 (;@8;) | |
local.get 1 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 2 (;@7;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 6 (;@3;) | |
br 7 (;@2;) | |
end | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 4 (;@4;) | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1068 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
return | |
end | |
local.get 1 | |
i32.load offset=24 | |
local.set 6 | |
local.get 1 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 1 | |
i32.eq | |
br_if 1 (;@6;) | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@5;) | |
br 3 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 3 (;@3;) | |
br 4 (;@2;) | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 1 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
loop ;; label = @7 | |
local.get 2 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@7;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@4;) | |
br 1 (;@5;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 1 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 1 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 1 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@6;) | |
br 3 (;@4;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @6 | |
local.get 1 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 1 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
local.get 1 | |
local.get 3 | |
i32.lt_u | |
br_if 2 (;@3;) | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
local.get 1 | |
local.get 3 | |
i32.ge_u | |
br_if 1 (;@2;) | |
end | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 2 | |
i32.const 2 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1084 | |
local.get 3 | |
i32.eq | |
br_if 1 (;@10;) | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 3 | |
i32.eq | |
br_if 2 (;@9;) | |
local.get 2 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.add | |
local.set 0 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 3 (;@8;) | |
local.get 3 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 4 (;@7;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 7 (;@4;) | |
end | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 7 (;@3;) | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1084 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1072 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1072 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1080 | |
i32.ne | |
br_if 7 (;@2;) | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1068 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1080 | |
return | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1080 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1068 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
return | |
end | |
local.get 3 | |
i32.load offset=24 | |
local.set 6 | |
local.get 3 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 3 | |
i32.eq | |
br_if 1 (;@6;) | |
local.get 3 | |
i32.load offset=8 | |
local.tee 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@5;) | |
br 3 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
br 2 (;@4;) | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 3 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@6;) | |
end | |
loop ;; label = @7 | |
local.get 2 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@7;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@7;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@4;) | |
br 1 (;@5;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 3 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 3 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 3 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@6;) | |
br 3 (;@4;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @6 | |
local.get 3 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@6;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 3 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1080 | |
i32.ne | |
br_if 0 (;@3;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1068 | |
return | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 2 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 0 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 4 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 2 | |
i32.and | |
i32.eqz | |
br_if 1 (;@8;) | |
local.get 0 | |
i32.load offset=8 | |
local.set 2 | |
br 2 (;@7;) | |
end | |
i32.const 0 | |
local.set 2 | |
block ;; label = @9 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@9;) | |
i32.const 31 | |
local.set 2 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 0 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 2 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 2 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shl | |
local.tee 2 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 2 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 2 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 2 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 2 | |
end | |
local.get 1 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 1 | |
i32.const 28 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 5 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 2 (;@6;) | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 2 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 2 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 2 | |
local.get 4 | |
i32.load | |
local.set 5 | |
loop ;; label = @9 | |
local.get 5 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 5 (;@4;) | |
local.get 2 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 2 | |
i32.const 1 | |
i32.shl | |
local.set 2 | |
local.get 4 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@9;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.store | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
br 3 (;@5;) | |
end | |
i32.const 0 | |
local.get 4 | |
local.get 2 | |
i32.or | |
i32.store offset=1060 | |
local.get 0 | |
local.set 2 | |
end | |
local.get 2 | |
local.get 1 | |
i32.store offset=12 | |
local.get 0 | |
local.get 1 | |
i32.store offset=8 | |
local.get 1 | |
local.get 0 | |
i32.store offset=12 | |
local.get 1 | |
local.get 2 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
local.get 1 | |
i32.store | |
i32.const 0 | |
local.get 5 | |
local.get 3 | |
i32.or | |
i32.store offset=1064 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
end | |
local.get 1 | |
local.get 1 | |
i32.store offset=12 | |
local.get 1 | |
local.get 1 | |
i32.store offset=8 | |
br 1 (;@3;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 1 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 1 | |
local.get 4 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1092 | |
i32.const -1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1092 | |
local.get 1 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
return | |
end | |
i32.const 1516 | |
local.set 1 | |
loop ;; label = @1 | |
local.get 1 | |
i32.load | |
local.tee 0 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
local.get 0 | |
br_if 0 (;@1;) | |
end | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1092) | |
(func $calloc (type 0) (param i32 i32) (result i32) | |
(local i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 1 | |
local.get 0 | |
i32.mul | |
local.set 2 | |
block ;; label = @4 | |
local.get 1 | |
local.get 0 | |
i32.or | |
i32.const 65536 | |
i32.lt_u | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const -1 | |
local.get 2 | |
local.get 0 | |
i32.div_u | |
local.get 1 | |
i32.eq | |
select | |
local.set 2 | |
end | |
local.get 2 | |
call $dlmalloc | |
local.tee 0 | |
br_if 1 (;@2;) | |
br 2 (;@1;) | |
end | |
i32.const 0 | |
local.set 2 | |
i32.const 0 | |
call $dlmalloc | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load8_u | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 0 | |
local.get 2 | |
call $memset | |
drop | |
end | |
local.get 0) | |
(func $realloc (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 1 | |
i32.const -64 | |
i32.lt_u | |
br_if 1 (;@1;) | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1556 | |
i32.const 0 | |
return | |
end | |
local.get 1 | |
call $dlmalloc | |
return | |
end | |
i32.const 16 | |
local.get 1 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.set 2 | |
local.get 0 | |
i32.const -4 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.const -8 | |
i32.and | |
local.set 5 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 4 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.const -8 | |
i32.add | |
local.tee 6 | |
local.get 5 | |
i32.add | |
local.set 7 | |
local.get 5 | |
local.get 2 | |
i32.ge_u | |
br_if 1 (;@12;) | |
i32.const 0 | |
i32.load offset=1084 | |
local.get 7 | |
i32.eq | |
br_if 2 (;@11;) | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 7 | |
i32.eq | |
br_if 3 (;@10;) | |
local.get 7 | |
i32.load offset=4 | |
local.tee 8 | |
i32.const 2 | |
i32.and | |
br_if 4 (;@9;) | |
local.get 8 | |
i32.const -8 | |
i32.and | |
local.get 5 | |
i32.add | |
local.tee 9 | |
local.get 2 | |
i32.lt_u | |
br_if 4 (;@9;) | |
local.get 9 | |
local.get 2 | |
i32.sub | |
local.set 10 | |
local.get 8 | |
i32.const 255 | |
i32.gt_u | |
br_if 8 (;@5;) | |
local.get 7 | |
i32.load offset=12 | |
local.tee 1 | |
local.get 7 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 9 (;@4;) | |
local.get 1 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 1 | |
i32.store offset=12 | |
br 12 (;@1;) | |
end | |
local.get 2 | |
i32.const 256 | |
i32.lt_u | |
br_if 3 (;@9;) | |
local.get 5 | |
local.get 2 | |
i32.const 4 | |
i32.or | |
i32.lt_u | |
br_if 3 (;@9;) | |
local.get 5 | |
local.get 2 | |
i32.sub | |
i32.const 0 | |
i32.load offset=1540 | |
i32.const 1 | |
i32.shl | |
i32.gt_u | |
br_if 3 (;@9;) | |
br 4 (;@8;) | |
end | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 1 | |
i32.const 16 | |
i32.lt_u | |
br_if 3 (;@8;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 7 | |
local.get 7 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 2 | |
local.get 1 | |
call $dispose_chunk | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
i32.load offset=1072 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 2 | |
i32.le_u | |
br_if 1 (;@9;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
i32.const 0 | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 1 | |
i32.store offset=1084 | |
i32.const 0 | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 2 | |
i32.store offset=1072 | |
local.get 1 | |
local.get 2 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 2 | |
i32.ge_u | |
br_if 3 (;@6;) | |
end | |
local.get 1 | |
call $dlmalloc | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@7;) | |
local.get 2 | |
local.get 0 | |
local.get 3 | |
i32.load | |
local.tee 5 | |
i32.const -8 | |
i32.and | |
i32.const 4 | |
i32.const 8 | |
local.get 5 | |
i32.const 3 | |
i32.and | |
select | |
i32.sub | |
local.tee 5 | |
local.get 1 | |
local.get 5 | |
local.get 1 | |
i32.lt_u | |
select | |
call $memcpy | |
drop | |
local.get 0 | |
call $dlfree | |
local.get 2 | |
local.set 0 | |
end | |
local.get 0 | |
return | |
end | |
i32.const 0 | |
return | |
end | |
block ;; label = @6 | |
block ;; label = @7 | |
local.get 5 | |
local.get 2 | |
i32.sub | |
local.tee 1 | |
i32.const 16 | |
i32.lt_u | |
br_if 0 (;@7;) | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 5 | |
i32.add | |
local.tee 5 | |
local.get 1 | |
i32.store | |
local.get 5 | |
local.get 5 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
br 1 (;@6;) | |
end | |
local.get 3 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
local.get 5 | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 5 | |
i32.add | |
local.tee 1 | |
local.get 1 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
i32.const 0 | |
local.set 1 | |
i32.const 0 | |
local.set 2 | |
end | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1080 | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1068 | |
local.get 0 | |
return | |
end | |
local.get 7 | |
i32.load offset=24 | |
local.set 11 | |
local.get 7 | |
i32.load offset=12 | |
local.tee 8 | |
local.get 7 | |
i32.eq | |
br_if 1 (;@3;) | |
local.get 7 | |
i32.load offset=8 | |
local.tee 1 | |
local.get 8 | |
i32.store offset=12 | |
local.get 8 | |
local.get 1 | |
i32.store offset=8 | |
local.get 11 | |
br_if 2 (;@2;) | |
br 3 (;@1;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 8 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
br 2 (;@1;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 7 | |
i32.const 20 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@4;) | |
local.get 7 | |
i32.const 16 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
loop ;; label = @4 | |
local.get 1 | |
local.set 12 | |
local.get 5 | |
local.tee 8 | |
i32.const 20 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@4;) | |
local.get 8 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
local.get 8 | |
i32.load offset=16 | |
local.tee 5 | |
br_if 0 (;@4;) | |
end | |
local.get 12 | |
i32.const 0 | |
i32.store | |
local.get 11 | |
i32.eqz | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.set 8 | |
local.get 11 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 7 | |
i32.load offset=28 | |
local.tee 5 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.get 7 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 11 | |
i32.const 16 | |
i32.const 20 | |
local.get 11 | |
i32.load offset=16 | |
local.get 7 | |
i32.eq | |
select | |
i32.add | |
local.get 8 | |
i32.store | |
local.get 8 | |
br_if 1 (;@3;) | |
br 3 (;@1;) | |
end | |
local.get 1 | |
local.get 8 | |
i32.store | |
local.get 8 | |
i32.eqz | |
br_if 1 (;@2;) | |
end | |
local.get 8 | |
local.get 11 | |
i32.store offset=24 | |
block ;; label = @3 | |
local.get 7 | |
i32.load offset=16 | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 8 | |
local.get 1 | |
i32.store offset=16 | |
local.get 1 | |
local.get 8 | |
i32.store offset=24 | |
end | |
local.get 7 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 8 | |
i32.const 20 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 1 | |
local.get 8 | |
i32.store offset=24 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 5 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
block ;; label = @1 | |
local.get 10 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
local.get 9 | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 9 | |
i32.add | |
local.tee 1 | |
local.get 1 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
return | |
end | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 6 | |
local.get 2 | |
i32.add | |
local.tee 1 | |
local.get 10 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 9 | |
i32.add | |
local.tee 2 | |
local.get 2 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 10 | |
call $dispose_chunk | |
local.get 0) | |
(func $dispose_chunk (type 11) (param i32 i32) | |
(local i32 i32 i32 i32 i32 i32) | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 1 | |
i32.and | |
br_if 0 (;@10;) | |
local.get 3 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 0 | |
i32.load | |
local.tee 3 | |
local.get 1 | |
i32.add | |
local.set 1 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 0 | |
i32.eq | |
br_if 0 (;@15;) | |
local.get 3 | |
i32.const 255 | |
i32.gt_u | |
br_if 1 (;@14;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 0 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 2 (;@13;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 5 (;@10;) | |
end | |
local.get 2 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 4 (;@10;) | |
local.get 2 | |
i32.const 4 | |
i32.add | |
local.get 3 | |
i32.const -2 | |
i32.and | |
i32.store | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1068 | |
local.get 2 | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
return | |
end | |
local.get 0 | |
i32.load offset=24 | |
local.set 6 | |
local.get 0 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 0 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 3 | |
i32.store offset=8 | |
local.get 6 | |
br_if 2 (;@11;) | |
br 3 (;@10;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 3 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
br 2 (;@10;) | |
end | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 0 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@12;) | |
end | |
loop ;; label = @13 | |
local.get 3 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@13;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@13;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@10;) | |
br 1 (;@11;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@10;) | |
end | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 0 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.get 0 | |
i32.eq | |
br_if 0 (;@13;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 0 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@12;) | |
br 3 (;@10;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@11;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @12 | |
local.get 0 | |
i32.load offset=16 | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@12;) | |
local.get 5 | |
local.get 3 | |
i32.store offset=16 | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 0 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@10;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@10;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 2 | |
i32.load offset=4 | |
local.tee 3 | |
i32.const 2 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1084 | |
local.get 2 | |
i32.eq | |
br_if 1 (;@10;) | |
i32.const 0 | |
i32.load offset=1080 | |
local.get 2 | |
i32.eq | |
br_if 3 (;@8;) | |
local.get 3 | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 255 | |
i32.gt_u | |
br_if 4 (;@7;) | |
local.get 2 | |
i32.load offset=12 | |
local.tee 4 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 5 | |
i32.eq | |
br_if 6 (;@5;) | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
br 9 (;@2;) | |
end | |
local.get 2 | |
i32.const 4 | |
i32.add | |
local.get 3 | |
i32.const -2 | |
i32.and | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 9 (;@1;) | |
end | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1084 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1072 | |
local.get 1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1072 | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1080 | |
i32.eq | |
br_if 3 (;@6;) | |
end | |
return | |
end | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1080 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1068 | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
return | |
end | |
local.get 2 | |
i32.load offset=24 | |
local.set 6 | |
local.get 2 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 2 | |
i32.eq | |
br_if 2 (;@4;) | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 3 | |
i32.store offset=8 | |
local.get 6 | |
br_if 3 (;@3;) | |
br 4 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1068 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1080 | |
return | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1060 | |
i32.const -2 | |
local.get 3 | |
i32.const 3 | |
i32.shr_u | |
i32.rotl | |
i32.and | |
i32.store offset=1060 | |
br 2 (;@2;) | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
loop ;; label = @5 | |
local.get 3 | |
local.set 7 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@5;) | |
end | |
local.get 7 | |
i32.const 0 | |
i32.store | |
local.get 6 | |
i32.eqz | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
i32.const 0 | |
local.set 5 | |
local.get 6 | |
i32.eqz | |
br_if 1 (;@2;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.get 2 | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 6 | |
i32.const 16 | |
i32.const 20 | |
local.get 6 | |
i32.load offset=16 | |
local.get 2 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@4;) | |
br 3 (;@2;) | |
end | |
local.get 3 | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
local.get 5 | |
local.get 6 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 2 | |
i32.load offset=16 | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 5 | |
local.get 3 | |
i32.store offset=16 | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 2 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 3 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1064 | |
end | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1080 | |
i32.ne | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1068 | |
return | |
end | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 1 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 1 | |
i32.const 3 | |
i32.shr_u | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
i32.const 1100 | |
i32.add | |
local.set 1 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 4 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@5;) | |
local.get 1 | |
i32.load offset=8 | |
local.set 3 | |
br 2 (;@4;) | |
end | |
i32.const 0 | |
local.set 3 | |
block ;; label = @6 | |
local.get 1 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@6;) | |
i32.const 31 | |
local.set 3 | |
local.get 1 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 1 | |
i32.const 14 | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 3 | |
i32.shl | |
local.tee 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 5 | |
local.get 3 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shl | |
local.tee 3 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
i32.sub | |
local.get 3 | |
local.get 4 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
i32.add | |
local.tee 3 | |
i32.const 7 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 3 | |
i32.const 1 | |
i32.shl | |
i32.or | |
local.set 3 | |
end | |
local.get 0 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 0 | |
i32.const 28 | |
i32.add | |
local.get 3 | |
i32.store | |
local.get 3 | |
i32.const 2 | |
i32.shl | |
i32.const 1364 | |
i32.add | |
local.set 4 | |
i32.const 0 | |
i32.load offset=1064 | |
local.tee 5 | |
i32.const 1 | |
local.get 3 | |
i32.shl | |
local.tee 2 | |
i32.and | |
i32.eqz | |
br_if 2 (;@3;) | |
local.get 1 | |
i32.const 0 | |
i32.const 25 | |
local.get 3 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 3 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 3 | |
local.get 4 | |
i32.load | |
local.set 5 | |
loop ;; label = @6 | |
local.get 5 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.eq | |
br_if 5 (;@1;) | |
local.get 3 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 3 | |
i32.const 1 | |
i32.shl | |
local.set 3 | |
local.get 4 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@6;) | |
end | |
local.get 2 | |
local.get 0 | |
i32.store | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
local.get 4 | |
local.get 3 | |
i32.or | |
i32.store offset=1060 | |
local.get 1 | |
local.set 3 | |
end | |
local.get 3 | |
local.get 0 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
local.get 1 | |
i32.store offset=12 | |
local.get 0 | |
local.get 3 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
local.get 0 | |
i32.store | |
i32.const 0 | |
local.get 5 | |
local.get 2 | |
i32.or | |
i32.store offset=1064 | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
end | |
local.get 0 | |
local.get 0 | |
i32.store offset=12 | |
local.get 0 | |
local.get 0 | |
i32.store offset=8 | |
return | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 1 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
local.get 0 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 0 | |
local.get 1 | |
i32.store offset=8) | |
(func $posix_memalign (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 1 | |
i32.const 8 | |
i32.ne | |
br_if 0 (;@3;) | |
local.get 2 | |
call $dlmalloc | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@2;) | |
br 2 (;@1;) | |
end | |
i32.const 28 | |
local.set 3 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.const 2 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.get 4 | |
i32.and | |
br_if 0 (;@4;) | |
i32.const 48 | |
local.set 3 | |
i32.const -64 | |
local.get 1 | |
i32.sub | |
local.get 2 | |
i32.ge_u | |
br_if 1 (;@3;) | |
end | |
local.get 3 | |
return | |
end | |
local.get 1 | |
i32.const 16 | |
local.get 1 | |
i32.const 16 | |
i32.gt_u | |
select | |
local.get 2 | |
call $internal_memalign | |
local.tee 1 | |
br_if 1 (;@1;) | |
end | |
i32.const 48 | |
return | |
end | |
local.get 0 | |
local.get 1 | |
i32.store | |
i32.const 0) | |
(func $internal_memalign (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32) | |
i32.const 16 | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.const 16 | |
local.get 0 | |
i32.const 16 | |
i32.gt_u | |
select | |
local.tee 3 | |
i32.const -1 | |
i32.add | |
local.get 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
loop ;; label = @3 | |
local.get 2 | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.set 2 | |
local.get 0 | |
local.get 3 | |
i32.lt_u | |
br_if 0 (;@3;) | |
br 2 (;@1;) | |
end | |
end | |
local.get 3 | |
local.set 0 | |
end | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
i32.const -64 | |
local.get 0 | |
i32.sub | |
local.get 1 | |
i32.le_u | |
br_if 0 (;@5;) | |
i32.const 16 | |
local.get 1 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 1 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.tee 1 | |
local.get 0 | |
i32.add | |
i32.const 12 | |
i32.add | |
call $dlmalloc | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 2 | |
i32.const -8 | |
i32.add | |
local.set 3 | |
local.get 0 | |
i32.const -1 | |
i32.add | |
local.get 2 | |
i32.and | |
i32.eqz | |
br_if 2 (;@3;) | |
local.get 2 | |
i32.const -4 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 5 | |
i32.const -8 | |
i32.and | |
local.get 2 | |
local.get 0 | |
i32.add | |
i32.const -1 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -8 | |
i32.add | |
local.tee 2 | |
local.get 2 | |
local.get 0 | |
i32.add | |
local.get 2 | |
local.get 3 | |
i32.sub | |
i32.const 15 | |
i32.gt_u | |
select | |
local.tee 0 | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
i32.sub | |
local.set 6 | |
local.get 5 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 3 (;@2;) | |
local.get 0 | |
local.get 6 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 6 | |
i32.add | |
local.tee 6 | |
local.get 6 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 2 | |
local.get 4 | |
i32.load | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 3 | |
local.get 2 | |
call $dispose_chunk | |
br 4 (;@1;) | |
end | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1556 | |
i32.const 0 | |
return | |
end | |
i32.const 0 | |
return | |
end | |
local.get 3 | |
local.set 0 | |
br 1 (;@1;) | |
end | |
local.get 0 | |
local.get 6 | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.load | |
local.get 2 | |
i32.add | |
i32.store | |
end | |
block ;; label = @1 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const -8 | |
i32.and | |
local.tee 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
i32.le_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.get 1 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 2 | |
i32.or | |
i32.store | |
local.get 0 | |
local.get 1 | |
i32.add | |
local.tee 2 | |
local.get 3 | |
local.get 1 | |
i32.sub | |
local.tee 1 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.add | |
local.tee 3 | |
local.get 3 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 2 | |
local.get 1 | |
call $dispose_chunk | |
end | |
local.get 0 | |
i32.const 8 | |
i32.add) | |
(func $aligned_alloc (type 0) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.const 8 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 1 | |
call $dlmalloc | |
return | |
end | |
local.get 0 | |
local.get 1 | |
call $internal_memalign) | |
(func $malloc_usable_size (type 1) (param i32) (result i32) | |
(local i32 i32) | |
i32.const 0 | |
local.set 1 | |
block ;; label = @1 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -8 | |
i32.and | |
i32.const 4 | |
i32.const 8 | |
local.get 2 | |
select | |
i32.sub | |
local.set 1 | |
end | |
local.get 1) | |
(func $_Exit (type 5) (param i32) | |
local.get 0 | |
call $__wasi_proc_exit | |
unreachable) | |
(func $openat (type 3) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32 i64 i64 i64) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 2 | |
i32.const 503316480 | |
i32.and | |
i32.const -33554432 | |
i32.add | |
i32.const 25 | |
i32.shr_u | |
local.tee 5 | |
i32.const 9 | |
i32.gt_u | |
br_if 0 (;@6;) | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
i32.const 1 | |
local.get 5 | |
i32.shl | |
local.tee 5 | |
i32.const 642 | |
i32.and | |
i32.eqz | |
br_if 0 (;@10;) | |
local.get 2 | |
i32.const 67108864 | |
i32.and | |
br_if 1 (;@9;) | |
i64.const 0 | |
local.set 6 | |
i64.const -4211012 | |
local.set 7 | |
br 2 (;@8;) | |
end | |
local.get 5 | |
i32.const 9 | |
i32.and | |
i32.eqz | |
br_if 3 (;@6;) | |
i64.const 0 | |
local.set 6 | |
i64.const -4211012 | |
local.set 7 | |
br 2 (;@7;) | |
end | |
i64.const 16384 | |
i64.const 2 | |
local.get 2 | |
i32.const 8192 | |
i32.and | |
select | |
local.set 6 | |
i64.const -4194626 | |
local.set 7 | |
end | |
local.get 2 | |
i32.const 268435456 | |
i32.and | |
i32.eqz | |
br_if 0 (;@7;) | |
local.get 7 | |
i64.const 4194625 | |
i64.or | |
local.set 7 | |
local.get 6 | |
i64.const 64 | |
i64.const 68 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
select | |
i64.or | |
local.set 6 | |
end | |
local.get 6 | |
local.get 7 | |
i64.and | |
local.get 6 | |
i64.ne | |
br_if 5 (;@1;) | |
block ;; label = @7 | |
local.get 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
call $__wasi_fd_fdstat_get | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@7;) | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1556 | |
i32.const -1 | |
local.set 5 | |
br 5 (;@2;) | |
end | |
local.get 4 | |
i32.load8_u offset=8 | |
i32.const 3 | |
i32.ne | |
br_if 1 (;@5;) | |
local.get 4 | |
i64.load offset=24 | |
local.tee 8 | |
local.get 6 | |
i64.and | |
local.get 6 | |
i64.ne | |
br_if 2 (;@4;) | |
i32.const -1 | |
local.set 5 | |
local.get 0 | |
local.get 2 | |
i32.const 24 | |
i32.shr_u | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
i32.const 12 | |
i32.shr_u | |
i32.const 4095 | |
i32.and | |
local.get 8 | |
local.get 7 | |
i64.and | |
local.get 8 | |
local.get 2 | |
i32.const 4095 | |
i32.and | |
local.get 4 | |
i32.const 4 | |
i32.add | |
call $__wasi_path_open | |
local.tee 2 | |
i32.eqz | |
br_if 3 (;@3;) | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1556 | |
br 4 (;@2;) | |
end | |
i32.const 0 | |
i32.const 28 | |
i32.store offset=1556 | |
i32.const -1 | |
local.set 5 | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
i32.const 54 | |
i32.store offset=1556 | |
i32.const -1 | |
local.set 5 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
i32.const -1 | |
local.set 5 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=4 | |
local.set 5 | |
end | |
local.get 4 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 5 | |
return | |
end | |
call $abort | |
unreachable) | |
(func $faccessat (type 3) (param i32 i32 i32 i32) (result i32) | |
(local i32 i64) | |
global.get 0 | |
i32.const 80 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 7 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 3 | |
br_if 0 (;@4;) | |
local.get 0 | |
i32.const 1 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 4 | |
i32.const 24 | |
i32.add | |
call $__wasi_path_filestat_get | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@3;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
i32.const 28 | |
i32.store offset=1556 | |
br 1 (;@2;) | |
end | |
i32.const 0 | |
local.set 1 | |
local.get 2 | |
i32.eqz | |
br_if 1 (;@1;) | |
block ;; label = @3 | |
local.get 0 | |
local.get 4 | |
call $__wasi_fd_fdstat_get | |
local.tee 3 | |
br_if 0 (;@3;) | |
i64.const 0 | |
local.set 5 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@4;) | |
i64.const 16384 | |
i64.const 2 | |
local.get 4 | |
i32.load8_u offset=40 | |
i32.const 3 | |
i32.eq | |
select | |
local.set 5 | |
end | |
i32.const 2 | |
local.set 3 | |
local.get 5 | |
local.get 2 | |
i32.const 5 | |
i32.shl | |
i32.const 64 | |
i32.and | |
i64.extend_i32_u | |
i64.or | |
local.tee 5 | |
local.get 4 | |
i64.load offset=16 | |
i64.and | |
local.get 5 | |
i64.eq | |
br_if 2 (;@1;) | |
end | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1556 | |
end | |
i32.const -1 | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 80 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $fstatat (type 3) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32 i64 i64 i64 i64 i64 i64) | |
global.get 0 | |
i32.const 96 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
i32.const -1 | |
local.set 5 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 3 | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 4 | |
i32.const 8 | |
i32.add | |
call $__wasi_path_filestat_get | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
br 1 (;@1;) | |
end | |
local.get 2 | |
i64.const 0 | |
i64.store offset=64 | |
i32.const 0 | |
local.set 5 | |
local.get 2 | |
i32.const 0 | |
i32.store offset=56 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=40 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=32 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=24 | |
local.get 4 | |
i32.const 88 | |
i32.add | |
i64.const 0 | |
i64.store align=4 | |
local.get 4 | |
i32.const 80 | |
i32.add | |
i64.const 0 | |
i64.store align=4 | |
local.get 2 | |
local.get 4 | |
i64.load offset=32 | |
i64.store offset=48 | |
local.get 2 | |
local.get 4 | |
i64.load32_u offset=28 | |
i64.store offset=16 | |
local.get 2 | |
local.get 4 | |
i64.load offset=16 | |
i64.store offset=8 | |
local.get 2 | |
local.get 4 | |
i64.load offset=8 | |
i64.store | |
local.get 2 | |
local.get 4 | |
i64.load offset=56 | |
local.tee 6 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 7 | |
i64.store offset=104 | |
local.get 2 | |
local.get 4 | |
i64.load offset=48 | |
local.tee 8 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 9 | |
i64.store offset=88 | |
local.get 2 | |
local.get 4 | |
i64.load offset=40 | |
local.tee 10 | |
i64.const 1000000000 | |
i64.div_u | |
local.tee 11 | |
i64.store offset=72 | |
local.get 2 | |
i32.const 112 | |
i32.add | |
local.get 6 | |
local.get 7 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 2 | |
i32.const 96 | |
i32.add | |
local.get 8 | |
local.get 9 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 2 | |
i32.const 80 | |
i32.add | |
local.get 10 | |
local.get 11 | |
i64.const 1000000000 | |
i64.mul | |
i64.sub | |
i64.store32 | |
local.get 4 | |
i64.const 0 | |
i64.store offset=72 align=4 | |
local.get 2 | |
i32.const 140 | |
i32.add | |
local.get 4 | |
i32.const 68 | |
i32.add | |
i32.const 24 | |
i32.add | |
i32.load | |
i32.store | |
local.get 2 | |
i32.const 132 | |
i32.add | |
local.get 4 | |
i32.const 84 | |
i32.add | |
i64.load align=4 | |
i64.store align=4 | |
local.get 2 | |
i32.const 124 | |
i32.add | |
local.get 4 | |
i32.const 76 | |
i32.add | |
i64.load align=4 | |
i64.store align=4 | |
local.get 2 | |
local.get 4 | |
i64.load offset=68 align=4 | |
i64.store offset=116 align=4 | |
local.get 4 | |
i32.load8_u offset=24 | |
i32.const -1 | |
i32.add | |
local.tee 1 | |
i32.const 255 | |
i32.and | |
i32.const 6 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const 24 | |
i32.add | |
local.get 1 | |
i32.const 24 | |
i32.shl | |
i32.const 24 | |
i32.shr_s | |
i32.const 2 | |
i32.shl | |
i32.const 1792 | |
i32.add | |
i32.load | |
i32.store | |
end | |
local.get 4 | |
i32.const 96 | |
i32.add | |
global.set 0 | |
local.get 5) | |
(func $renameat (type 3) (param i32 i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 3 | |
call $strlen | |
call $__wasi_path_rename | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $__wasilibc_rmfileat (type 0) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_unlink_file | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $__wasilibc_rmdirat (type 0) (param i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_remove_directory | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $linkat (type 7) (param i32 i32 i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 4 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 3 | |
call $strlen | |
call $__wasi_path_link | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 3 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $mkdirat (type 4) (param i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
call $__wasi_path_create_directory | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $fdopendir (type 1) (param i32) (result i32) | |
(local i32 i32) | |
i32.const 0 | |
local.set 1 | |
block ;; label = @1 | |
i32.const 40 | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
i32.const 4096 | |
call $malloc | |
local.tee 1 | |
i32.store offset=16 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 0 | |
local.get 1 | |
i32.const 4096 | |
i64.const 0 | |
local.get 2 | |
i32.const 28 | |
i32.add | |
call $__wasi_fd_readdir | |
local.tee 1 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 2 | |
i32.const 16 | |
i32.add | |
i32.load | |
call $free | |
local.get 2 | |
call $free | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
i32.const 0 | |
return | |
end | |
local.get 2 | |
call $free | |
i32.const 0 | |
return | |
end | |
local.get 2 | |
i64.const 4294967296 | |
i64.store offset=32 | |
local.get 2 | |
i64.const 17592186044416 | |
i64.store offset=20 align=4 | |
local.get 2 | |
i64.const 0 | |
i64.store offset=8 | |
local.get 2 | |
local.get 0 | |
i32.store | |
local.get 2 | |
local.set 1 | |
end | |
local.get 1) | |
(func $close (type 1) (param i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
call $__wasi_fd_close | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $opendirat (type 0) (param i32 i32) (result i32) | |
(local i32) | |
i32.const 0 | |
local.set 2 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 1 | |
i32.const 67117060 | |
i32.const 0 | |
call $openat | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
call $fdopendir | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
local.get 2 | |
return | |
end | |
local.get 0 | |
call $close | |
drop | |
i32.const 0) | |
(func $readlinkat (type 3) (param i32 i32 i32 i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
local.get 1 | |
local.get 1 | |
call $strlen | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 12 | |
i32.add | |
call $__wasi_path_readlink | |
local.tee 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
i32.const -1 | |
local.set 1 | |
br 1 (;@1;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $scandirat (type 7) (param i32 i32 i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i64 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 5 | |
global.set 0 | |
i32.const -1 | |
local.set 6 | |
block ;; label = @1 | |
local.get 0 | |
local.get 1 | |
i32.const 67117060 | |
i32.const 0 | |
call $openat | |
local.tee 7 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@1;) | |
i32.const 4096 | |
local.set 0 | |
block ;; label = @2 | |
i32.const 4096 | |
call $malloc | |
local.tee 8 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
i32.const 2 | |
local.get 3 | |
select | |
local.set 9 | |
local.get 5 | |
i32.const 4096 | |
i32.store offset=28 | |
i64.const 0 | |
local.set 10 | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 11 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
local.set 12 | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.set 13 | |
i32.const 0 | |
local.set 14 | |
i32.const 0 | |
local.set 6 | |
i32.const 0 | |
local.set 15 | |
i32.const 0 | |
local.set 16 | |
i32.const 0 | |
local.set 17 | |
i32.const 4096 | |
local.set 18 | |
i32.const 4096 | |
local.set 1 | |
loop ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
local.get 0 | |
local.get 18 | |
i32.sub | |
local.tee 19 | |
i32.const 23 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 0 | |
local.get 1 | |
i32.lt_u | |
br_if 5 (;@9;) | |
local.get 8 | |
local.set 3 | |
local.get 1 | |
local.set 0 | |
br 1 (;@13;) | |
end | |
local.get 5 | |
local.get 8 | |
local.get 18 | |
i32.add | |
local.tee 20 | |
i32.const 24 | |
call $memcpy | |
drop | |
local.get 11 | |
i32.load | |
local.tee 0 | |
i32.const 24 | |
i32.add | |
local.set 3 | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@12;) | |
local.get 19 | |
local.get 3 | |
i32.ge_u | |
br_if 2 (;@11;) | |
loop ;; label = @14 | |
local.get 1 | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.set 1 | |
local.get 0 | |
local.get 3 | |
i32.lt_u | |
br_if 0 (;@14;) | |
end | |
local.get 8 | |
local.get 0 | |
call $realloc | |
local.tee 3 | |
i32.eqz | |
br_if 5 (;@8;) | |
end | |
i32.const 0 | |
local.set 18 | |
local.get 7 | |
local.get 3 | |
local.get 0 | |
local.get 10 | |
local.get 5 | |
i32.const 28 | |
i32.add | |
call $__wasi_fd_readdir | |
local.tee 1 | |
br_if 2 (;@10;) | |
local.get 3 | |
local.set 8 | |
local.get 0 | |
local.set 1 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 9 (;@3;) | |
end | |
local.get 3 | |
local.get 18 | |
i32.add | |
local.set 18 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 8 (;@3;) | |
end | |
local.get 3 | |
local.get 18 | |
i32.add | |
local.set 18 | |
local.get 20 | |
i32.const 24 | |
i32.add | |
local.tee 3 | |
i32.const 0 | |
local.get 0 | |
call $memchr | |
br_if 6 (;@4;) | |
local.get 0 | |
i32.const 10 | |
i32.add | |
call $malloc | |
local.tee 0 | |
i32.eqz | |
br_if 2 (;@8;) | |
local.get 12 | |
i64.load | |
local.set 10 | |
local.get 0 | |
local.get 13 | |
i32.load8_u | |
i32.store8 offset=8 | |
local.get 0 | |
local.get 10 | |
i64.store | |
local.get 0 | |
i32.const 9 | |
i32.add | |
local.tee 19 | |
local.get 3 | |
local.get 11 | |
i32.load | |
call $memcpy | |
drop | |
local.get 19 | |
local.get 11 | |
i32.load | |
i32.add | |
i32.const 0 | |
i32.store8 | |
local.get 5 | |
i64.load | |
local.set 10 | |
block ;; label = @11 | |
local.get 0 | |
local.get 9 | |
call_indirect (type 1) | |
i32.eqz | |
br_if 0 (;@11;) | |
block ;; label = @12 | |
local.get 6 | |
local.get 14 | |
i32.ne | |
br_if 0 (;@12;) | |
local.get 16 | |
i32.const 8 | |
local.get 14 | |
i32.const 1 | |
i32.shl | |
local.get 14 | |
i32.const 8 | |
i32.lt_u | |
select | |
local.tee 3 | |
i32.const 2 | |
i32.shl | |
call $realloc | |
local.tee 16 | |
i32.eqz | |
br_if 5 (;@7;) | |
local.get 3 | |
local.set 14 | |
local.get 16 | |
local.set 15 | |
local.get 16 | |
local.set 17 | |
end | |
local.get 17 | |
local.get 6 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 6 | |
i32.const 1 | |
i32.add | |
local.set 6 | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 8 (;@3;) | |
end | |
local.get 0 | |
call $free | |
br 6 (;@4;) | |
end | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1556 | |
local.get 3 | |
local.set 8 | |
local.get 6 | |
local.tee 14 | |
br_if 3 (;@6;) | |
br 4 (;@5;) | |
end | |
local.get 8 | |
call $free | |
local.get 7 | |
call $close | |
drop | |
local.get 16 | |
local.get 6 | |
i32.const 4 | |
local.get 4 | |
call $qsort | |
local.get 2 | |
local.get 15 | |
i32.store | |
br 7 (;@1;) | |
end | |
local.get 6 | |
local.tee 14 | |
i32.eqz | |
br_if 2 (;@5;) | |
br 1 (;@6;) | |
end | |
local.get 0 | |
call $free | |
local.get 14 | |
i32.eqz | |
br_if 1 (;@5;) | |
end | |
loop ;; label = @6 | |
local.get 17 | |
i32.load | |
call $free | |
local.get 17 | |
i32.const 4 | |
i32.add | |
local.set 17 | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 14 | |
br_if 0 (;@6;) | |
end | |
end | |
local.get 15 | |
call $free | |
local.get 8 | |
call $free | |
local.get 7 | |
call $close | |
drop | |
i32.const -1 | |
local.set 6 | |
br 3 (;@1;) | |
end | |
local.get 5 | |
i32.load offset=28 | |
local.set 0 | |
br 0 (;@3;) | |
end | |
end | |
local.get 7 | |
call $close | |
drop | |
end | |
local.get 5 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 6) | |
(func $sel_true (type 1) (param i32) (result i32) | |
i32.const 1) | |
(func $symlinkat (type 4) (param i32 i32 i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
local.get 0 | |
call $strlen | |
local.get 1 | |
local.get 2 | |
local.get 2 | |
call $strlen | |
call $__wasi_path_symlink | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
i32.const 0) | |
(func $open (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 3 | |
global.set 0 | |
i32.const 0 | |
local.set 4 | |
block ;; label = @1 | |
local.get 1 | |
i32.const 4096 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 2 | |
i32.const 4 | |
i32.add | |
i32.store offset=28 | |
local.get 2 | |
i32.load | |
local.set 4 | |
end | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 3 | |
i32.load offset=16 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
i32.load offset=20 | |
local.set 0 | |
local.get 3 | |
local.get 4 | |
i32.store | |
local.get 2 | |
local.get 0 | |
local.get 1 | |
local.get 3 | |
call $openat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 3 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $find_relative (type 12) (param i32 i32 i64 i64) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
i32.const 0 | |
local.set 4 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
i32.const 0 | |
i32.load offset=1560 | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 5 | |
call $po_map_assertvalid | |
i32.const 0 | |
i32.load offset=1560 | |
local.tee 5 | |
call $po_map_assertvalid | |
local.get 1 | |
i32.eqz | |
br_if 3 (;@2;) | |
local.get 5 | |
i32.load offset=12 | |
local.tee 6 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.load offset=4 | |
local.set 7 | |
i32.const 0 | |
local.set 8 | |
local.get 1 | |
i32.load8_u | |
local.tee 9 | |
i32.const 47 | |
i32.eq | |
local.set 10 | |
local.get 9 | |
i32.const 46 | |
i32.ne | |
local.set 11 | |
i32.const -1 | |
local.set 12 | |
i32.const 0 | |
local.set 13 | |
loop ;; label = @6 | |
local.get 7 | |
local.get 8 | |
i32.const 24 | |
i32.mul | |
i32.add | |
local.tee 14 | |
i32.load | |
local.tee 15 | |
call $strlen | |
local.set 16 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 10 | |
br_if 0 (;@15;) | |
block ;; label = @16 | |
local.get 11 | |
br_if 0 (;@16;) | |
local.get 1 | |
i32.const 1 | |
i32.add | |
i32.load8_u | |
local.tee 4 | |
i32.eqz | |
br_if 1 (;@15;) | |
local.get 4 | |
i32.const 47 | |
i32.eq | |
br_if 1 (;@15;) | |
end | |
block ;; label = @16 | |
local.get 16 | |
i32.const 2 | |
i32.lt_u | |
br_if 0 (;@16;) | |
local.get 15 | |
i32.load8_u | |
local.tee 4 | |
i32.const 46 | |
i32.ne | |
br_if 4 (;@12;) | |
i32.const 46 | |
local.set 4 | |
local.get 15 | |
i32.load8_u offset=1 | |
i32.const 47 | |
i32.ne | |
br_if 4 (;@12;) | |
local.get 16 | |
i32.const -2 | |
i32.add | |
local.set 16 | |
local.get 15 | |
i32.const 2 | |
i32.add | |
local.set 15 | |
local.get 10 | |
i32.eqz | |
br_if 2 (;@14;) | |
br 3 (;@13;) | |
end | |
local.get 16 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@15;) | |
local.get 15 | |
i32.const 1 | |
i32.add | |
local.get 15 | |
local.get 15 | |
i32.load8_u | |
local.tee 4 | |
i32.const 46 | |
i32.eq | |
select | |
local.set 15 | |
local.get 4 | |
i32.const 46 | |
i32.ne | |
local.set 16 | |
local.get 10 | |
i32.eqz | |
br_if 1 (;@14;) | |
br 2 (;@13;) | |
end | |
local.get 15 | |
i32.eqz | |
br_if 9 (;@5;) | |
local.get 10 | |
br_if 1 (;@13;) | |
end | |
i32.const 0 | |
local.set 17 | |
local.get 16 | |
i32.eqz | |
br_if 5 (;@8;) | |
end | |
local.get 16 | |
i32.eqz | |
br_if 1 (;@11;) | |
local.get 15 | |
i32.load8_u | |
local.set 4 | |
end | |
local.get 9 | |
local.get 4 | |
i32.const 255 | |
i32.and | |
i32.ne | |
br_if 4 (;@7;) | |
i32.const 1 | |
local.set 4 | |
loop ;; label = @12 | |
local.get 4 | |
local.get 16 | |
i32.ge_u | |
br_if 2 (;@10;) | |
local.get 15 | |
local.get 4 | |
i32.add | |
local.set 5 | |
local.get 1 | |
local.get 4 | |
i32.add | |
local.set 18 | |
local.get 4 | |
i32.const 1 | |
i32.add | |
local.set 4 | |
local.get 18 | |
i32.load8_u | |
local.get 5 | |
i32.load8_u | |
i32.eq | |
br_if 0 (;@12;) | |
br 5 (;@7;) | |
end | |
end | |
i32.const 0 | |
local.set 17 | |
i32.const 0 | |
local.set 4 | |
br 1 (;@9;) | |
end | |
local.get 16 | |
local.set 17 | |
end | |
local.get 15 | |
i32.const -1 | |
i32.add | |
local.set 18 | |
block ;; label = @9 | |
loop ;; label = @10 | |
local.get 4 | |
local.tee 5 | |
i32.eqz | |
br_if 1 (;@9;) | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.set 4 | |
local.get 18 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
i32.const 47 | |
i32.eq | |
br_if 0 (;@10;) | |
end | |
end | |
local.get 1 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
local.tee 4 | |
i32.const 47 | |
i32.eq | |
br_if 0 (;@8;) | |
local.get 4 | |
br_if 1 (;@7;) | |
end | |
local.get 14 | |
i64.load offset=8 | |
i64.const -1 | |
i64.xor | |
local.get 2 | |
i64.and | |
i64.const 0 | |
i64.ne | |
br_if 0 (;@7;) | |
local.get 14 | |
i64.load offset=16 | |
i64.const -1 | |
i64.xor | |
local.get 3 | |
i64.and | |
i64.const 0 | |
i64.ne | |
br_if 0 (;@7;) | |
local.get 14 | |
i32.load offset=4 | |
local.set 12 | |
local.get 17 | |
local.set 13 | |
end | |
local.get 8 | |
i32.const 1 | |
i32.add | |
local.tee 8 | |
local.get 6 | |
i32.lt_u | |
br_if 0 (;@6;) | |
br 3 (;@3;) | |
end | |
end | |
call $abort | |
unreachable | |
end | |
i32.const -1 | |
local.set 12 | |
i32.const 0 | |
local.set 13 | |
end | |
local.get 1 | |
local.get 13 | |
i32.add | |
local.tee 4 | |
i32.const 1 | |
i32.add | |
local.get 4 | |
local.get 4 | |
i32.load8_u | |
i32.const 47 | |
i32.eq | |
local.tee 5 | |
select | |
i32.const 1820 | |
local.get 4 | |
local.get 5 | |
i32.add | |
i32.load8_u | |
select | |
local.set 4 | |
br 1 (;@1;) | |
end | |
i32.const -1 | |
local.set 12 | |
end | |
local.get 0 | |
local.get 4 | |
i32.store offset=4 | |
local.get 0 | |
local.get 12 | |
i32.store) | |
(func $po_map_assertvalid (type 5) (param i32) | |
(local i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.load | |
i32.const 0 | |
i32.le_s | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.load offset=12 | |
local.tee 1 | |
local.get 0 | |
i32.load offset=8 | |
local.tee 2 | |
i32.gt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.load offset=4 | |
local.set 0 | |
block ;; label = @2 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@1;) | |
end | |
block ;; label = @2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @3 | |
local.get 0 | |
i32.load | |
i32.eqz | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
i32.load | |
i32.const -1 | |
i32.le_s | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 24 | |
i32.add | |
local.set 0 | |
local.get 2 | |
i32.const 1 | |
i32.add | |
local.tee 2 | |
local.get 1 | |
i32.lt_u | |
br_if 0 (;@3;) | |
end | |
end | |
return | |
end | |
call $abort | |
unreachable) | |
(func $access (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 0 | |
call $faccessat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $eaccess (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 0 | |
call $faccessat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $lstat (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 1 | |
call $fstatat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $rename (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 65536 | |
i64.const 0 | |
call $find_relative | |
local.get 2 | |
local.get 1 | |
i64.const 131072 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
i32.load | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 2 | |
i32.load offset=12 | |
local.get 3 | |
local.get 2 | |
i32.load offset=4 | |
call $renameat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $stat (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 262144 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.const 1 | |
call $fstatat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $unlink (type 1) (param i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 67108864 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
call $__wasilibc_rmfileat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $rmdir (type 1) (param i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 33554432 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
call $__wasilibc_rmdirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $remove (type 1) (param i32) (result i32) | |
(local i32 i32 i32 i32 i64) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 100663296 | |
i64.const 0 | |
call $find_relative | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 1 | |
i32.load offset=12 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
i32.eqz | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 1 | |
local.get 0 | |
i64.const 67108864 | |
i64.const 0 | |
call $find_relative | |
local.get 1 | |
local.get 1 | |
i64.load | |
local.tee 5 | |
i64.store offset=8 | |
block ;; label = @4 | |
local.get 5 | |
i32.wrap_i64 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 5 | |
i64.const 32 | |
i64.shr_u | |
i32.wrap_i64 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
local.get 1 | |
local.get 0 | |
i64.const 33554432 | |
i64.const 0 | |
call $find_relative | |
local.get 1 | |
local.get 1 | |
i64.load | |
local.tee 5 | |
i64.store offset=8 | |
i32.const -1 | |
local.set 0 | |
block ;; label = @4 | |
local.get 5 | |
i32.wrap_i64 | |
local.tee 2 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
local.get 5 | |
i64.const 32 | |
i64.shr_u | |
i32.wrap_i64 | |
local.tee 3 | |
call $__wasilibc_rmfileat | |
local.tee 0 | |
br_if 2 (;@2;) | |
br 1 (;@3;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
br 2 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
br 1 (;@1;) | |
end | |
block ;; label = @2 | |
i32.const 0 | |
i32.load offset=1556 | |
local.tee 4 | |
i32.const 76 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 4 | |
i32.const 31 | |
i32.ne | |
br_if 1 (;@1;) | |
end | |
local.get 2 | |
local.get 3 | |
call $__wasilibc_rmdirat | |
local.set 0 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $link (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 2048 | |
i64.const 0 | |
call $find_relative | |
local.get 2 | |
local.get 1 | |
i64.const 4096 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 2 | |
i32.load | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 2 | |
i32.load offset=12 | |
local.get 3 | |
local.get 2 | |
i32.load offset=4 | |
i32.const 0 | |
call $linkat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $mkdir (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 512 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
call $mkdirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $opendir (type 1) (param i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 0 | |
call $find_relative | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 1 | |
i32.load offset=12 | |
call $opendirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $readlink (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 3 | |
global.set 0 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 32768 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 4 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 4 | |
local.get 3 | |
i32.load offset=12 | |
local.get 1 | |
local.get 2 | |
call $readlinkat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 3 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $scandir (type 3) (param i32 i32 i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
i64.const 8192 | |
i64.const 16384 | |
call $find_relative | |
i32.const -1 | |
local.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 5 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 5 | |
local.get 4 | |
i32.load offset=12 | |
local.get 1 | |
local.get 2 | |
local.get 3 | |
call $scandirat | |
local.set 0 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func $symlink (type 0) (param i32 i32) (result i32) | |
(local i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i64.const 16777216 | |
i64.const 0 | |
call $find_relative | |
i32.const -1 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 2 | |
i32.load offset=8 | |
local.tee 3 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
local.get 3 | |
local.get 2 | |
i32.load offset=12 | |
call $symlinkat | |
local.set 1 | |
br 1 (;@1;) | |
end | |
i32.const 0 | |
i32.const 76 | |
i32.store offset=1556 | |
end | |
local.get 2 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 1) | |
(func $__wasilibc_init_preopen (type 2) | |
(local i32 i32) | |
block ;; label = @1 | |
i32.const 16 | |
call $malloc | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 24 | |
i32.const 4 | |
call $calloc | |
local.tee 1 | |
i32.store offset=4 | |
block ;; label = @2 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 0 | |
i64.const 4 | |
i64.store offset=8 align=4 | |
local.get 0 | |
i32.const 1 | |
i32.store | |
local.get 0 | |
call $po_map_assertvalid | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1560 | |
local.get 0 | |
call $po_map_assertvalid | |
return | |
end | |
local.get 0 | |
call $free | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1560 | |
unreachable | |
unreachable) | |
(func $__wasilibc_register_preopened_fd (type 0) (param i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 32 | |
i32.sub | |
local.tee 2 | |
global.set 0 | |
i32.const 0 | |
i32.load offset=1560 | |
call $po_map_assertvalid | |
i32.const -1 | |
local.set 3 | |
block ;; label = @1 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@1;) | |
i32.const 0 | |
i32.load offset=1560 | |
local.tee 4 | |
call $po_map_assertvalid | |
local.get 0 | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@1;) | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 4 | |
i32.load offset=8 | |
i32.ne | |
br_if 0 (;@3;) | |
i32.const 24 | |
local.get 5 | |
i32.const 1 | |
i32.shl | |
call $calloc | |
local.tee 6 | |
i32.eqz | |
br_if 2 (;@1;) | |
local.get 6 | |
local.get 4 | |
i32.load offset=4 | |
local.get 4 | |
i32.const 12 | |
i32.add | |
local.tee 5 | |
i32.load | |
i32.const 24 | |
i32.mul | |
call $memcpy | |
drop | |
local.get 4 | |
i32.load offset=4 | |
call $free | |
local.get 4 | |
local.get 6 | |
i32.store offset=4 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.tee 7 | |
local.get 7 | |
i32.load | |
i32.const 1 | |
i32.shl | |
i32.store | |
local.get 5 | |
i32.load | |
local.set 5 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=4 | |
local.set 6 | |
end | |
local.get 4 | |
i32.const 12 | |
i32.add | |
local.get 5 | |
i32.const 1 | |
i32.add | |
i32.store | |
local.get 1 | |
call $strdup | |
local.set 7 | |
local.get 6 | |
local.get 5 | |
i32.const 24 | |
i32.mul | |
i32.add | |
local.tee 1 | |
local.get 0 | |
i32.store offset=4 | |
local.get 1 | |
local.get 7 | |
i32.store | |
block ;; label = @2 | |
local.get 0 | |
local.get 2 | |
i32.const 8 | |
i32.add | |
call $__wasi_fd_fdstat_get | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1556 | |
br 1 (;@1;) | |
end | |
local.get 1 | |
local.get 2 | |
i64.load offset=16 | |
i64.store offset=8 | |
local.get 1 | |
local.get 2 | |
i64.load offset=24 | |
i64.store offset=16 | |
local.get 4 | |
call $po_map_assertvalid | |
local.get 4 | |
call $po_map_assertvalid | |
i32.const 0 | |
local.set 3 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1560 | |
end | |
local.get 2 | |
i32.const 32 | |
i32.add | |
global.set 0 | |
local.get 3) | |
(func $__wasilibc_find_relpath (type 13) (param i32 i64 i64 i32) (result i32) | |
(local i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 0 | |
local.get 1 | |
local.get 2 | |
call $find_relative | |
local.get 3 | |
local.get 4 | |
i32.load offset=12 | |
i32.store | |
local.get 4 | |
i32.load offset=8 | |
local.set 3 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 3) | |
(func $abort (type 2) | |
unreachable | |
unreachable) | |
(func $sbrk (type 1) (param i32) (result i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.const 65535 | |
i32.and | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -1 | |
i32.le_s | |
br_if 0 (;@1;) | |
block ;; label = @2 | |
local.get 0 | |
i32.const 16 | |
i32.shr_u | |
memory.grow | |
local.tee 0 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.const 16 | |
i32.shl | |
return | |
end | |
i32.const 0 | |
i32.const 48 | |
i32.store offset=1556 | |
i32.const -1 | |
return | |
end | |
call $abort | |
unreachable) | |
(func $dummy (type 2)) | |
(func $__prepare_for_exit (type 2) | |
call $dummy | |
call $dummy) | |
(func $exit (type 5) (param i32) | |
call $dummy | |
call $dummy | |
local.get 0 | |
call $_Exit | |
unreachable) | |
(func $memchr (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32) | |
local.get 2 | |
i32.const 0 | |
i32.ne | |
local.set 3 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
local.set 3 | |
loop ;; label = @6 | |
local.get 0 | |
i32.load8_u | |
local.get 3 | |
i32.eq | |
br_if 2 (;@4;) | |
local.get 2 | |
i32.const 1 | |
i32.ne | |
local.set 4 | |
local.get 2 | |
i32.const -1 | |
i32.add | |
local.set 5 | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 0 | |
block ;; label = @7 | |
local.get 2 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@7;) | |
local.get 5 | |
local.set 2 | |
local.get 0 | |
i32.const 3 | |
i32.and | |
br_if 1 (;@6;) | |
end | |
end | |
local.get 4 | |
br_if 2 (;@3;) | |
br 3 (;@2;) | |
end | |
local.get 2 | |
local.set 5 | |
local.get 3 | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 2 | |
local.set 5 | |
end | |
block ;; label = @3 | |
local.get 0 | |
i32.load8_u | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.eq | |
br_if 0 (;@3;) | |
local.get 5 | |
i32.const 4 | |
i32.lt_u | |
br_if 0 (;@3;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.const 16843009 | |
i32.mul | |
local.set 3 | |
loop ;; label = @4 | |
local.get 0 | |
i32.load | |
local.get 3 | |
i32.xor | |
local.tee 2 | |
i32.const -1 | |
i32.xor | |
local.get 2 | |
i32.const -16843009 | |
i32.add | |
i32.and | |
i32.const -2139062144 | |
i32.and | |
br_if 1 (;@3;) | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.set 0 | |
local.get 5 | |
i32.const -4 | |
i32.add | |
local.tee 5 | |
i32.const 3 | |
i32.gt_u | |
br_if 0 (;@4;) | |
end | |
end | |
local.get 5 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 1 | |
i32.const 255 | |
i32.and | |
local.set 2 | |
loop ;; label = @3 | |
local.get 0 | |
i32.load8_u | |
local.get 2 | |
i32.eq | |
br_if 2 (;@1;) | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 0 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@3;) | |
end | |
end | |
i32.const 0 | |
return | |
end | |
local.get 0) | |
(func $memcpy (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 0 | |
local.set 3 | |
block ;; label = @5 | |
loop ;; label = @6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 2 | |
i32.const -1 | |
i32.add | |
local.set 4 | |
local.get 3 | |
i32.const 1 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.set 1 | |
local.get 2 | |
i32.const 1 | |
i32.eq | |
br_if 1 (;@5;) | |
local.get 4 | |
local.set 2 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
br_if 0 (;@6;) | |
end | |
end | |
local.get 3 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@3;) | |
br 2 (;@2;) | |
end | |
local.get 2 | |
local.set 4 | |
local.get 0 | |
local.tee 3 | |
i32.const 3 | |
i32.and | |
local.tee 2 | |
br_if 1 (;@2;) | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 4 | |
i32.const 16 | |
i32.lt_u | |
br_if 0 (;@4;) | |
local.get 4 | |
i32.const -16 | |
i32.add | |
local.set 2 | |
loop ;; label = @5 | |
local.get 3 | |
local.get 1 | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 1 | |
i32.const 4 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i32.const 8 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 1 | |
i32.const 12 | |
i32.add | |
i32.load | |
i32.store | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -16 | |
i32.add | |
local.tee 4 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@5;) | |
br 2 (;@3;) | |
end | |
end | |
local.get 4 | |
local.set 2 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 8 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i64.load align=4 | |
i64.store align=4 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.set 3 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 4 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i32.load | |
i32.store | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.set 3 | |
end | |
block ;; label = @3 | |
local.get 2 | |
i32.const 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 2 | |
i32.add | |
local.set 1 | |
end | |
local.get 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 0 | |
return | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 32 | |
i32.lt_u | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 2 | |
i32.const 3 | |
i32.eq | |
br_if 0 (;@4;) | |
local.get 2 | |
i32.const 2 | |
i32.eq | |
br_if 1 (;@3;) | |
local.get 2 | |
i32.const 1 | |
i32.ne | |
br_if 2 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 4 | |
i32.const -3 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 3 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @5 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 8 | |
i32.shl | |
local.get 5 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 8 | |
i32.shl | |
local.get 10 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 8 | |
i32.shl | |
local.get 5 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 8 | |
i32.shl | |
local.get 10 | |
i32.const 24 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 16 | |
i32.gt_u | |
br_if 0 (;@5;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 3 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -19 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
br 2 (;@2;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 1 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @4 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 24 | |
i32.shl | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 24 | |
i32.shl | |
local.get 10 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 24 | |
i32.shl | |
local.get 5 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 24 | |
i32.shl | |
local.get 10 | |
i32.const 8 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 18 | |
i32.gt_u | |
br_if 0 (;@4;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 1 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -17 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
br 1 (;@2;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.load | |
local.tee 5 | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 4 | |
i32.const -2 | |
i32.add | |
local.set 6 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 7 | |
local.get 4 | |
i32.const -20 | |
i32.add | |
i32.const -16 | |
i32.and | |
local.set 8 | |
i32.const 0 | |
local.set 2 | |
loop ;; label = @3 | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
local.tee 9 | |
i32.const 4 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 16 | |
i32.shl | |
local.get 5 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 9 | |
i32.const 8 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 16 | |
i32.shl | |
local.get 10 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.get 9 | |
i32.const 12 | |
i32.add | |
i32.load | |
local.tee 10 | |
i32.const 16 | |
i32.shl | |
local.get 5 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 9 | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.const 16 | |
i32.shl | |
local.get 10 | |
i32.const 16 | |
i32.shr_u | |
i32.or | |
i32.store | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 6 | |
i32.const -16 | |
i32.add | |
local.tee 6 | |
i32.const 17 | |
i32.gt_u | |
br_if 0 (;@3;) | |
end | |
local.get 7 | |
local.get 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
local.get 2 | |
i32.add | |
i32.const 2 | |
i32.add | |
local.set 1 | |
local.get 4 | |
i32.const -18 | |
i32.add | |
local.get 8 | |
i32.sub | |
local.set 4 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 16 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load16_u align=1 | |
i32.store16 align=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=4 | |
i32.store8 offset=4 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=5 | |
i32.store8 offset=5 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=6 | |
i32.store8 offset=6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=7 | |
i32.store8 offset=7 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=8 | |
i32.store8 offset=8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=9 | |
i32.store8 offset=9 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=10 | |
i32.store8 offset=10 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=11 | |
i32.store8 offset=11 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=12 | |
i32.store8 offset=12 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=13 | |
i32.store8 offset=13 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=14 | |
i32.store8 offset=14 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=15 | |
i32.store8 offset=15 | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 8 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=4 | |
i32.store8 offset=4 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=5 | |
i32.store8 offset=5 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=6 | |
i32.store8 offset=6 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=7 | |
i32.store8 offset=7 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 4 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=2 | |
i32.store8 offset=2 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=3 | |
i32.store8 offset=3 | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
end | |
block ;; label = @2 | |
local.get 4 | |
i32.const 2 | |
i32.and | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
local.get 3 | |
local.get 1 | |
i32.load8_u offset=1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const 2 | |
i32.add | |
local.set 3 | |
local.get 1 | |
i32.const 2 | |
i32.add | |
local.set 1 | |
end | |
local.get 4 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.load8_u | |
i32.store8 | |
end | |
local.get 0) | |
(func $memset (type 4) (param i32 i32 i32) (result i32) | |
(local i32 i32 i32 i64) | |
block ;; label = @1 | |
local.get 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.tee 3 | |
i32.const -1 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 3 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=2 | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=1 | |
local.get 3 | |
i32.const -3 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 3 | |
i32.const -2 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 7 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
i32.store8 offset=3 | |
local.get 3 | |
i32.const -4 | |
i32.add | |
local.get 1 | |
i32.store8 | |
local.get 2 | |
i32.const 9 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.const 3 | |
i32.and | |
local.tee 4 | |
i32.add | |
local.tee 3 | |
local.get 1 | |
i32.const 255 | |
i32.and | |
i32.const 16843009 | |
i32.mul | |
local.tee 1 | |
i32.store | |
local.get 3 | |
local.get 2 | |
local.get 4 | |
i32.sub | |
i32.const -4 | |
i32.and | |
local.tee 4 | |
i32.add | |
local.tee 2 | |
i32.const -4 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
i32.const 9 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.store offset=8 | |
local.get 3 | |
local.get 1 | |
i32.store offset=4 | |
local.get 2 | |
i32.const -8 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -12 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
i32.const 25 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 3 | |
local.get 1 | |
i32.store offset=24 | |
local.get 3 | |
local.get 1 | |
i32.store offset=20 | |
local.get 3 | |
local.get 1 | |
i32.store offset=16 | |
local.get 3 | |
local.get 1 | |
i32.store offset=12 | |
local.get 2 | |
i32.const -16 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -20 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -24 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 2 | |
i32.const -28 | |
i32.add | |
local.get 1 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.const 4 | |
i32.and | |
i32.const 24 | |
i32.or | |
local.tee 5 | |
i32.sub | |
local.tee 2 | |
i32.const 32 | |
i32.lt_u | |
br_if 0 (;@1;) | |
local.get 1 | |
i64.extend_i32_u | |
local.tee 6 | |
i64.const 32 | |
i64.shl | |
local.get 6 | |
i64.or | |
local.set 6 | |
local.get 3 | |
local.get 5 | |
i32.add | |
local.set 1 | |
loop ;; label = @2 | |
local.get 1 | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 8 | |
i32.add | |
local.get 6 | |
i64.store | |
local.get 1 | |
i32.const 32 | |
i32.add | |
local.set 1 | |
local.get 2 | |
i32.const -32 | |
i32.add | |
local.tee 2 | |
i32.const 31 | |
i32.gt_u | |
br_if 0 (;@2;) | |
end | |
end | |
local.get 0) | |
(func $strdup (type 1) (param i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
call $strlen | |
i32.const 1 | |
i32.add | |
local.tee 1 | |
call $malloc | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 2 | |
local.get 0 | |
local.get 1 | |
call $memcpy | |
return | |
end | |
i32.const 0) | |
(func $strlen (type 1) (param i32) (result i32) | |
(local i32 i32 i32) | |
local.get 0 | |
local.set 1 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 0 | |
i32.load8_u | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.set 1 | |
loop ;; label = @4 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@3;) | |
local.get 1 | |
i32.load8_u | |
local.set 2 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 3 | |
local.set 1 | |
local.get 2 | |
br_if 0 (;@4;) | |
end | |
local.get 3 | |
i32.const -1 | |
i32.add | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 1 | |
i32.const -4 | |
i32.add | |
local.set 1 | |
loop ;; label = @3 | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.tee 1 | |
i32.load | |
local.tee 2 | |
i32.const -1 | |
i32.xor | |
local.get 2 | |
i32.const -16843009 | |
i32.add | |
i32.and | |
i32.const -2139062144 | |
i32.and | |
i32.eqz | |
br_if 0 (;@3;) | |
end | |
local.get 2 | |
i32.const 255 | |
i32.and | |
i32.eqz | |
br_if 1 (;@1;) | |
loop ;; label = @3 | |
local.get 1 | |
i32.load8_u offset=1 | |
local.set 2 | |
local.get 1 | |
i32.const 1 | |
i32.add | |
local.tee 3 | |
local.set 1 | |
local.get 2 | |
br_if 0 (;@3;) | |
end | |
local.get 3 | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 0 | |
local.get 0 | |
i32.sub | |
return | |
end | |
local.get 1 | |
local.get 0 | |
i32.sub) | |
(func $qsort (type 14) (param i32 i32 i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 704 | |
i32.sub | |
local.tee 4 | |
global.set 0 | |
local.get 4 | |
i64.const 1 | |
i64.store offset=8 | |
block ;; label = @1 | |
local.get 2 | |
local.get 1 | |
i32.mul | |
local.tee 5 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 4 | |
local.get 2 | |
i32.store offset=16 | |
local.get 4 | |
local.get 2 | |
i32.store offset=20 | |
i32.const 0 | |
local.get 2 | |
i32.sub | |
local.set 6 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
i32.const 8 | |
i32.or | |
local.set 1 | |
local.get 2 | |
local.set 7 | |
local.get 2 | |
local.set 8 | |
loop ;; label = @2 | |
local.get 1 | |
local.get 8 | |
local.get 2 | |
i32.add | |
local.get 7 | |
local.tee 8 | |
i32.add | |
local.tee 7 | |
i32.store | |
local.get 1 | |
i32.const 4 | |
i32.add | |
local.set 1 | |
local.get 8 | |
local.set 8 | |
local.get 7 | |
local.get 5 | |
i32.lt_u | |
br_if 0 (;@2;) | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 0 | |
local.get 5 | |
i32.add | |
local.get 6 | |
i32.add | |
local.tee 9 | |
local.get 0 | |
i32.le_u | |
br_if 0 (;@3;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
i32.const 4 | |
i32.or | |
local.set 10 | |
i32.const 1 | |
local.set 1 | |
i32.const 1 | |
local.set 11 | |
loop ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
local.get 1 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 0 (;@11;) | |
local.get 4 | |
local.get 0 | |
i32.store offset=208 | |
local.get 11 | |
i32.const 2 | |
i32.lt_s | |
br_if 5 (;@6;) | |
i32.const 1 | |
local.set 12 | |
local.get 10 | |
local.set 5 | |
local.get 0 | |
local.set 13 | |
local.get 0 | |
local.set 1 | |
local.get 11 | |
local.set 14 | |
block ;; label = @12 | |
loop ;; label = @13 | |
block ;; label = @14 | |
local.get 13 | |
local.get 1 | |
local.get 6 | |
i32.add | |
local.tee 7 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 14 | |
i32.const -2 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 1 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@14;) | |
local.get 13 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@12;) | |
end | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
local.get 1 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@16;) | |
local.get 5 | |
local.get 1 | |
i32.store | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@15;) | |
br 2 (;@14;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store | |
local.get 7 | |
local.set 1 | |
local.get 8 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@14;) | |
end | |
local.get 12 | |
i32.const 1 | |
i32.add | |
local.set 12 | |
local.get 5 | |
i32.const 4 | |
i32.add | |
local.set 5 | |
local.get 4 | |
i32.load offset=208 | |
local.set 13 | |
local.get 8 | |
local.set 14 | |
br 1 (;@13;) | |
end | |
end | |
local.get 12 | |
i32.const 1 | |
i32.add | |
local.set 12 | |
end | |
local.get 12 | |
i32.const 2 | |
i32.lt_s | |
br_if 5 (;@6;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.get 12 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 15 | |
local.get 4 | |
i32.const 448 | |
i32.add | |
i32.store | |
local.get 2 | |
i32.eqz | |
br_if 5 (;@6;) | |
local.get 4 | |
i32.const 448 | |
i32.add | |
local.set 16 | |
local.get 2 | |
local.set 17 | |
br 1 (;@10;) | |
end | |
block ;; label = @11 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 11 | |
i32.const -1 | |
i32.add | |
local.tee 18 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
local.get 9 | |
local.get 0 | |
i32.sub | |
i32.ge_u | |
br_if 0 (;@11;) | |
local.get 4 | |
local.get 0 | |
i32.store offset=208 | |
local.get 11 | |
i32.const 2 | |
i32.lt_s | |
br_if 4 (;@7;) | |
i32.const 1 | |
local.set 19 | |
local.get 10 | |
local.set 5 | |
local.get 0 | |
local.set 13 | |
local.get 0 | |
local.set 1 | |
local.get 11 | |
local.set 14 | |
block ;; label = @12 | |
loop ;; label = @13 | |
block ;; label = @14 | |
local.get 13 | |
local.get 1 | |
local.get 6 | |
i32.add | |
local.tee 7 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 14 | |
i32.const -2 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 1 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@14;) | |
local.get 13 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@12;) | |
end | |
block ;; label = @14 | |
block ;; label = @15 | |
block ;; label = @16 | |
local.get 1 | |
local.get 7 | |
local.get 3 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@16;) | |
local.get 5 | |
local.get 1 | |
i32.store | |
local.get 14 | |
i32.const -1 | |
i32.add | |
local.tee 8 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@15;) | |
br 2 (;@14;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store | |
local.get 7 | |
local.set 1 | |
local.get 8 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@14;) | |
end | |
local.get 19 | |
i32.const 1 | |
i32.add | |
local.set 19 | |
local.get 5 | |
i32.const 4 | |
i32.add | |
local.set 5 | |
local.get 4 | |
i32.load offset=208 | |
local.set 13 | |
local.get 8 | |
local.set 14 | |
br 1 (;@13;) | |
end | |
end | |
local.get 19 | |
i32.const 1 | |
i32.add | |
local.set 19 | |
end | |
local.get 19 | |
i32.const 2 | |
i32.lt_s | |
br_if 4 (;@7;) | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.get 19 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 20 | |
local.get 4 | |
i32.const 448 | |
i32.add | |
i32.store | |
local.get 2 | |
i32.eqz | |
br_if 4 (;@7;) | |
local.get 4 | |
i32.const 448 | |
i32.add | |
local.set 21 | |
local.get 2 | |
local.set 22 | |
br 2 (;@9;) | |
end | |
local.get 0 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 0 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
br 3 (;@7;) | |
end | |
i32.const 0 | |
local.set 1 | |
br 1 (;@8;) | |
end | |
i32.const 1 | |
local.set 1 | |
end | |
loop ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
local.get 1 | |
br_table 0 (;@10;) 1 (;@9;) 1 (;@9;) | |
end | |
local.get 16 | |
local.get 4 | |
i32.load offset=208 | |
local.tee 1 | |
local.get 17 | |
i32.const 256 | |
local.get 17 | |
i32.const 256 | |
i32.lt_u | |
select | |
local.tee 8 | |
call $memcpy | |
drop | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.set 7 | |
local.get 12 | |
local.set 5 | |
loop ;; label = @10 | |
local.get 1 | |
local.get 7 | |
i32.const 4 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 14 | |
local.get 8 | |
call $memcpy | |
drop | |
local.get 7 | |
local.get 1 | |
local.get 8 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 7 | |
local.get 14 | |
local.set 1 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@10;) | |
end | |
local.get 17 | |
local.get 8 | |
i32.sub | |
local.tee 17 | |
i32.eqz | |
br_if 3 (;@6;) | |
local.get 15 | |
i32.load | |
local.set 16 | |
i32.const 0 | |
local.set 1 | |
br 1 (;@8;) | |
end | |
local.get 21 | |
local.get 4 | |
i32.load offset=208 | |
local.tee 1 | |
local.get 22 | |
i32.const 256 | |
local.get 22 | |
i32.const 256 | |
i32.lt_u | |
select | |
local.tee 8 | |
call $memcpy | |
drop | |
local.get 4 | |
i32.const 208 | |
i32.add | |
local.set 7 | |
local.get 19 | |
local.set 5 | |
loop ;; label = @9 | |
local.get 1 | |
local.get 7 | |
i32.const 4 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 14 | |
local.get 8 | |
call $memcpy | |
drop | |
local.get 7 | |
local.get 1 | |
local.get 8 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 7 | |
local.get 14 | |
local.set 1 | |
local.get 5 | |
i32.const -1 | |
i32.add | |
local.tee 5 | |
br_if 0 (;@9;) | |
end | |
local.get 22 | |
local.get 8 | |
i32.sub | |
local.tee 22 | |
i32.eqz | |
br_if 1 (;@7;) | |
local.get 20 | |
i32.load | |
local.set 21 | |
i32.const 1 | |
local.set 1 | |
br 0 (;@8;) | |
end | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
local.get 11 | |
i32.const 1 | |
i32.eq | |
br_if 0 (;@9;) | |
local.get 18 | |
i32.const 31 | |
i32.le_u | |
br_if 1 (;@8;) | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 8 | |
i32.store offset=12 | |
i32.const 0 | |
local.set 7 | |
local.get 4 | |
i32.const 0 | |
i32.store offset=8 | |
local.get 11 | |
i32.const -33 | |
i32.add | |
local.set 18 | |
br 2 (;@7;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 7 | |
i32.const 1 | |
i32.shl | |
local.tee 1 | |
i32.store offset=8 | |
local.get 4 | |
local.get 7 | |
i32.const 31 | |
i32.shr_u | |
local.get 4 | |
i32.load offset=12 | |
i32.const 1 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
i32.const 0 | |
local.set 11 | |
br 3 (;@5;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.set 7 | |
local.get 4 | |
i32.load offset=12 | |
local.set 8 | |
end | |
local.get 4 | |
local.get 7 | |
local.get 18 | |
i32.shl | |
local.tee 1 | |
i32.store offset=8 | |
local.get 4 | |
local.get 7 | |
i32.const 32 | |
local.get 18 | |
i32.sub | |
i32.shr_u | |
local.get 8 | |
local.get 18 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
i32.const 1 | |
local.set 11 | |
br 1 (;@5;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 1 | |
i32.const 2 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 30 | |
i32.shl | |
local.get 4 | |
i32.load offset=8 | |
i32.const 2 | |
i32.shr_u | |
i32.or | |
local.tee 1 | |
i32.store offset=8 | |
local.get 11 | |
i32.const 2 | |
i32.add | |
local.set 11 | |
end | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.or | |
local.tee 1 | |
i32.store offset=8 | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.tee 0 | |
local.get 9 | |
i32.lt_u | |
br_if 0 (;@4;) | |
br 2 (;@2;) | |
end | |
end | |
i32.const 1 | |
local.set 11 | |
end | |
local.get 0 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 0 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 0 | |
local.get 6 | |
i32.add | |
local.set 5 | |
loop ;; label = @2 | |
local.get 4 | |
i32.load offset=8 | |
local.set 1 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 11 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@8;) | |
local.get 1 | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@8;) | |
local.get 4 | |
i32.load offset=12 | |
br_if 1 (;@7;) | |
br 7 (;@1;) | |
end | |
local.get 11 | |
i32.const 1 | |
i32.gt_s | |
br_if 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
i32.const 1 | |
local.get 1 | |
i32.sub | |
local.get 1 | |
i32.const -1 | |
i32.add | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 7 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 7 | |
i32.const 1824 | |
i32.add | |
i32.load8_s | |
local.tee 13 | |
i32.const 31 | |
i32.le_u | |
br_if 1 (;@7;) | |
br 4 (;@4;) | |
end | |
i32.const 0 | |
local.set 13 | |
local.get 4 | |
i32.load offset=12 | |
local.tee 8 | |
i32.const 0 | |
local.get 8 | |
i32.sub | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 7 | |
i32.eqz | |
br_if 2 (;@5;) | |
local.get 7 | |
i32.const 1824 | |
i32.add | |
i32.load8_s | |
i32.const 32 | |
i32.add | |
local.tee 13 | |
i32.const 31 | |
i32.gt_u | |
br_if 3 (;@4;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 8 | |
local.get 13 | |
local.set 7 | |
br 3 (;@3;) | |
end | |
local.get 4 | |
local.get 4 | |
i32.load offset=12 | |
i32.const 2 | |
i32.shl | |
local.get 1 | |
i32.const 30 | |
i32.shr_u | |
local.tee 7 | |
i32.or | |
i32.const 1 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.shl | |
i32.const 2147483646 | |
i32.and | |
local.get 7 | |
i32.const 31 | |
i32.shl | |
i32.or | |
i32.const 3 | |
i32.xor | |
i32.store offset=8 | |
local.get 11 | |
i32.const -1 | |
i32.add | |
local.set 1 | |
local.get 5 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
local.get 11 | |
i32.const -2 | |
i32.add | |
local.tee 11 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 1 | |
i32.const 1 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 4 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 1 | |
i32.const 31 | |
i32.shr_u | |
local.get 4 | |
i32.load offset=12 | |
i32.const 1 | |
i32.shl | |
i32.or | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.const 1 | |
i32.shl | |
i32.const 1 | |
i32.or | |
i32.store offset=8 | |
local.get 5 | |
local.get 2 | |
local.get 3 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.get 11 | |
i32.const 1 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
call $trinkle | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.set 5 | |
br 3 (;@2;) | |
end | |
i32.const 0 | |
local.set 7 | |
br 1 (;@3;) | |
end | |
local.get 4 | |
i32.load offset=12 | |
local.set 1 | |
i32.const 0 | |
local.set 8 | |
local.get 4 | |
i32.const 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 13 | |
i32.const -32 | |
i32.add | |
local.set 7 | |
end | |
local.get 4 | |
local.get 8 | |
local.get 7 | |
i32.shr_u | |
i32.store offset=12 | |
local.get 4 | |
local.get 8 | |
i32.const 32 | |
local.get 7 | |
i32.sub | |
i32.shl | |
local.get 1 | |
local.get 7 | |
i32.shr_u | |
i32.or | |
i32.store offset=8 | |
local.get 13 | |
local.get 11 | |
i32.add | |
local.set 11 | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.set 5 | |
br 0 (;@2;) | |
end | |
end | |
local.get 4 | |
i32.const 704 | |
i32.add | |
global.set 0) | |
(func $trinkle (type 15) (param i32 i32 i32 i32 i32 i32 i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 736 | |
i32.sub | |
local.tee 7 | |
global.set 0 | |
local.get 7 | |
local.get 0 | |
i32.store | |
local.get 3 | |
i32.load | |
local.set 8 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 3 | |
i32.load offset=4 | |
local.tee 9 | |
br_if 0 (;@5;) | |
i32.const 1 | |
local.set 10 | |
local.get 8 | |
i32.const 1 | |
i32.eq | |
br_if 1 (;@4;) | |
end | |
i32.const 1 | |
local.set 10 | |
local.get 0 | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 11 | |
local.get 0 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const 1 | |
i32.lt_s | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 1 | |
i32.sub | |
local.set 12 | |
local.get 7 | |
i32.const 4 | |
i32.or | |
local.set 13 | |
local.get 5 | |
i32.eqz | |
local.set 5 | |
i32.const 1 | |
local.set 10 | |
br 1 (;@3;) | |
end | |
local.get 0 | |
local.set 3 | |
local.get 5 | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
block ;; label = @3 | |
loop ;; label = @4 | |
local.get 11 | |
local.set 3 | |
block ;; label = @5 | |
local.get 5 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 4 | |
i32.const 2 | |
i32.lt_s | |
br_if 0 (;@5;) | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.const -8 | |
i32.add | |
i32.load | |
local.set 11 | |
local.get 0 | |
local.get 12 | |
i32.add | |
local.tee 5 | |
local.get 3 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@3;) | |
local.get 5 | |
local.get 11 | |
i32.sub | |
local.get 3 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@3;) | |
end | |
local.get 13 | |
local.get 3 | |
i32.store | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
i32.const 1 | |
local.get 8 | |
i32.sub | |
local.get 8 | |
i32.const -1 | |
i32.add | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@7;) | |
local.get 0 | |
i32.const 1824 | |
i32.add | |
i32.load8_s | |
local.set 0 | |
br 1 (;@6;) | |
end | |
i32.const 0 | |
local.set 0 | |
block ;; label = @7 | |
local.get 9 | |
i32.const 0 | |
local.get 9 | |
i32.sub | |
i32.and | |
i32.const 124511785 | |
i32.mul | |
i32.const 27 | |
i32.shr_u | |
local.tee 11 | |
br_if 0 (;@7;) | |
i32.const 0 | |
local.set 11 | |
br 2 (;@5;) | |
end | |
local.get 11 | |
i32.const 1824 | |
i32.add | |
i32.load8_s | |
i32.const 32 | |
i32.add | |
local.set 0 | |
end | |
local.get 0 | |
i32.const -32 | |
i32.add | |
local.get 0 | |
local.get 0 | |
i32.const 31 | |
i32.gt_u | |
local.tee 5 | |
select | |
local.set 11 | |
local.get 9 | |
local.get 8 | |
local.get 5 | |
select | |
local.set 8 | |
i32.const 0 | |
local.get 9 | |
local.get 5 | |
select | |
local.set 9 | |
end | |
local.get 10 | |
i32.const 1 | |
i32.add | |
local.set 10 | |
local.get 9 | |
i32.const 32 | |
local.get 11 | |
i32.sub | |
i32.shl | |
local.get 8 | |
local.get 11 | |
i32.shr_u | |
i32.or | |
local.set 8 | |
local.get 0 | |
local.get 4 | |
i32.add | |
local.set 4 | |
block ;; label = @5 | |
local.get 9 | |
local.get 11 | |
i32.shr_u | |
local.tee 9 | |
br_if 0 (;@5;) | |
local.get 8 | |
i32.const 1 | |
i32.eq | |
br_if 3 (;@2;) | |
end | |
local.get 13 | |
i32.const 4 | |
i32.add | |
local.set 13 | |
i32.const 1 | |
local.set 5 | |
local.get 3 | |
local.set 0 | |
local.get 3 | |
local.get 6 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 11 | |
local.get 7 | |
i32.load | |
local.get 2 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.gt_s | |
br_if 0 (;@4;) | |
end | |
i32.const 0 | |
br_if 2 (;@1;) | |
br 1 (;@2;) | |
end | |
local.get 0 | |
local.set 3 | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 10 | |
i32.const 2 | |
i32.lt_u | |
br_if 0 (;@5;) | |
local.get 7 | |
local.get 10 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 14 | |
local.get 7 | |
i32.const 480 | |
i32.add | |
i32.store | |
local.get 1 | |
i32.eqz | |
br_if 1 (;@4;) | |
local.get 7 | |
i32.const 480 | |
i32.add | |
local.set 15 | |
i32.const 256 | |
local.set 16 | |
i32.const 4 | |
local.set 17 | |
i32.const -1 | |
local.set 18 | |
local.get 1 | |
local.set 19 | |
i32.const 0 | |
local.set 20 | |
br 2 (;@3;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 2 (;@2;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 1 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
end | |
loop ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 8 | |
br_table 0 (;@8;) 1 (;@7;) 1 (;@7;) | |
end | |
local.get 7 | |
local.get 3 | |
i32.store offset=240 | |
local.get 4 | |
i32.const 1 | |
i32.le_s | |
br_if 6 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.sub | |
local.set 13 | |
local.get 7 | |
i32.const 240 | |
i32.add | |
i32.const 4 | |
i32.or | |
local.set 11 | |
i32.const 1 | |
local.set 21 | |
local.get 3 | |
local.set 8 | |
block ;; label = @8 | |
loop ;; label = @9 | |
block ;; label = @10 | |
local.get 3 | |
local.get 8 | |
local.get 13 | |
i32.add | |
local.tee 9 | |
local.get 6 | |
local.get 4 | |
i32.const -2 | |
i32.add | |
local.tee 0 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load | |
i32.sub | |
local.tee 8 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@10;) | |
local.get 3 | |
local.get 9 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const -1 | |
i32.gt_s | |
br_if 2 (;@8;) | |
end | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
local.get 8 | |
local.get 9 | |
local.get 2 | |
call_indirect (type 0) | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@12;) | |
local.get 11 | |
local.get 8 | |
i32.store | |
local.get 4 | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
i32.const 2 | |
i32.ge_s | |
br_if 1 (;@11;) | |
br 2 (;@10;) | |
end | |
local.get 11 | |
local.get 9 | |
i32.store | |
local.get 9 | |
local.set 8 | |
local.get 0 | |
i32.const 2 | |
i32.lt_s | |
br_if 1 (;@10;) | |
end | |
local.get 21 | |
i32.const 1 | |
i32.add | |
local.set 21 | |
local.get 11 | |
i32.const 4 | |
i32.add | |
local.set 11 | |
local.get 7 | |
i32.load offset=240 | |
local.set 3 | |
local.get 0 | |
local.set 4 | |
br 1 (;@9;) | |
end | |
end | |
local.get 21 | |
i32.const 1 | |
i32.add | |
local.set 21 | |
end | |
local.get 21 | |
i32.const 2 | |
i32.lt_s | |
br_if 6 (;@1;) | |
local.get 7 | |
i32.const 240 | |
i32.add | |
local.get 21 | |
i32.const 2 | |
i32.shl | |
i32.add | |
local.tee 22 | |
local.get 7 | |
i32.const 480 | |
i32.add | |
i32.store | |
local.get 1 | |
i32.eqz | |
br_if 6 (;@1;) | |
local.get 7 | |
i32.const 480 | |
i32.add | |
local.set 23 | |
i32.const 256 | |
local.set 24 | |
i32.const 4 | |
local.set 25 | |
i32.const -1 | |
local.set 26 | |
br 1 (;@6;) | |
end | |
block ;; label = @7 | |
block ;; label = @8 | |
local.get 20 | |
br_table 0 (;@8;) 1 (;@7;) 1 (;@7;) | |
end | |
local.get 15 | |
local.get 7 | |
i32.load | |
local.tee 8 | |
local.get 19 | |
local.get 16 | |
local.get 19 | |
local.get 16 | |
i32.lt_u | |
select | |
local.tee 0 | |
call $memcpy | |
drop | |
local.get 7 | |
local.set 9 | |
local.get 10 | |
local.set 11 | |
loop ;; label = @8 | |
local.get 8 | |
local.get 9 | |
local.get 17 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
call $memcpy | |
drop | |
local.get 9 | |
local.get 8 | |
local.get 0 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 9 | |
local.get 5 | |
local.set 8 | |
local.get 11 | |
local.get 18 | |
i32.add | |
local.tee 11 | |
br_if 0 (;@8;) | |
end | |
block ;; label = @8 | |
local.get 19 | |
local.get 0 | |
i32.sub | |
local.tee 19 | |
i32.eqz | |
br_if 0 (;@8;) | |
local.get 14 | |
i32.load | |
local.set 15 | |
i32.const 0 | |
local.set 20 | |
br 3 (;@5;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 5 (;@2;) | |
end | |
local.get 23 | |
local.get 7 | |
i32.load offset=240 | |
local.tee 8 | |
local.get 1 | |
local.get 24 | |
local.get 1 | |
local.get 24 | |
i32.lt_u | |
select | |
local.tee 0 | |
call $memcpy | |
drop | |
local.get 7 | |
i32.const 240 | |
i32.add | |
local.set 9 | |
local.get 21 | |
local.set 11 | |
loop ;; label = @7 | |
local.get 8 | |
local.get 9 | |
local.get 25 | |
i32.add | |
local.tee 13 | |
i32.load | |
local.tee 5 | |
local.get 0 | |
call $memcpy | |
drop | |
local.get 9 | |
local.get 8 | |
local.get 0 | |
i32.add | |
i32.store | |
local.get 13 | |
local.set 9 | |
local.get 5 | |
local.set 8 | |
local.get 11 | |
local.get 26 | |
i32.add | |
local.tee 11 | |
br_if 0 (;@7;) | |
end | |
local.get 1 | |
local.get 0 | |
i32.sub | |
local.tee 1 | |
i32.eqz | |
br_if 5 (;@1;) | |
local.get 22 | |
i32.load | |
local.set 23 | |
i32.const 1 | |
local.set 20 | |
br 3 (;@3;) | |
end | |
i32.const 1 | |
local.set 20 | |
br 1 (;@4;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 2 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 1 (;@2;) | |
end | |
i32.const 1 | |
local.set 8 | |
br 0 (;@2;) | |
end | |
end | |
local.get 7 | |
i32.const 736 | |
i32.add | |
global.set 0) | |
(table (;0;) 3 3 anyfunc) | |
(memory (;0;) 2) | |
(global (;0;) (mut i32) (i32.const 67392)) | |
(global (;1;) i32 (i32.const 67392)) | |
(global (;2;) i32 (i32.const 1856)) | |
(global (;3;) i32 (i32.const 1024)) | |
(global (;4;) i32 (i32.const 1564)) | |
(global (;5;) i32 (i32.const 1556)) | |
(global (;6;) i32 (i32.const 1564)) | |
(global (;7;) i32 (i32.const 1564)) | |
(global (;8;) i32 (i32.const 1564)) | |
(export "memory" (memory 0)) | |
(export "__wasm_call_ctors" (func $__wasm_call_ctors)) | |
(export "__heap_base" (global 1)) | |
(export "__data_end" (global 2)) | |
(export "__dso_handle" (global 3)) | |
(export "main" (func $main)) | |
(export "_start" (func $_start)) | |
(export "__wasilibc_init_preopen" (func $__wasilibc_init_preopen)) | |
(export "malloc" (func $malloc)) | |
(export "__wasilibc_register_preopened_fd" (func $__wasilibc_register_preopened_fd)) | |
(export "free" (func $free)) | |
(export "__environ" (global 4)) | |
(export "_Exit" (func $_Exit)) | |
(export "__prepare_for_exit" (func $__prepare_for_exit)) | |
(export "sbrk" (func $sbrk)) | |
(export "errno" (global 5)) | |
(export "calloc" (func $calloc)) | |
(export "memset" (func $memset)) | |
(export "realloc" (func $realloc)) | |
(export "memcpy" (func $memcpy)) | |
(export "posix_memalign" (func $posix_memalign)) | |
(export "aligned_alloc" (func $aligned_alloc)) | |
(export "malloc_usable_size" (func $malloc_usable_size)) | |
(export "fdopendir" (func $fdopendir)) | |
(export "opendirat" (func $opendirat)) | |
(export "scandirat" (func $scandirat)) | |
(export "faccessat" (func $faccessat)) | |
(export "readlinkat" (func $readlinkat)) | |
(export "__wasilibc_rmdirat" (func $__wasilibc_rmdirat)) | |
(export "linkat" (func $linkat)) | |
(export "symlinkat" (func $symlinkat)) | |
(export "__wasilibc_rmfileat" (func $__wasilibc_rmfileat)) | |
(export "close" (func $close)) | |
(export "fstatat" (func $fstatat)) | |
(export "mkdirat" (func $mkdirat)) | |
(export "renameat" (func $renameat)) | |
(export "_exit" (func $_Exit)) | |
(export "openat" (func $openat)) | |
(export "open" (func $open)) | |
(export "access" (func $access)) | |
(export "eaccess" (func $eaccess)) | |
(export "lstat" (func $lstat)) | |
(export "rename" (func $rename)) | |
(export "stat" (func $stat)) | |
(export "unlink" (func $unlink)) | |
(export "rmdir" (func $rmdir)) | |
(export "remove" (func $remove)) | |
(export "link" (func $link)) | |
(export "mkdir" (func $mkdir)) | |
(export "opendir" (func $opendir)) | |
(export "readlink" (func $readlink)) | |
(export "scandir" (func $scandir)) | |
(export "symlink" (func $symlink)) | |
(export "strlen" (func $strlen)) | |
(export "abort" (func $abort)) | |
(export "memchr" (func $memchr)) | |
(export "qsort" (func $qsort)) | |
(export "strdup" (func $strdup)) | |
(export "__wasilibc_find_relpath" (func $__wasilibc_find_relpath)) | |
(export "__funcs_on_exit" (func $dummy)) | |
(export "__stdio_exit" (func $dummy)) | |
(export "exit" (func $exit)) | |
(export "_fini" (func $dummy)) | |
(export "___environ" (global 6)) | |
(export "_environ" (global 7)) | |
(export "environ" (global 8)) | |
(elem (;0;) (i32.const 1) $std.os.file.OutStream.writeFn $sel_true) | |
(data (;0;) (i32.const 1024) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") | |
(data (;1;) (i32.const 1568) "reached unreachable code \06\00\00\18\00\00\00deadlock detected\00\00\00@\06\00\00\11\00\00\00\00\00\00\00\10\04\00\00\01\00\00\00integer overflowh\06\00\00\10\00\00\00attempt to cast negative value to unsigned integer\00\00\80\06\00\002\00\00\00cast causes pointer to be null\00\00\bc\06\00\00\1e\00\00\00index out of bounds\00\e4\06\00\00\13\00\00\00\00`\00\00\00 \00\00\00@\00\00\00\80\00\00\00\c0\00\00\00\c0\00\00\00\a0\00\00.\00\00\00\00\01\17\02\1d\18\13\03\1e\1b\19\0b\14\08\04\0d\1f\16\1c\12\1a\0a\07\0c\15\11\09\06\10\05\0f\0e")) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment