use anyhow::Result;
+use std::fs::File;
+use std::io::Write;
+use std::path::PathBuf;
+
fn main() -> Result<()> {
let filename = std::env::args().nth(1).expect("must provide a file to compile");
let module = ir::compile(&filename)?;
// let mut interp = Interpreter::new(&module)?;
// interp.run()?;
let mut generator = riscv_asm_codegen::CodeGen::new(&module, 4096);
- println!("{}", generator.assembly()?);
+ let mut asm_path = PathBuf::from(filename);
+ asm_path.set_extension("asm");
+ let mut output = File::create(asm_path)?;
+ write!(output, "{}\n", generator.assembly()?)?;
Ok(())
}