From e0024709f44e26647301ecde589088ed61e148d2 Mon Sep 17 00:00:00 2001 From: James Cherry Date: Mon, 8 Jan 2024 16:18:54 -0700 Subject: [PATCH] parallel driver dcalc seg fault Signed-off-by: James Cherry --- dcalc/GraphDelayCalc.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dcalc/GraphDelayCalc.cc b/dcalc/GraphDelayCalc.cc index d852bb8f..722161d9 100644 --- a/dcalc/GraphDelayCalc.cc +++ b/dcalc/GraphDelayCalc.cc @@ -935,12 +935,12 @@ GraphDelayCalc::findParallelEdge(Vertex *vertex, Edge *&edge, const TimingArc *&arc) { - LibertyCell *drvr_cell = network_->libertyCell(network_->instance(drvr_edge->to(graph_)->pin())); + LibertyCell *drvr_cell = drvr_arc->from()->libertyCell(); LibertyCell *vertex_cell = network_->libertyCell(network_->instance(vertex->pin())); if (vertex_cell == drvr_cell) { // Homogeneous drivers. arc = drvr_arc; - LibertyPort *from_port = network_->libertyPort(edge->from(graph_)->pin()); + LibertyPort *from_port = network_->libertyPort(drvr_edge->from(graph_)->pin()); VertexInEdgeIterator edge_iter(vertex, graph_); while (edge_iter.hasNext()) { edge = edge_iter.next();