mod asm; mod encode; mod reg; mod test; use crate::{ arch::Arch, backend::{LinkedProgram, Program}, io::CompilerMsg, }; pub use asm::*; pub use encode::*; pub use reg::*; pub use test::bin::run as bin_test; pub struct X86_64; impl Arch for X86_64 { const NAME: &str = "x86_64"; type Asm = Asm; type Addr = u64; fn compile(p: &Program) -> Result, CompilerMsg> { encode_program(p) } }