From 80db28bb8f91e37c4eccbe72e882fa383a0cfeb6 Mon Sep 17 00:00:00 2001 From: James Cherry Date: Sun, 30 Jun 2024 16:13:17 -0700 Subject: [PATCH] prima Signed-off-by: James Cherry --- dcalc/DelayCalc.i | 12 ++++++++++++ dcalc/PrimaDelayCalc.hh | 1 + 2 files changed, 13 insertions(+) diff --git a/dcalc/DelayCalc.i b/dcalc/DelayCalc.i index c2dfe68b..fe51998b 100644 --- a/dcalc/DelayCalc.i +++ b/dcalc/DelayCalc.i @@ -62,4 +62,16 @@ report_delay_calc_cmd(Edge *edge, return Sta::sta()->reportDelayCalc(edge, arc, corner, min_max, digits); } +void +set_prima_reduce_order(size_t order) +{ + cmdLinkedNetwork(); + Sta *sta = Sta::sta(); + PrimaDelayCalc *dcalc = dynamic_cast(sta->arcDelayCalc()); + if (dcalc) { + dcalc->setPrimaReduceOrder(order); + sta->delaysInvalid(); + } +} + %} // inline diff --git a/dcalc/PrimaDelayCalc.hh b/dcalc/PrimaDelayCalc.hh index a17a1f27..d89d2e6a 100644 --- a/dcalc/PrimaDelayCalc.hh +++ b/dcalc/PrimaDelayCalc.hh @@ -67,6 +67,7 @@ public: Parasitic *findParasitic(const Pin *drvr_pin, const RiseFall *rf, const DcalcAnalysisPt *dcalc_ap) override; + bool reduceSupported() const override { return false; } Parasitic *reduceParasitic(const Parasitic *parasitic_network, const Pin *drvr_pin, const RiseFall *rf,