feat: unify AST structures, introduce MIR and update codegen
This commit is contained in:
+5
-1
@@ -4,9 +4,11 @@ use clap::Parser as ClapParser;
|
||||
|
||||
use crate::frontend::parser::Parser;
|
||||
use crate::frontend::sema::Sema;
|
||||
use crate::middle::builder::MirBuilder;
|
||||
|
||||
pub mod backend;
|
||||
pub mod frontend;
|
||||
pub mod middle;
|
||||
|
||||
use crate::backend::cranelift::CraneliftBackend;
|
||||
|
||||
@@ -55,8 +57,10 @@ fn main() {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
let mir_module = MirBuilder::build(&typed_module);
|
||||
|
||||
let backend = CraneliftBackend::new();
|
||||
let (ir, obj_bytes) = backend.compile_module(&typed_module);
|
||||
let (ir, obj_bytes) = backend.compile_module(&mir_module);
|
||||
|
||||
if cli.emit_ir {
|
||||
println!("{}", ir);
|
||||
|
||||
Reference in New Issue
Block a user