Move the ctrl_typevar function into dfg.

Soon, InstructionData won't have sufficient information to compute this.

Give TargetIsa::encode() an explicit ctrl_typevar argument. This
function does not require the instruction to be inserted in the DFG
tables.
This commit is contained in:
Jakob Stoklund Olesen
2017-04-12 13:14:03 -07:00
parent e653d44f39
commit 28ff7b7925
11 changed files with 69 additions and 53 deletions

View File

@@ -60,10 +60,11 @@ impl TargetIsa for Isa {
}
fn encode(&self,
dfg: &ir::DataFlowGraph,
inst: &ir::InstructionData)
_dfg: &ir::DataFlowGraph,
inst: &ir::InstructionData,
ctrl_typevar: ir::Type)
-> Result<Encoding, Legalize> {
lookup_enclist(inst.ctrl_typevar(dfg),
lookup_enclist(ctrl_typevar,
inst.opcode(),
self.cpumode,
&enc_tables::LEVEL2[..])