@@ -475,7 +475,39 @@ services.rs # Service management (systemd)
475475
476476** Workspace Structure:**
477477- Main crate: ` osvm-cli ` (CLI tool)
478- - OVSM crate: ` crates/ovsm ` (LISP interpreter)
478+ - OVSM crate: ` crates/ovsm ` (LISP interpreter + sBPF compiler)
479+
480+ ** OVSM Compiler Architecture:**
481+
482+ ``` text
483+ crates/ovsm/src/
484+ ├── lexer/
485+ │ └── sexpr_scanner.rs # S-expression tokenizer
486+ ├── parser/
487+ │ └── sexpr_parser.rs # AST builder from tokens
488+ ├── runtime/
489+ │ └── lisp_evaluator.rs # LISP interpreter (for scripts)
490+ └── compiler/ # sBPF bytecode compiler
491+ ├── mod.rs # Compiler entry point
492+ ├── ir/ # Intermediate Representation (3AC)
493+ │ ├── mod.rs # Module definition + re-exports
494+ │ ├── types.rs # PrimitiveType, FieldType, StructDef
495+ │ ├── instruction.rs # IrReg, IrInstruction enum
496+ │ ├── program.rs # BasicBlock, IrProgram (CFG)
497+ │ └── generator.rs # IrGenerator (~60 macro impls, 5700 lines)
498+ ├── codegen/ # IR → sBPF lowering
499+ │ ├── mod.rs
500+ │ ├── register_allocator.rs # Graph coloring allocator
501+ │ └── elf_writer.rs # ELF .so output
502+ └── solana_abi.rs # Solana ABI helpers (WIP)
503+ ```
504+
505+ ** Compilation Pipeline:**
506+ 1 . ` sexpr_scanner ` → Tokens
507+ 2 . ` sexpr_parser ` → AST
508+ 3 . ` ir/generator.rs ` → Three-address-code IR
509+ 4 . ` codegen/register_allocator.rs ` → Physical register mapping
510+ 5 . ` codegen/elf_writer.rs ` → Solana-compatible .so binary
479511
480512** OVSM LISP Syntax Reference:**
481513
@@ -1284,7 +1316,9 @@ osvm ovsm repl
12841316- ` crates/ovsm/src/lexer/sexpr_scanner.rs ` - S-expression lexer
12851317- ` crates/ovsm/src/parser/sexpr_parser.rs ` - S-expression parser
12861318- ` crates/ovsm/src/runtime/lisp_evaluator.rs ` - OVSM LISP evaluator
1287- - why BUILD release? WE DEBUGGING
1319+ - ` crates/ovsm/src/compiler/ir/ ` - IR module (see OVSM Compiler Architecture above)
1320+ - ` crates/ovsm/src/compiler/codegen/ ` - sBPF bytecode generation
1321+
12881322---
12891323
12901324## ✅ TUI DASHBOARD STATUS (PRODUCTION-READY)
0 commit comments