λ Support functions! #5
@@ -2,8 +2,8 @@ use cranelift_codegen::ir::{types, AbiParam, FuncRef, Function, Signature};
|
|||||||
use cranelift_codegen::isa::CallConv;
|
use cranelift_codegen::isa::CallConv;
|
||||||
use cranelift_jit::JITBuilder;
|
use cranelift_jit::JITBuilder;
|
||||||
use cranelift_module::{FuncId, Linkage, Module, ModuleResult};
|
use cranelift_module::{FuncId, Linkage, Module, ModuleResult};
|
||||||
use std::collections::HashMap;
|
|
||||||
use std::alloc::Layout;
|
use std::alloc::Layout;
|
||||||
|
use std::collections::HashMap;
|
||||||
use std::ffi::CStr;
|
use std::ffi::CStr;
|
||||||
use std::fmt::Write;
|
use std::fmt::Write;
|
||||||
use target_lexicon::Triple;
|
use target_lexicon::Triple;
|
||||||
|
|||||||
@@ -112,8 +112,6 @@ fn main() {
|
|||||||
|
|
||||||
match jit(ir) {
|
match jit(ir) {
|
||||||
Err(e) => emit(e.into()),
|
Err(e) => emit(e.into()),
|
||||||
Ok(compiled_function) => {
|
Ok(compiled_function) => compiled_function(),
|
||||||
compiled_function()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -296,7 +296,6 @@ fn convert_expression(
|
|||||||
let mut result_fields = HashMap::new();
|
let mut result_fields = HashMap::new();
|
||||||
let mut type_fields = ir::Fields::default();
|
let mut type_fields = ir::Fields::default();
|
||||||
let mut prereqs = vec![];
|
let mut prereqs = vec![];
|
||||||
let result_type = ir::TypeOrVar::new();
|
|
||||||
|
|
||||||
for (name, syntax_expr) in fields.into_iter() {
|
for (name, syntax_expr) in fields.into_iter() {
|
||||||
let (ir_expr, expr_type) =
|
let (ir_expr, expr_type) =
|
||||||
|
|||||||
Reference in New Issue
Block a user