Lines Matching refs:value
99 value: Value, field
124 Start { value: Value, before: Inst },
248 while let Some((event, value)) = stack.pop() { in topo_sorted_values()
251 if seen.insert(value) { in topo_sorted_values()
252 stack.push((Event::Exit, value)); in topo_sorted_values()
253 match self.func.dfg.value_def(value) { in topo_sorted_values()
277 sorted.push(value); in topo_sorted_values()
311 for value in sorted_values.iter().copied() { in compute_best_values()
312 let def = self.func.dfg.value_def(value); in compute_best_values()
313 trace!("computing best for value {:?} def {:?}", value, def); in compute_best_values()
323 best[value] = if use_worst { in compute_best_values()
330 best[x], best[y], best[value] in compute_best_values()
335 best[value] = BestEntry(Cost::zero(), value); in compute_best_values()
344 best[value] = BestEntry(Cost::zero(), value); in compute_best_values()
352 self.func.dfg.inst_values(inst).map(|value| { in compute_best_values()
353 debug_assert!(!best[value].1.is_reserved_value()); in compute_best_values()
354 best[value].0 in compute_best_values()
357 best[value] = BestEntry(cost, value); in compute_best_values()
358 trace!(" -> cost of value {} = {:?}", value, cost); in compute_best_values()
397 fn elaborate_eclass_use(&mut self, value: Value, before: Inst) -> ElaboratedValue { in elaborate_eclass_use()
398 debug_assert_ne!(value, Value::reserved_value()); in elaborate_eclass_use()
403 .push(ElabStackEntry::Start { value, before }); in elaborate_eclass_use()
430 if arg.in_block != insert_block && remat_values.contains(&arg.value) { in maybe_remat_arg()
431 let new_value = match remat_copies.entry((insert_block, arg.value)) { in maybe_remat_arg()
434 let inst = func.dfg.value_def(arg.value).inst().unwrap(); in maybe_remat_arg()
442 trace!("rematerialized {} as {}", arg.value, new_value); in maybe_remat_arg()
443 arg.value = new_value; in maybe_remat_arg()
454 ElabStackEntry::Start { value, before } => { in process_elab_stack()
455 debug_assert!(self.func.dfg.value_is_real(value)); in process_elab_stack()
462 trace!("looking up best value for {}", value); in process_elab_stack()
463 let BestEntry(_, best_value) = self.value_to_best_value[value]; in process_elab_stack()
464 trace!("elaborate: value {} -> best {}", value, best_value); in process_elab_stack()
471 trace!("elaborate: value {} -> {:?}", value, elab_val); in process_elab_stack()
497 value: best_value, in process_elab_stack()
529 .push(ElabStackEntry::Start { value: arg, before }); in process_elab_stack()
564 .map(|&value| { in process_elab_stack()
573 !self.loop_analysis.is_in_loop(value.in_block, loop_entry.lp) in process_elab_stack()
578 value, hoist_level in process_elab_stack()
680 value: new_result, in process_elab_stack()
706 value: result, in process_elab_stack()
732 .overwrite_inst_values(inst, arg_values.into_iter().map(|ev| ev.value)); in process_elab_stack()
742 value: self.func.dfg.inst_results(inst)[result_idx], in process_elab_stack()
794 *arg = new_arg.value; in elaborate_block()
810 value: result, in elaborate_block()