StaTcl.i cleanup
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
eec01fb9e3
commit
53a45efd0d
|
|
@ -17,10 +17,12 @@
|
||||||
%module dcalc
|
%module dcalc
|
||||||
|
|
||||||
%{
|
%{
|
||||||
#include "Sta.hh"
|
|
||||||
|
#include "DelayCalc.hh"
|
||||||
#include "ArcDelayCalc.hh"
|
#include "ArcDelayCalc.hh"
|
||||||
#include "dcalc/ArcDcalcWaveforms.hh"
|
#include "dcalc/ArcDcalcWaveforms.hh"
|
||||||
#include "dcalc/PrimaDelayCalc.hh"
|
#include "dcalc/PrimaDelayCalc.hh"
|
||||||
|
#include "Sta.hh"
|
||||||
|
|
||||||
%}
|
%}
|
||||||
|
|
||||||
|
|
|
||||||
24
sdc/Sdc.i
24
sdc/Sdc.i
|
|
@ -1402,6 +1402,30 @@ group_path_pins(const char *group_path_name)
|
||||||
return PinSet(sta->network());
|
return PinSet(sta->network());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
char
|
||||||
|
pin_case_logic_value(const Pin *pin)
|
||||||
|
{
|
||||||
|
Sta *sta = Sta::sta();
|
||||||
|
Sdc *sdc = sta->sdc();
|
||||||
|
LogicValue value = LogicValue::unknown;
|
||||||
|
bool exists;
|
||||||
|
sdc->caseLogicValue(pin, value, exists);
|
||||||
|
return logicValueString(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
char
|
||||||
|
pin_logic_value(const Pin *pin)
|
||||||
|
{
|
||||||
|
Sta *sta = Sta::sta();
|
||||||
|
Sdc *sdc = sta->sdc();
|
||||||
|
LogicValue value = LogicValue::unknown;
|
||||||
|
bool exists;
|
||||||
|
sdc->logicValue(pin, value, exists);
|
||||||
|
return logicValueString(value);
|
||||||
|
}
|
||||||
|
|
||||||
%} // inline
|
%} // inline
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,11 @@
|
||||||
%module search
|
%module search
|
||||||
|
|
||||||
%{
|
%{
|
||||||
|
|
||||||
#include "Sta.hh"
|
#include "Sta.hh"
|
||||||
|
#include "PathGroup.hh"
|
||||||
#include "Search.hh"
|
#include "Search.hh"
|
||||||
|
#include "search/Levelize.hh"
|
||||||
#include "search/ReportPath.hh"
|
#include "search/ReportPath.hh"
|
||||||
|
|
||||||
using namespace sta;
|
using namespace sta;
|
||||||
|
|
@ -83,6 +86,8 @@ private:
|
||||||
|
|
||||||
%inline %{
|
%inline %{
|
||||||
|
|
||||||
|
int group_count_max = PathGroup::group_count_max;
|
||||||
|
|
||||||
void
|
void
|
||||||
find_timing_cmd(bool full)
|
find_timing_cmd(bool full)
|
||||||
{
|
{
|
||||||
|
|
@ -288,6 +293,21 @@ endpoint_violation_count(const MinMax *min_max)
|
||||||
return Sta::sta()->endpointViolationCount(min_max);
|
return Sta::sta()->endpointViolationCount(min_max);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
report_loops()
|
||||||
|
{
|
||||||
|
Sta *sta = Sta::sta();
|
||||||
|
Network *network = cmdLinkedNetwork();
|
||||||
|
Graph *graph = cmdGraph();
|
||||||
|
Report *report = sta->report();
|
||||||
|
for (GraphLoop *loop : *sta->graphLoops()) {
|
||||||
|
loop->report(report, network, graph);
|
||||||
|
report->reportLineString("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
PathEndSeq
|
PathEndSeq
|
||||||
find_path_ends(ExceptionFrom *from,
|
find_path_ends(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
|
|
|
||||||
49
tcl/StaTcl.i
49
tcl/StaTcl.i
|
|
@ -33,22 +33,11 @@
|
||||||
#include "Stats.hh"
|
#include "Stats.hh"
|
||||||
#include "Report.hh"
|
#include "Report.hh"
|
||||||
#include "Error.hh"
|
#include "Error.hh"
|
||||||
#include "StringUtil.hh"
|
|
||||||
#include "PatternMatch.hh"
|
|
||||||
#include "MinMax.hh"
|
|
||||||
#include "Fuzzy.hh"
|
#include "Fuzzy.hh"
|
||||||
#include "Units.hh"
|
#include "Units.hh"
|
||||||
#include "Transition.hh"
|
#include "Transition.hh"
|
||||||
#include "Liberty.hh"
|
|
||||||
#include "Network.hh"
|
|
||||||
#include "Sdc.hh"
|
|
||||||
#include "DelayCalc.hh"
|
|
||||||
#include "DcalcAnalysisPt.hh"
|
|
||||||
#include "PathGroup.hh"
|
|
||||||
#include "Property.hh"
|
#include "Property.hh"
|
||||||
#include "Search.hh"
|
|
||||||
#include "Sta.hh"
|
#include "Sta.hh"
|
||||||
#include "search/Levelize.hh"
|
|
||||||
|
|
||||||
namespace sta {
|
namespace sta {
|
||||||
|
|
||||||
|
|
@ -135,7 +124,6 @@ private:
|
||||||
%inline %{
|
%inline %{
|
||||||
|
|
||||||
float float_inf = INF;
|
float float_inf = INF;
|
||||||
int group_count_max = PathGroup::group_count_max;
|
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
version()
|
version()
|
||||||
|
|
@ -1323,28 +1311,6 @@ pin_sim_logic_value(const Pin *pin)
|
||||||
return logicValueString(Sta::sta()->simLogicValue(pin));
|
return logicValueString(Sta::sta()->simLogicValue(pin));
|
||||||
}
|
}
|
||||||
|
|
||||||
char
|
|
||||||
pin_case_logic_value(const Pin *pin)
|
|
||||||
{
|
|
||||||
Sta *sta = Sta::sta();
|
|
||||||
Sdc *sdc = sta->sdc();
|
|
||||||
LogicValue value = LogicValue::unknown;
|
|
||||||
bool exists;
|
|
||||||
sdc->caseLogicValue(pin, value, exists);
|
|
||||||
return logicValueString(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
char
|
|
||||||
pin_logic_value(const Pin *pin)
|
|
||||||
{
|
|
||||||
Sta *sta = Sta::sta();
|
|
||||||
Sdc *sdc = sta->sdc();
|
|
||||||
LogicValue value = LogicValue::unknown;
|
|
||||||
bool exists;
|
|
||||||
sdc->logicValue(pin, value, exists);
|
|
||||||
return logicValueString(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
InstanceSeq
|
InstanceSeq
|
||||||
slow_drivers(int count)
|
slow_drivers(int count)
|
||||||
{
|
{
|
||||||
|
|
@ -1431,21 +1397,6 @@ find_fanout_insts(PinSeq *from,
|
||||||
return fanout;
|
return fanout;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void
|
|
||||||
report_loops()
|
|
||||||
{
|
|
||||||
Sta *sta = Sta::sta();
|
|
||||||
Network *network = cmdLinkedNetwork();
|
|
||||||
Graph *graph = cmdGraph();
|
|
||||||
Report *report = sta->report();
|
|
||||||
for (GraphLoop *loop : *sta->graphLoops()) {
|
|
||||||
loop->report(report, network, graph);
|
|
||||||
report->reportLineString("");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
%} // inline
|
%} // inline
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue