| 117 | } |
| 118 | |
| 119 | void SubGraph::Rewriter::apply_inplace() const { |
| 120 | m_owner_graph->m_endpoint_oprs.clear(); |
| 121 | m_owner_graph->m_endpoint_vars_set.clear(); |
| 122 | for (auto&& var : m_owner_graph->m_endpoint_vars) { |
| 123 | var = get_var(var.node()); |
| 124 | m_owner_graph->m_endpoint_oprs.insert(var.node()->owner_opr()); |
| 125 | m_owner_graph->m_endpoint_vars_set.insert(var.node()); |
| 126 | } |
| 127 | } |
| 128 | |
| 129 | std::pair<bool, VarNode*> SubGraph::Rewriter::get_var_internal(VarNode* var) { |
| 130 | // The implementation is (manually) unrolled once, background: |