Sta::replaceEquivCellBefore

Signed-off-by: James Cherry <cherry@CerezoBook.local>
This commit is contained in:
James Cherry 2026-07-09 19:35:18 -07:00
parent a0de2706d3
commit 55e9bb5a88
1 changed files with 3 additions and 6 deletions

View File

@ -4532,16 +4532,14 @@ Sta::replaceEquivCellBefore(const Instance *inst,
VertexOutEdgeIterator edge_iter(vertex, graph_);
while (edge_iter.hasNext()) {
Edge *edge = edge_iter.next();
Vertex *to_vertex = edge->to(graph_);
if (network_->instance(to_vertex->pin()) == inst) {
if (!edge->isWire()) {
TimingArcSet *from_set = edge->timingArcSet();
// Find corresponding timing arc set.
TimingArcSet *to_set = to_cell->findTimingArcSet(from_set);
if (to_set)
edge->setTimingArcSet(to_set);
else
report_->critical(
1556, "corresponding timing arc set not found in equiv cells");
report_->critical(1563, "corresponding timing arc set not found in equiv cells");
}
}
}
@ -4637,8 +4635,7 @@ Sta::replaceCellBefore(const Instance *inst,
VertexOutEdgeIterator edge_iter(vertex, graph_);
while (edge_iter.hasNext()) {
Edge *edge = edge_iter.next();
Vertex *to_vertex = edge->to(graph_);
if (network_->instance(to_vertex->pin()) == inst)
if (!edge->isWire())
deleteEdge(edge);
}
}