mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-29 14:54:47 +00:00
clean up some other dependencies
This commit is contained in:
parent
5632e3159d
commit
2262dcb3f9
6 changed files with 39 additions and 64 deletions
11
Cargo.lock
generated
11
Cargo.lock
generated
|
@ -3368,17 +3368,10 @@ dependencies = [
|
||||||
"inkwell 0.1.0",
|
"inkwell 0.1.0",
|
||||||
"morphic_lib",
|
"morphic_lib",
|
||||||
"roc_builtins",
|
"roc_builtins",
|
||||||
"roc_can",
|
|
||||||
"roc_collections",
|
"roc_collections",
|
||||||
"roc_module",
|
"roc_module",
|
||||||
"roc_mono",
|
"roc_mono",
|
||||||
"roc_parse",
|
|
||||||
"roc_problem",
|
|
||||||
"roc_region",
|
|
||||||
"roc_solve",
|
|
||||||
"roc_std",
|
"roc_std",
|
||||||
"roc_types",
|
|
||||||
"roc_unify",
|
|
||||||
"target-lexicon",
|
"target-lexicon",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -3464,20 +3457,16 @@ version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bumpalo",
|
"bumpalo",
|
||||||
"hashbrown 0.11.2",
|
"hashbrown 0.11.2",
|
||||||
"linked-hash-map",
|
|
||||||
"morphic_lib",
|
"morphic_lib",
|
||||||
"roc_builtins",
|
|
||||||
"roc_can",
|
"roc_can",
|
||||||
"roc_collections",
|
"roc_collections",
|
||||||
"roc_module",
|
"roc_module",
|
||||||
"roc_parse",
|
|
||||||
"roc_problem",
|
"roc_problem",
|
||||||
"roc_region",
|
"roc_region",
|
||||||
"roc_solve",
|
"roc_solve",
|
||||||
"roc_std",
|
"roc_std",
|
||||||
"roc_types",
|
"roc_types",
|
||||||
"roc_unify",
|
"roc_unify",
|
||||||
"ven_ena",
|
|
||||||
"ven_graph",
|
"ven_graph",
|
||||||
"ven_pretty",
|
"ven_pretty",
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,21 +8,11 @@ edition = "2018"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
roc_collections = { path = "../collections" }
|
roc_collections = { path = "../collections" }
|
||||||
roc_region = { path = "../region" }
|
|
||||||
roc_module = { path = "../module" }
|
roc_module = { path = "../module" }
|
||||||
roc_problem = { path = "../problem" }
|
|
||||||
roc_types = { path = "../types" }
|
|
||||||
roc_builtins = { path = "../builtins" }
|
roc_builtins = { path = "../builtins" }
|
||||||
roc_unify = { path = "../unify" }
|
|
||||||
roc_solve = { path = "../solve" }
|
|
||||||
roc_mono = { path = "../mono" }
|
roc_mono = { path = "../mono" }
|
||||||
roc_std = { path = "../../roc_std" }
|
roc_std = { path = "../../roc_std" }
|
||||||
morphic_lib = { path = "../../vendor/morphic_lib" }
|
morphic_lib = { path = "../../vendor/morphic_lib" }
|
||||||
bumpalo = { version = "3.8.0", features = ["collections"] }
|
bumpalo = { version = "3.8.0", features = ["collections"] }
|
||||||
inkwell = { path = "../../vendor/inkwell" }
|
inkwell = { path = "../../vendor/inkwell" }
|
||||||
target-lexicon = "0.12.2"
|
target-lexicon = "0.12.2"
|
||||||
|
|
||||||
[dev-dependencies]
|
|
||||||
roc_can = { path = "../can" }
|
|
||||||
roc_parse = { path = "../parse" }
|
|
||||||
bumpalo = { version = "3.8.0", features = ["collections"] }
|
|
||||||
|
|
|
@ -19,11 +19,4 @@ ven_pretty = { path = "../../vendor/pretty" }
|
||||||
morphic_lib = { path = "../../vendor/morphic_lib" }
|
morphic_lib = { path = "../../vendor/morphic_lib" }
|
||||||
bumpalo = { version = "3.8.0", features = ["collections"] }
|
bumpalo = { version = "3.8.0", features = ["collections"] }
|
||||||
hashbrown = { version = "0.11.2", features = [ "bumpalo" ] }
|
hashbrown = { version = "0.11.2", features = [ "bumpalo" ] }
|
||||||
ven_ena = { path = "../../vendor/ena" }
|
|
||||||
ven_graph = { path = "../../vendor/pathfinding" }
|
ven_graph = { path = "../../vendor/pathfinding" }
|
||||||
linked-hash-map = "0.5.4"
|
|
||||||
|
|
||||||
[dev-dependencies]
|
|
||||||
roc_builtins = { path = "../builtins" }
|
|
||||||
roc_parse = { path = "../parse" }
|
|
||||||
roc_solve = { path = "../solve" }
|
|
||||||
|
|
|
@ -1,8 +1,46 @@
|
||||||
|
/// UNUSED
|
||||||
|
///
|
||||||
|
/// but kept for future reference
|
||||||
|
///
|
||||||
|
///
|
||||||
|
// pub fn optimize_refcount_operations<'i, T>(
|
||||||
|
// arena: &'a Bump,
|
||||||
|
// home: ModuleId,
|
||||||
|
// ident_ids: &'i mut IdentIds,
|
||||||
|
// procs: &mut MutMap<T, Proc<'a>>,
|
||||||
|
// ) {
|
||||||
|
// use crate::expand_rc;
|
||||||
|
//
|
||||||
|
// let deferred = expand_rc::Deferred {
|
||||||
|
// inc_dec_map: Default::default(),
|
||||||
|
// assignments: Vec::new_in(arena),
|
||||||
|
// decrefs: Vec::new_in(arena),
|
||||||
|
// };
|
||||||
|
//
|
||||||
|
// let mut env = expand_rc::Env {
|
||||||
|
// home,
|
||||||
|
// arena,
|
||||||
|
// ident_ids,
|
||||||
|
// layout_map: Default::default(),
|
||||||
|
// alias_map: Default::default(),
|
||||||
|
// constructor_map: Default::default(),
|
||||||
|
// deferred,
|
||||||
|
// };
|
||||||
|
//
|
||||||
|
// for (_, proc) in procs.iter_mut() {
|
||||||
|
// let b = expand_rc::expand_and_cancel_proc(
|
||||||
|
// &mut env,
|
||||||
|
// arena.alloc(proc.body.clone()),
|
||||||
|
// proc.args,
|
||||||
|
// );
|
||||||
|
// proc.body = b.clone();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
use crate::ir::{BranchInfo, Expr, ModifyRc, Stmt};
|
use crate::ir::{BranchInfo, Expr, ModifyRc, Stmt};
|
||||||
use crate::layout::{Layout, UnionLayout};
|
use crate::layout::{Layout, UnionLayout};
|
||||||
use bumpalo::collections::Vec;
|
use bumpalo::collections::Vec;
|
||||||
use bumpalo::Bump;
|
use bumpalo::Bump;
|
||||||
use linked_hash_map::LinkedHashMap;
|
// use linked_hash_map::LinkedHashMap;
|
||||||
use roc_collections::all::MutMap;
|
use roc_collections::all::MutMap;
|
||||||
use roc_module::symbol::{IdentIds, ModuleId, Symbol};
|
use roc_module::symbol::{IdentIds, ModuleId, Symbol};
|
||||||
|
|
||||||
|
|
|
@ -370,40 +370,6 @@ impl<'a> Proc<'a> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn optimize_refcount_operations<'i, T>(
|
|
||||||
arena: &'a Bump,
|
|
||||||
home: ModuleId,
|
|
||||||
ident_ids: &'i mut IdentIds,
|
|
||||||
procs: &mut MutMap<T, Proc<'a>>,
|
|
||||||
) {
|
|
||||||
use crate::expand_rc;
|
|
||||||
|
|
||||||
let deferred = expand_rc::Deferred {
|
|
||||||
inc_dec_map: Default::default(),
|
|
||||||
assignments: Vec::new_in(arena),
|
|
||||||
decrefs: Vec::new_in(arena),
|
|
||||||
};
|
|
||||||
|
|
||||||
let mut env = expand_rc::Env {
|
|
||||||
home,
|
|
||||||
arena,
|
|
||||||
ident_ids,
|
|
||||||
layout_map: Default::default(),
|
|
||||||
alias_map: Default::default(),
|
|
||||||
constructor_map: Default::default(),
|
|
||||||
deferred,
|
|
||||||
};
|
|
||||||
|
|
||||||
for (_, proc) in procs.iter_mut() {
|
|
||||||
let b = expand_rc::expand_and_cancel_proc(
|
|
||||||
&mut env,
|
|
||||||
arena.alloc(proc.body.clone()),
|
|
||||||
proc.args,
|
|
||||||
);
|
|
||||||
proc.body = b.clone();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fn make_tail_recursive(&mut self, env: &mut Env<'a, '_>) {
|
fn make_tail_recursive(&mut self, env: &mut Env<'a, '_>) {
|
||||||
let mut args = Vec::with_capacity_in(self.args.len(), env.arena);
|
let mut args = Vec::with_capacity_in(self.args.len(), env.arena);
|
||||||
let mut proc_args = Vec::with_capacity_in(self.args.len(), env.arena);
|
let mut proc_args = Vec::with_capacity_in(self.args.len(), env.arena);
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
|
|
||||||
pub mod alias_analysis;
|
pub mod alias_analysis;
|
||||||
pub mod borrow;
|
pub mod borrow;
|
||||||
pub mod expand_rc;
|
|
||||||
pub mod inc_dec;
|
pub mod inc_dec;
|
||||||
pub mod ir;
|
pub mod ir;
|
||||||
pub mod layout;
|
pub mod layout;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue