Lines Matching refs:cursor

6 use crate::cursor::{Cursor, CursorPosition, FuncCursor};
751 let mut cursor = FuncCursor::new(self.func); in remove_pure_and_optimize() localVariable
772 ScopedHashMap::with_capacity(cursor.func.dfg.num_values()); in remove_pure_and_optimize()
802 available_block.resize(cursor.func.dfg.num_values()); in remove_pure_and_optimize()
806 let root = cursor.layout().entry_block().unwrap(); in remove_pure_and_optimize()
827 cursor.set_position(CursorPosition::Before(block)); in remove_pure_and_optimize()
831 for &param in cursor.func.dfg.block_params(block) { in remove_pure_and_optimize()
836 while let Some(inst) = cursor.next_inst() { in remove_pure_and_optimize()
839 cursor.func.dfg.display_inst(inst), in remove_pure_and_optimize()
844 cursor.func.dfg.map_inst_values(inst, |arg| { in remove_pure_and_optimize()
857 func: cursor.func, in remove_pure_and_optimize()
884 cursor.remove_inst_and_step_back(); in remove_pure_and_optimize()
889 &mut cursor, in remove_pure_and_optimize()
909 cursor: &mut FuncCursor, in execute_skeleton_inst_simplification()
913 let mut forward_val = |cursor: &mut FuncCursor, old_val, new_val| { in execute_skeleton_inst_simplification()
914 cursor.func.dfg.change_to_alias(old_val, new_val); in execute_skeleton_inst_simplification()
920 cursor.remove_inst_and_step_back(); in execute_skeleton_inst_simplification()
924 cursor.remove_inst_and_step_back(); in execute_skeleton_inst_simplification()
925 let old_val = cursor.func.dfg.first_result(old_inst); in execute_skeleton_inst_simplification()
926 cursor.func.dfg.detach_inst_results(old_inst); in execute_skeleton_inst_simplification()
927 forward_val(cursor, old_val, val); in execute_skeleton_inst_simplification()
935 cursor.replace_inst(new_inst); in execute_skeleton_inst_simplification()
936 debug_assert!(!cursor.func.dfg.insts[new_inst].opcode().is_terminator()); in execute_skeleton_inst_simplification()
950 for i in 0..cursor.func.dfg.inst_results(old_inst).len() { in execute_skeleton_inst_simplification()
951 let old_val = cursor.func.dfg.inst_results(old_inst)[i]; in execute_skeleton_inst_simplification()
952 let new_val = next_new_val(&cursor.func.dfg); in execute_skeleton_inst_simplification()
953 forward_val(cursor, old_val, new_val); in execute_skeleton_inst_simplification()
958 cursor.goto_inst(new_inst); in execute_skeleton_inst_simplification()
959 cursor.prev_inst(); in execute_skeleton_inst_simplification()