Sta::delaysInvalidFromFanin

Signed-off-by: James Cherry <cherry@CerezoBook.local>
This commit is contained in:
James Cherry 2026-06-22 19:14:30 -07:00
parent c81f0c169d
commit 458c277c80
2 changed files with 8 additions and 21 deletions

View File

@ -1513,7 +1513,6 @@ protected:
bool infer_latches); bool infer_latches);
void delayCalcPreamble(); void delayCalcPreamble();
void delaysInvalidFrom(const Port *port); void delaysInvalidFrom(const Port *port);
void delaysInvalidFromFanin(const Port *port);
void deleteEdge(Edge *edge); void deleteEdge(Edge *edge);
void netParasiticCaps(Net *net, void netParasiticCaps(Net *net,
const RiseFall *rf, const RiseFall *rf,

View File

@ -3965,7 +3965,7 @@ Sta::setPortExtPinCap(const Port *port,
for (const MinMax *mm : min_max->range()) for (const MinMax *mm : min_max->range())
sdc->setPortExtPinCap(port, rf1, mm, cap); sdc->setPortExtPinCap(port, rf1, mm, cap);
} }
delaysInvalidFromFanin(port); delaysInvalidFrom(port);
} }
void void
@ -4020,7 +4020,7 @@ Sta::setPortExtWireCap(const Port *port,
for (const MinMax *mm : min_max->range()) for (const MinMax *mm : min_max->range())
sdc->setPortExtWireCap(port, rf1, mm, cap); sdc->setPortExtWireCap(port, rf1, mm, cap);
} }
delaysInvalidFromFanin(port); delaysInvalidFrom(port);
} }
void void
@ -4038,7 +4038,7 @@ Sta::setPortExtFanout(const Port *port,
{ {
for (const MinMax *mm : min_max->range()) for (const MinMax *mm : min_max->range())
sdc->setPortExtFanout(port, mm, fanout); sdc->setPortExtFanout(port, mm, fanout);
delaysInvalidFromFanin(port); delaysInvalidFrom(port);
} }
void void
@ -5017,20 +5017,6 @@ Sta::delaysInvalidFrom(Vertex *vertex)
graph_delay_calc_->delayInvalid(vertex); graph_delay_calc_->delayInvalid(vertex);
} }
void
Sta::delaysInvalidFromFanin(const Port *port)
{
if (graph_) {
Instance *top_inst = network_->topInstance();
Pin *pin = network_->findPin(top_inst, port);
Vertex *vertex, *bidirect_drvr_vertex;
graph_->pinVertices(pin, vertex, bidirect_drvr_vertex);
delaysInvalidFromFanin(vertex);
if (bidirect_drvr_vertex)
delaysInvalidFromFanin(bidirect_drvr_vertex);
}
}
void void
Sta::delaysInvalidFromFanin(const Pin *pin) Sta::delaysInvalidFromFanin(const Pin *pin)
{ {
@ -5070,9 +5056,11 @@ Sta::delaysInvalidFromFanin(Vertex *vertex)
VertexInEdgeIterator edge_iter(vertex, graph_); VertexInEdgeIterator edge_iter(vertex, graph_);
while (edge_iter.hasNext()) { while (edge_iter.hasNext()) {
Edge *edge = edge_iter.next(); Edge *edge = edge_iter.next();
Vertex *from_vertex = edge->from(graph_); if (edge->isWire()) {
delaysInvalidFrom(from_vertex); Vertex *from_vertex = edge->from(graph_);
search_->requiredInvalid(from_vertex); delaysInvalidFrom(from_vertex);
search_->requiredInvalid(from_vertex);
}
} }
} }