Move EntityList and SparseMap into the entity module.
These data structures are dependent on EntityRef and EntityMap, so it makes sense to keep them in the same module.
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
//! instruction, starting at the EBB header.
|
||||
|
||||
use dominator_tree::DominatorTree;
|
||||
use entity_list::{EntityList, ListPool};
|
||||
use entity::{EntityList, ListPool};
|
||||
use ir::instructions::BranchInfo;
|
||||
use ir::{Inst, Ebb, Value, DataFlowGraph, Layout, ExpandedProgramPoint};
|
||||
use partition_slice::partition_slice;
|
||||
|
||||
@@ -175,13 +175,13 @@
|
||||
//!
|
||||
//! There is some room for improvement.
|
||||
|
||||
use entity::SparseMap;
|
||||
use flowgraph::ControlFlowGraph;
|
||||
use ir::dfg::ValueDef;
|
||||
use ir::{Function, Value, Inst, Ebb, Layout, ProgramPoint};
|
||||
use isa::{TargetIsa, EncInfo};
|
||||
use regalloc::affinity::Affinity;
|
||||
use regalloc::liverange::LiveRange;
|
||||
use sparse_map::SparseMap;
|
||||
use std::mem;
|
||||
use std::ops::Index;
|
||||
|
||||
|
||||
@@ -107,10 +107,10 @@
|
||||
//! of coalescing, so we would need to roll our own.
|
||||
//!
|
||||
|
||||
use std::cmp::Ordering;
|
||||
use entity::SparseMapValue;
|
||||
use ir::{Inst, Ebb, Value, ProgramPoint, ExpandedProgramPoint, ProgramOrder};
|
||||
use regalloc::affinity::Affinity;
|
||||
use sparse_map::SparseMapValue;
|
||||
use std::cmp::Ordering;
|
||||
|
||||
/// Global live range of a single SSA value.
|
||||
///
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
|
||||
use cursor::{Cursor, EncCursor};
|
||||
use dominator_tree::DominatorTree;
|
||||
use entity::{SparseMap, SparseMapValue};
|
||||
use ir::{Ebb, Inst, Value, Function};
|
||||
use ir::{InstBuilder, ArgumentType, ArgumentLoc};
|
||||
use isa::RegClass;
|
||||
@@ -18,7 +19,6 @@ use isa::{TargetIsa, Encoding, EncInfo, RecipeConstraints, ConstraintKind};
|
||||
use regalloc::affinity::Affinity;
|
||||
use regalloc::live_value_tracker::{LiveValue, LiveValueTracker};
|
||||
use regalloc::liveness::Liveness;
|
||||
use sparse_map::{SparseMap, SparseMapValue};
|
||||
use topo_order::TopoOrder;
|
||||
|
||||
/// Reusable data structures for the reload pass.
|
||||
|
||||
@@ -105,10 +105,10 @@
|
||||
//! appropriate candidate among the set of live register values, add it as a variable and start
|
||||
//! over.
|
||||
|
||||
use entity::{SparseMap, SparseMapValue};
|
||||
use ir::Value;
|
||||
use isa::{RegInfo, RegClass, RegUnit};
|
||||
use regalloc::allocatable_set::RegSetIter;
|
||||
use sparse_map::{SparseMap, SparseMapValue};
|
||||
use std::fmt;
|
||||
use super::AllocatableSet;
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
//! If any values in a virtual register are spilled, they will use the same stack slot. This avoids
|
||||
//! memory-to-memory copies when a spilled value is passed as an EBB argument.
|
||||
|
||||
use entity_list::{EntityList, ListPool};
|
||||
use entity::{EntityList, ListPool};
|
||||
use entity::{PrimaryMap, EntityMap, Keys};
|
||||
use ir::Value;
|
||||
use packed_option::PackedOption;
|
||||
|
||||
Reference in New Issue
Block a user