pub fn generate(module: Module) -> Result<Vec<VmInstruction>, CalError>