From 795c190edbdb8adfbb459a0a4ce97799ba219537 Mon Sep 17 00:00:00 2001 From: James Cherry Date: Tue, 24 Feb 2026 15:07:33 -0800 Subject: [PATCH] ClkLatency::findClkDelays unclocked regs resolves #385 Signed-off-by: James Cherry --- search/ClkLatency.cc | 6 +++--- search/Sta.cc | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/search/ClkLatency.cc b/search/ClkLatency.cc index 5fc244e8..09d09bd5 100644 --- a/search/ClkLatency.cc +++ b/search/ClkLatency.cc @@ -162,14 +162,14 @@ ClkLatency::findClkDelays(ConstClockSeq &clks, VertexPathIterator path_iter(clk_vertex, this); while (path_iter.hasNext()) { Path *path = path_iter.next(); - const ClockEdge *path_clk_edge = path->clkEdge(this); const Scene *path_scene = path->scene(this); - const Clock *path_clk = path_clk_edge->clock(); - if (path_clk_edge + const Clock *path_clk = path->clock(this); + if (path_clk && scenes.contains(path_scene) && clk_set.contains(path_clk)) { auto delays_itr = clk_delay_map.find(path_clk); if (delays_itr != clk_delay_map.end()) { + const ClockEdge *path_clk_edge = path->clkEdge(this); ClkDelays &clk_delays = delays_itr->second; const RiseFall *clk_rf = path_clk_edge->transition(); const MinMax *min_max = path->minMax(this); diff --git a/search/Sta.cc b/search/Sta.cc index 91491228..060697e8 100644 --- a/search/Sta.cc +++ b/search/Sta.cc @@ -3107,7 +3107,7 @@ Sta::required(Vertex *vertex, Slack Sta::slack(const Net *net, - const MinMax *min_max) + const MinMax *min_max) { ensureGraph(); Slack min_slack = MinMax::min()->initValue(); @@ -3129,7 +3129,7 @@ Slack Sta::slack(const Pin *pin, const RiseFallBoth *rf, const SceneSeq &scenes, - const MinMax *min_max) + const MinMax *min_max) { ensureGraph(); Vertex *vertex, *bidirect_drvr_vertex;