code wiki / _hdl_build / nx_riscv_emit.nx
nx_riscv_emit.nx
buildroot/runtime/_hdl_build/nx_riscv_emit.nx
about
nx_riscv_emit.nx -- SOVEREIGN RISC-V backend RUNG 1: our own rv64im encoder. Now on the GENERAL nx_riscv_lib
(shared enc_r/enc_i/enc_s, UI) -- only hex-print + canonical self-assert + matvec emission are local.
T1 the 8 core rv64im instructions each encode to their canonical machine code.
T2 (teeth) a wrong field (add funct7=1) != canonical add. T3 emit the no-float matvec loop to a .bin.
expect_exit: 0 Sovereign: nx_riscv_lib (+ nx_syscalls).
dependencies 2 imports · 0 importers
imports: nx_riscv_lib.nxnx_syscalls.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 9 | func g_hex(v: i64) -> i64 |
| 14 | func assert_enc(name: *u8, got: i64, want: i64) -> i64 |
| 19 | func wr_word(fd: i64, w: i64) -> i64 { let b: *u8=sys_mmap(4); b[0]=(w&255) as u8; b[1]=((w>>8)&255) as u8; b[2]=((w>>16)&255) as u8; b[3]=((w>>24)&255) as u8; sys_write(fd,b,4); return 0 } |
| 21 | func main() -> i64 |