use crate::vm::reg::*; #[derive(Debug, Clone, Copy, PartialEq, Eq)] #[allow(dead_code)] pub enum Inst { Add(Reg, Reg), Mul(Reg, Reg), Div(Reg, Reg), Mod(Reg, Reg), INeg(Reg), And(Reg, Reg), Or(Reg, Reg), Xor(Reg, Reg), Shl(Reg, Reg), Shr(Reg, Reg), CmpEq(Reg, Reg), CmpLt(Reg, Reg), Jmp(Reg), Jz(Reg), Jnz(Reg), Load(Reg, Reg), Store(Reg, Reg), StoreImm(Reg, u64), MemCopy(Reg, Reg), RegCopy(Reg, Reg), Nop, Halt, } // https://crates.io/crates/packed_struct