Tidy up calls to analyze_branch.

This commit is contained in:
Dan Gohman
2018-03-01 06:43:16 -08:00
parent 125270e2b0
commit 505fe9277a
7 changed files with 8 additions and 8 deletions

View File

@@ -340,7 +340,7 @@ impl DominatorTree {
/// post-order except for the insertion of the new EBB header at the split point.
fn push_successors(&mut self, func: &Function, ebb: Ebb) {
for inst in func.layout.ebb_insts(ebb) {
match func.dfg[inst].analyze_branch(&func.dfg.value_lists) {
match func.dfg.analyze_branch(inst) {
BranchInfo::SingleDest(succ, _) => {
if self.nodes[succ].rpo_number == 0 {
self.nodes[succ].rpo_number = SEEN;

View File

@@ -108,7 +108,7 @@ impl ControlFlowGraph {
fn compute_ebb(&mut self, func: &Function, ebb: Ebb) {
for inst in func.layout.ebb_insts(ebb) {
match func.dfg[inst].analyze_branch(&func.dfg.value_lists) {
match func.dfg.analyze_branch(inst) {
BranchInfo::SingleDest(dest, _) => {
self.add_edge((ebb, inst), dest);
}

View File

@@ -908,7 +908,7 @@ impl<'a> Context<'a> {
let inst = self.cur.current_inst().expect("Not on an instruction");
let ctx = self.liveness.context(&self.cur.func.layout);
match self.cur.func.dfg[inst].analyze_branch(&self.cur.func.dfg.value_lists) {
match self.cur.func.dfg.analyze_branch(inst) {
NotABranch => false,
SingleDest(ebb, _) => {
let lr = &self.liveness[value];

View File

@@ -260,7 +260,7 @@ impl LiveValueTracker {
) -> (&[LiveValue], &[LiveValue], &[LiveValue]) {
// Save a copy of the live values before any branches or jumps that could be somebody's
// immediate dominator.
match dfg[inst].analyze_branch(&dfg.value_lists) {
match dfg.analyze_branch(inst) {
BranchInfo::NotABranch => {}
_ => self.save_idom_live_set(inst),
}

View File

@@ -274,7 +274,7 @@ impl<'a> LocationVerifier<'a> {
};
let dfg = &self.func.dfg;
match dfg[inst].analyze_branch(&dfg.value_lists) {
match dfg.analyze_branch(inst) {
NotABranch => {
panic!(
"No branch information for {}",

View File

@@ -693,7 +693,7 @@ impl<'a> Verifier<'a> {
}
fn typecheck_variable_args(&self, inst: Inst) -> Result {
match self.func.dfg[inst].analyze_branch(&self.func.dfg.value_lists) {
match self.func.dfg.analyze_branch(inst) {
BranchInfo::SingleDest(ebb, _) => {
let iter = self.func.dfg.ebb_params(ebb).iter().map(|&v| {
self.func.dfg.value_type(v)

View File

@@ -620,7 +620,7 @@ where
val: Value,
var: Variable,
) -> Option<(Ebb, Block, Inst)> {
match func.dfg[jump_inst].analyze_branch(&func.dfg.value_lists) {
match func.dfg.analyze_branch(jump_inst) {
BranchInfo::NotABranch => {
panic!("you have declared a non-branch instruction as a predecessor to an ebb");
}
@@ -855,7 +855,7 @@ mod tests {
cur.ins().iadd(x_use3, y_use3)
};
ssa.def_var(y_var, y2_ssa, block2);
match func.dfg[jump_inst].analyze_branch(&func.dfg.value_lists) {
match func.dfg.analyze_branch(jump_inst) {
BranchInfo::SingleDest(dest, jump_args) => {
assert_eq!(dest, ebb1);
assert_eq!(jump_args.len(), 0);