vpr/src/device/rr_graph_obj.cpp
/* This function just marks the edge to be removed with an INVALID id 
 * And then set the RRGraph as polluted (dirty_flag = true)
 * The compress() function should be called to physically remove the edge 
 */
This function just marks the edge to be removed with an INVALID id
And then set the RRGraph as polluted (dirty_flag = true)
The compress() function should be called to physically remove the edge
This function just marks the edge to be removed with an INVALID id And then set the RRGraph as polluted ( dirty_flag = true ) The compress () function should be called to physically remove the edge
void RRGraph::remove_edge(const RREdgeId& edge) {
    RRNodeId src_node = edge_src_node(edge);
    RRNodeId sink_node = edge_sink_node(edge);
    for (size_t i = 0; i < node_num_in_edges_[src_node]; ++i) {
        if (node_edges_[src_node][i] == edge) {
            node_edges_[src_node][i] = RREdgeId::INVALID();
            break;
        }
    }
    for (size_t i = node_num_in_edges_[sink_node]; i < node_num_in_edges_[sink_node] + node_num_out_edges_[sink_node]; ++i) {
        if (node_edges_[sink_node][i] == edge) {
            node_edges_[sink_node][i] = RREdgeId::INVALID();
            break;
        }
    }
    invalid_edge_ids_.insert(edge);
    set_dirty();
}
void RRGraph :: remove_edge ( const RREdgeId & edge ) { RRNodeId src_node = edge_src_node ( edge ) ; RRNodeId sink_node = edge_sink_node ( edge ) ; for ( size_t i = 0 ; i < node_num_in_edges_ [ src_node ] ; ++ i ) { if ( node_edges_ [ src_node ] [ i ] == edge ) { node_edges_ [ src_node ] [ i ] = RREdgeId :: INVALID ( ) ; break ; } } for ( size_t i = node_num_in_edges_ [ sink_node ] ; i < node_num_in_edges_ [ sink_node ] + node_num_out_edges_ [ sink_node ] ; ++ i ) { if ( node_edges_ [ sink_node ] [ i ] == edge ) { node_edges_ [ sink_node ] [ i ] = RREdgeId :: INVALID ( ) ; break ; } } invalid_edge_ids_ . insert ( edge ) ; set_dirty ( ) ; }
This function just marks the edge to be removed with an INVALID id
 And then set the RRGraph as polluted (dirty_flag = true)
 The compress() function should be called to physically remove the edge
This function just marks the edge to be removed with an INVALID id And then set the RRGraph as polluted ( dirty_flag = true ) The compress () function should be called to physically remove the edge
/* Invalidate node to edge references
     * TODO: consider making this optional (e.g. if called from remove_node)
     */ /* Mark edge invalid */