nx_wasm_vm.nx
buildroot/runtime/nx_wasm_vm.nx
about
dependencies 2 imports · 36 importers
diagram shows first 10 each side; +0 more imports, +26 more importers in the complete lists below.
imports: nx_syscalls.nxnx_f32_hw.nx
imported by: nx_ballistics_wasm_vm_gate.nxnx_charlab_wasm_vet.nxnx_chip8_wasm_gate.nxnx_connect_keyx_vm_gate.nxnx_emu_probe_wasm_gate.nxnx_explodelab_wasm_vet.nxnx_faithdiff.nxnx_gassim_wasm_vm_gate.nxnx_kinetics_wasm_vm_gate.nxnx_media_crypt_wasm_gate.nxnx_meshview_vm_probe.nxnx_meshview_wasm_gate.nxnx_mineworld_autotest.nxnx_mineworld_wasm_vet.nxnx_pendulum_wasm_vm_gate.nxnx_physlab_wasm_vet.nxnx_scratch_wasm_gate.nxnx_sext_wasm_kat_gate.nxnx_sha256_wasm_vm_gate.nxnx_simlab_wasm_vm_gate.nxnx_skincube_anim_gate.nxnx_solarsim_wasm_vm_gate.nxnx_v128_gate.nxnx_vcodec_color_gop_vm_gate.nxnx_vcodec_color_wasm_vm_gate.nxnx_vcodec_gop_vm_gate.nxnx_vcodec_inter_vm_gate.nxnx_vcodec_luma32_vm_gate.nxnx_video_client_live_verify.nxnx_video_client_wasm_vm_gate.nxnx_vmleak_gate.nxnx_vmtest_vm_gate.nxnx_wasm_vm_exec_gate.nxnx_wasm_vm_gate.nxnx_x25519_wasm_vm_gate.nxnx_x86_wasm_gate.nx
structs
| 40 | struct WasmMod |
consts
| 18 | const K_MAGIC_65536: i64 = 65536 |
| 19 | const K_MAGIC_1024: i64 = 1024 |
| 20 | const K_MAGIC_2048: i64 = 2048 |
| 21 | const K_MAGIC_262144: i64 = 262144 |
| 22 | const K_MAGIC_4096: i64 = 4096 |
| 23 | const K_MAGIC_131072: i64 = 131072 |
| 24 | const K_MAGIC_2654435761: i64 = 2654435761 |
| 25 | const K_MAGIC_4000000: i64 = 4000000 |
| 26 | const K_MAGIC_32768: i64 = 32768 |
| 27 | const K_MAGIC_2147483648: i64 = 2147483648 |
| 28 | const K_MAGIC_4294967296: i64 = 4294967296 |
| 29 | const K_MAGIC_4090: i64 = 4090 |
| 30 | const K_MAGIC_65530: i64 = 65530 |
| 31 | const K_MAGIC_262140: i64 = 262140 |
| 32 | const K_MAGIC_999999: i64 = 999999 |
functions
| 72 | func wv_u8(b: *u8, pos: *i64) -> i64 { let p: i64 = pos[0]; pos[0] = p + 1; return b[p] as i64 } |
| 73 | func wv_uleb(b: *u8, pos: *i64) -> i64 |
| 83 | func wv_sleb(b: *u8, pos: *i64) -> i64 |
| 98 | func wm_parse(mod: *WasmMod) -> i64 |
| 210 | func wm_name_eq(b: *u8, off: i64, len: i64, needle: *u8) -> i64 called by 1: wm_find_export |
| 217 | func wm_find_export(mod: *WasmMod, needle: *u8) -> i64 |
| 228 | func wm_new(bytes: *u8, len: i64) -> *WasmMod |
| 252 | func wm_memo_get(mod: *WasmMod, key: i64) -> i64 called by 1: wm_call |
| 265 | func wm_memo_put(mod: *WasmMod, key: i64, val: i64) -> i64 called by 1: wm_call |
| 281 | func wm_ld64(m: *u8, a: i64) -> i64 { var v: i64=0; var i: i64=0; while i<8 { v = v | ((m[a+i] as i64) << (i*8)); i=i+1 } return v } |
| 282 | func wm_st64(m: *u8, a: i64, v: i64) -> i64 { var i: i64=0; while i<8 { m[a+i] = ((v >> (i*8)) & 0xFF) as u8; i=i+1 } return 0 } |
| 285 | func wm_skip_imm(b: *u8, op: i64, pos: *i64) -> i64 |
| 309 | func wm_match_end(b: *u8, startpos: i64) -> i64 |
| 335 | func wm_match_else(b: *u8, startpos: i64) -> i64 |
| 355 | func wm_do_br(mod: *WasmMod, pos: *i64, lbl: i64) -> i64 called by 1: wm_call |
| 364 | func wm_phexf(v: i64, fd: i64) -> i64 |
| 370 | func wm_pn2f(v: i64, fd: i64) -> i64 |
| 380 | func wm_pn2(v: i64) -> i64 { return wm_pn2f(v, 2) } calls 1: wm_pn2f |
| 381 | func wm_phex(v: i64) -> i64 { return wm_phexf(v, 2) } calls 1: wm_phexf |
| 382 | func wm_trap1(code: i64, op: i64, a: i64, bb: i64, fd: i64) -> i64 |
| 390 | func wm_trap(code: i64, op: i64, a: i64, bb: i64) -> i64 |
| 396 | func wm_call(mod: *WasmMod, fidx: i64, args: *i64, nargs: i64) -> i64 called by 3: mainwm_callwm_run calls 19: sys_mmapwv_u8wm_memo_getwm_match_endwm_memo_putwm_match_else+13 |
| 634 | func wm_run(mod: *WasmMod, name: *u8, a0: i64, a1: i64, a2: i64, a3: i64, a4: i64, na: i64) -> i64 |