Skip to content
Snippets Groups Projects
Commit f054aa2d authored by Per's avatar Per
Browse files

printing module

parent d69cc691
No related branches found
No related tags found
No related merge requests found
......@@ -10,7 +10,9 @@ use inkwell::{
module::Module,
passes::PassManager,
types::BasicTypeEnum,
values::{BasicValueEnum, FloatValue, FunctionValue, IntValue, PointerValue},
values::{
BasicValueEnum, FloatValue, FunctionValue, IntValue, PointerValue,
},
FloatPredicate, OptimizationLevel,
};
use std::collections::HashMap;
......@@ -83,9 +85,12 @@ fn jit_compile_sum(
fn main() -> Result<(), Box<dyn Error>> {
let context = Context::create();
let module = context.create_module("expr");
let mut module = context.create_module("expr");
let builder = context.create_builder();
let execution_engine = module.create_jit_execution_engine(OptimizationLevel::None)?;
let execution_engine =
module.create_jit_execution_engine(OptimizationLevel::None)?;
// let passmanager = PassManager::create(input: I)
match parse_expr(Span::new(
"
......@@ -94,7 +99,13 @@ fn main() -> Result<(), Box<dyn Error>> {
)) {
Ok((_, e)) => {
println!("{:?}", &e);
let fun_expr = jit_compile_sum(&e, &context, &module, &builder, &execution_engine)
let fun_expr = jit_compile_sum(
&e,
&context,
&module,
&builder,
&execution_engine,
)
.ok_or("Unable to JIT compile `expr`")?;
unsafe {
......@@ -103,6 +114,7 @@ fn main() -> Result<(), Box<dyn Error>> {
}
_ => panic!(),
}
println!("module: {}", module.print_to_string());
Ok(())
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment