| 1848 | } |
| 1849 | |
| 1850 | Status HloInstruction::DropAllControlDeps() { |
| 1851 | for (auto* ctrl_succ : control_successors_) { |
| 1852 | TF_RETURN_IF_ERROR( |
| 1853 | EraseElementFromVector(&ctrl_succ->control_predecessors_, this)); |
| 1854 | } |
| 1855 | for (auto* ctrl_pred : control_predecessors_) { |
| 1856 | TF_RETURN_IF_ERROR( |
| 1857 | EraseElementFromVector(&ctrl_pred->control_successors_, this)); |
| 1858 | } |
| 1859 | control_successors_.clear(); |
| 1860 | control_predecessors_.clear(); |
| 1861 | return Status::OK(); |
| 1862 | } |
| 1863 | |
| 1864 | Status HloInstruction::CopyAllControlDepsFrom(const HloInstruction* inst) { |
| 1865 | for (auto* ctrl_pred : inst->control_predecessors()) { |