From 783db41dfdd1063347c995a7bf4b88758a3a8243 Mon Sep 17 00:00:00 2001 From: James Cherry Date: Mon, 28 Feb 2022 16:51:09 -0700 Subject: [PATCH] report_clock_skew ignore disabled feedback edges Signed-off-by: James Cherry --- search/ClkSkew.cc | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/search/ClkSkew.cc b/search/ClkSkew.cc index 9ab29f39..fc0e89bd 100644 --- a/search/ClkSkew.cc +++ b/search/ClkSkew.cc @@ -315,7 +315,7 @@ ClkSkews::findClkSkew(Vertex *src_vertex, } } -class FanOutSrchPred : public SearchPred0 +class FanOutSrchPred : public SearchPred1 { public: FanOutSrchPred(const StaState *sta); @@ -323,7 +323,7 @@ public: }; FanOutSrchPred::FanOutSrchPred(const StaState *sta) : - SearchPred0(sta) + SearchPred1(sta) { } @@ -331,10 +331,11 @@ bool FanOutSrchPred::searchThru(Edge *edge) { TimingRole *role = edge->role(); - return role == TimingRole::wire() - || role == TimingRole::combinational() - || role == TimingRole::tristateEnable() - || role == TimingRole::tristateDisable(); + return SearchPred1::searchThru(edge) + && (role == TimingRole::wire() + || role == TimingRole::combinational() + || role == TimingRole::tristateEnable() + || role == TimingRole::tristateDisable()); } VertexSet