override
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
f1b33edd98
commit
129d007f76
|
|
@ -119,7 +119,7 @@ class ArnoldiDelayCalc : public LumpedCapDelayCalc
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ArnoldiDelayCalc(StaState *sta);
|
ArnoldiDelayCalc(StaState *sta);
|
||||||
virtual ~ArnoldiDelayCalc();
|
~ArnoldiDelayCalc() override;
|
||||||
ArcDelayCalc *copy() override;
|
ArcDelayCalc *copy() override;
|
||||||
const char *name() const override { return "arnoldi"; }
|
const char *name() const override { return "arnoldi"; }
|
||||||
Parasitic *findParasitic(const Pin *drvr_pin,
|
Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,6 @@ class DmpError : public Exception
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
DmpError(const char *what);
|
DmpError(const char *what);
|
||||||
virtual ~DmpError() {}
|
|
||||||
virtual const char *what() const noexcept { return what_; }
|
virtual const char *what() const noexcept { return what_; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
||||||
|
|
@ -107,7 +107,7 @@ public:
|
||||||
int &bidirect_count,
|
int &bidirect_count,
|
||||||
int &load_count,
|
int &load_count,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
virtual void operator()(const Pin *pin);
|
void operator()(const Pin *pin) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
Pin *drvr_pin_;
|
Pin *drvr_pin_;
|
||||||
|
|
@ -345,8 +345,8 @@ public:
|
||||||
MakeEdgesThruHierPin(Graph *graph);
|
MakeEdgesThruHierPin(Graph *graph);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual void visit(const Pin *drvr,
|
void visit(const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load) override;
|
||||||
|
|
||||||
Graph *graph_;
|
Graph *graph_;
|
||||||
};
|
};
|
||||||
|
|
@ -1483,8 +1483,8 @@ class FindEdgesThruHierPinVisitor : public HierPinThruVisitor
|
||||||
public:
|
public:
|
||||||
FindEdgesThruHierPinVisitor(EdgeSet &edges,
|
FindEdgesThruHierPinVisitor(EdgeSet &edges,
|
||||||
Graph *graph);
|
Graph *graph);
|
||||||
virtual void visit(const Pin *drvr,
|
void visit(const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
EdgeSet &edges_;
|
EdgeSet &edges_;
|
||||||
|
|
|
||||||
|
|
@ -164,17 +164,17 @@ public:
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
int priority,
|
int priority,
|
||||||
const char *comment);
|
const char *comment);
|
||||||
virtual ExceptionPath *clone(ExceptionFrom *from,
|
ExceptionPath *clone(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts) override;
|
||||||
virtual bool isFalse() const { return true; }
|
bool isFalse() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::false_path; }
|
ExceptionPathType type() const override { return ExceptionPathType::false_path; }
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
virtual bool overrides(ExceptionPath *exception) const;
|
bool overrides(ExceptionPath *exception) const override;
|
||||||
virtual int typePriority() const;
|
int typePriority() const override;
|
||||||
virtual bool tighterThan(ExceptionPath *exception) const;
|
bool tighterThan(ExceptionPath *exception) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Loop paths are false paths used to disable paths around
|
// Loop paths are false paths used to disable paths around
|
||||||
|
|
@ -184,10 +184,10 @@ class LoopPath : public FalsePath
|
||||||
public:
|
public:
|
||||||
LoopPath(ExceptionThruSeq *thrus,
|
LoopPath(ExceptionThruSeq *thrus,
|
||||||
bool own_pts);
|
bool own_pts);
|
||||||
virtual bool isLoop() const { return true; }
|
bool isLoop() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::loop; }
|
ExceptionPathType type() const override { return ExceptionPathType::loop; }
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
// set_max_delay/set_min_delay
|
// set_max_delay/set_min_delay
|
||||||
|
|
@ -203,21 +203,21 @@ public:
|
||||||
float delay,
|
float delay,
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const char *comment);
|
const char *comment);
|
||||||
virtual ExceptionPath *clone(ExceptionFrom *from,
|
ExceptionPath *clone(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts) override;
|
||||||
virtual bool isPathDelay() const { return true; }
|
bool isPathDelay() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::path_delay; }
|
ExceptionPathType type() const override { return ExceptionPathType::path_delay; }
|
||||||
virtual const char *asString(const Network *network) const;
|
const char *asString(const Network *network) const override;
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
virtual bool overrides(ExceptionPath *exception) const;
|
bool overrides(ExceptionPath *exception) const override;
|
||||||
virtual float delay() const { return delay_; }
|
float delay() const override { return delay_; }
|
||||||
virtual int typePriority() const;
|
int typePriority() const override;
|
||||||
virtual bool tighterThan(ExceptionPath *exception) const;
|
bool tighterThan(ExceptionPath *exception) const override;
|
||||||
virtual bool ignoreClkLatency() const { return ignore_clk_latency_; }
|
bool ignoreClkLatency() const override { return ignore_clk_latency_; }
|
||||||
virtual bool breakPath() const { return break_path_; }
|
bool breakPath() const override { return break_path_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool ignore_clk_latency_;
|
bool ignore_clk_latency_;
|
||||||
|
|
@ -237,24 +237,24 @@ public:
|
||||||
int path_multiplier,
|
int path_multiplier,
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const char *comment);
|
const char *comment);
|
||||||
virtual ExceptionPath *clone(ExceptionFrom *from,
|
ExceptionPath *clone(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts) override;
|
||||||
virtual bool isMultiCycle() const { return true; }
|
bool isMultiCycle() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::multi_cycle; }
|
ExceptionPathType type() const override { return ExceptionPathType::multi_cycle; }
|
||||||
virtual bool matches(const MinMax *min_max,
|
bool matches(const MinMax *min_max,
|
||||||
bool exactly) const;
|
bool exactly) const override;
|
||||||
virtual const char *asString(const Network *network) const;
|
const char *asString(const Network *network) const override;
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
virtual bool overrides(ExceptionPath *exception) const;
|
bool overrides(ExceptionPath *exception) const override;
|
||||||
virtual bool useEndClk() const { return use_end_clk_; }
|
bool useEndClk() const override { return use_end_clk_; }
|
||||||
virtual int pathMultiplier(const MinMax *min_max) const;
|
int pathMultiplier(const MinMax *min_max) const; // overload, not override
|
||||||
virtual int pathMultiplier() const { return path_multiplier_; }
|
int pathMultiplier() const override { return path_multiplier_; }
|
||||||
virtual int priority(const MinMax *min_max) const;
|
int priority(const MinMax *min_max) const override;
|
||||||
virtual int typePriority() const;
|
int typePriority() const override;
|
||||||
virtual bool tighterThan(ExceptionPath *exception) const;
|
bool tighterThan(ExceptionPath *exception) const override;
|
||||||
|
|
||||||
using ExceptionPath::priority;
|
using ExceptionPath::priority;
|
||||||
|
|
||||||
|
|
@ -271,22 +271,22 @@ public:
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts);
|
||||||
virtual ExceptionPath *clone(ExceptionFrom *from,
|
ExceptionPath *clone(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts) override;
|
||||||
virtual bool isFilter() const { return true; }
|
bool isFilter() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::filter; }
|
ExceptionPathType type() const override { return ExceptionPathType::filter; }
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
virtual bool overrides(ExceptionPath *exception) const;
|
bool overrides(ExceptionPath *exception) const override;
|
||||||
virtual bool resetMatch(ExceptionFrom *from,
|
bool resetMatch(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
const MinMaxAll *min_max,
|
const MinMaxAll *min_max,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual int typePriority() const;
|
int typePriority() const override;
|
||||||
virtual bool tighterThan(ExceptionPath *exception) const;
|
bool tighterThan(ExceptionPath *exception) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
class GroupPath : public ExceptionPath
|
class GroupPath : public ExceptionPath
|
||||||
|
|
@ -299,20 +299,20 @@ public:
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const char *comment);
|
const char *comment);
|
||||||
virtual ~GroupPath();
|
~GroupPath() override;
|
||||||
virtual ExceptionPath *clone(ExceptionFrom *from,
|
ExceptionPath *clone(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to,
|
ExceptionTo *to,
|
||||||
bool own_pts);
|
bool own_pts) override;
|
||||||
virtual bool isGroupPath() const { return true; }
|
bool isGroupPath() const override { return true; }
|
||||||
virtual ExceptionPathType type() const { return ExceptionPathType::group_path; }
|
ExceptionPathType type() const override { return ExceptionPathType::group_path; }
|
||||||
virtual const char *typeString() const;
|
const char *typeString() const override;
|
||||||
virtual bool mergeable(ExceptionPath *exception) const;
|
bool mergeable(ExceptionPath *exception) const override;
|
||||||
virtual bool overrides(ExceptionPath *exception) const;
|
bool overrides(ExceptionPath *exception) const override;
|
||||||
virtual int typePriority() const;
|
int typePriority() const override;
|
||||||
virtual bool tighterThan(ExceptionPath *exception) const;
|
bool tighterThan(ExceptionPath *exception) const override;
|
||||||
virtual const char *name() const { return name_; }
|
const char *name() const override { return name_; }
|
||||||
virtual bool isDefault() const { return is_default_; }
|
bool isDefault() const override { return is_default_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
const char *name_;
|
const char *name_;
|
||||||
|
|
@ -385,39 +385,39 @@ public:
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
~ExceptionFromTo();
|
~ExceptionFromTo();
|
||||||
virtual PinSet *pins() { return pins_; }
|
PinSet *pins() override { return pins_; }
|
||||||
bool hasPins() const;
|
bool hasPins() const;
|
||||||
ClockSet *clks() { return clks_; }
|
ClockSet *clks() override { return clks_; }
|
||||||
bool hasClocks() const;
|
bool hasClocks() const;
|
||||||
InstanceSet *instances() { return insts_; }
|
InstanceSet *instances() override { return insts_; }
|
||||||
bool hasInstances() const;
|
bool hasInstances() const;
|
||||||
virtual NetSet *nets() { return nullptr; }
|
NetSet *nets() override { return nullptr; }
|
||||||
virtual EdgePinsSet *edges() { return nullptr; }
|
EdgePinsSet *edges() override { return nullptr; }
|
||||||
bool hasObjects() const;
|
bool hasObjects() const;
|
||||||
void deleteObjects(ExceptionFromTo *pt,
|
void deleteObjects(ExceptionFromTo *pt,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
virtual PinSet allPins(const Network *network);
|
PinSet allPins(const Network *network) override;
|
||||||
bool equal(ExceptionFromTo *from_to) const;
|
bool equal(ExceptionFromTo *from_to) const;
|
||||||
virtual int compare(ExceptionPt *pt,
|
int compare(ExceptionPt *pt,
|
||||||
const Network *network) const;
|
const Network *network) const override;
|
||||||
virtual void mergeInto(ExceptionPt *pt,
|
void mergeInto(ExceptionPt *pt,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual const char *asString(const Network *network) const;
|
const char *asString(const Network *network) const override;
|
||||||
virtual size_t objectCount() const;
|
size_t objectCount() const override;
|
||||||
void deleteClock(Clock *clk);
|
void deleteClock(Clock *clk);
|
||||||
virtual void addPin(const Pin *pin,
|
void addPin(const Pin *pin,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addClock(Clock *clk);
|
void addClock(Clock *clk) override;
|
||||||
virtual void addInstance(const Instance *inst,
|
void addInstance(const Instance *inst,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addNet(const Net *,
|
void addNet(const Net *,
|
||||||
const Network *) {}
|
const Network *) override {}
|
||||||
virtual void addEdge(const EdgePins &,
|
void addEdge(const EdgePins &,
|
||||||
const Network *) {}
|
const Network *) override {}
|
||||||
virtual void connectPinAfter(PinSet *,
|
void connectPinAfter(PinSet *,
|
||||||
Network *) {}
|
Network *) override {}
|
||||||
virtual void deletePinBefore(const Pin *,
|
void deletePinBefore(const Pin *,
|
||||||
Network *);
|
Network *) override;
|
||||||
void deleteInstance(const Instance *inst,
|
void deleteInstance(const Instance *inst,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
|
|
||||||
|
|
@ -443,14 +443,14 @@ public:
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
ExceptionFrom *clone(const Network *network);
|
ExceptionFrom *clone(const Network *network);
|
||||||
virtual bool isFrom() const { return true; }
|
bool isFrom() const override { return true; }
|
||||||
bool intersectsPts(ExceptionFrom *from,
|
bool intersectsPts(ExceptionFrom *from,
|
||||||
const Network *network) const;
|
const Network *network) const;
|
||||||
virtual int typePriority() const { return 0; }
|
int typePriority() const override { return 0; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual const char *cmdKeyword() const;
|
const char *cmdKeyword() const override;
|
||||||
virtual void findHash(const Network *network);
|
void findHash(const Network *network) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
class ExceptionTo : public ExceptionFromTo
|
class ExceptionTo : public ExceptionFromTo
|
||||||
|
|
@ -466,12 +466,12 @@ public:
|
||||||
bool own_pts,
|
bool own_pts,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
ExceptionTo *clone(const Network *network);
|
ExceptionTo *clone(const Network *network);
|
||||||
virtual bool isTo() const { return true; }
|
bool isTo() const override { return true; }
|
||||||
const char *asString(const Network *network) const;
|
const char *asString(const Network *network) const override;
|
||||||
const RiseFallBoth *endTransition() { return end_rf_; }
|
const RiseFallBoth *endTransition() { return end_rf_; }
|
||||||
bool intersectsPts(ExceptionTo *to,
|
bool intersectsPts(ExceptionTo *to,
|
||||||
const Network *network) const;
|
const Network *network) const;
|
||||||
virtual int typePriority() const { return 1; }
|
int typePriority() const override { return 1; }
|
||||||
bool matches(const Pin *pin,
|
bool matches(const Pin *pin,
|
||||||
const ClockEdge *clk_edge,
|
const ClockEdge *clk_edge,
|
||||||
const RiseFall *end_rf,
|
const RiseFall *end_rf,
|
||||||
|
|
@ -486,8 +486,8 @@ public:
|
||||||
const ClockEdge *clk_edge,
|
const ClockEdge *clk_edge,
|
||||||
const RiseFall *end_rf,
|
const RiseFall *end_rf,
|
||||||
const Network *network) const;
|
const Network *network) const;
|
||||||
virtual int compare(ExceptionPt *pt,
|
int compare(ExceptionPt *pt,
|
||||||
const Network *network) const;
|
const Network *network) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool matches(const Pin *pin,
|
bool matches(const Pin *pin,
|
||||||
|
|
@ -495,7 +495,7 @@ protected:
|
||||||
const RiseFall *end_rf,
|
const RiseFall *end_rf,
|
||||||
bool inst_matches_reg_clk_pin,
|
bool inst_matches_reg_clk_pin,
|
||||||
const Network *network) const;
|
const Network *network) const;
|
||||||
virtual const char *cmdKeyword() const;
|
const char *cmdKeyword() const override;
|
||||||
|
|
||||||
// -rise|-fall endpoint transition.
|
// -rise|-fall endpoint transition.
|
||||||
const RiseFallBoth *end_rf_;
|
const RiseFallBoth *end_rf_;
|
||||||
|
|
@ -512,48 +512,48 @@ public:
|
||||||
const Network *network);
|
const Network *network);
|
||||||
~ExceptionThru();
|
~ExceptionThru();
|
||||||
ExceptionThru *clone(const Network *network);
|
ExceptionThru *clone(const Network *network);
|
||||||
virtual const char *asString(const Network *network) const;
|
const char *asString(const Network *network) const override;
|
||||||
virtual bool isThru() const { return true; }
|
bool isThru() const override { return true; }
|
||||||
PinSet *pins() { return pins_; }
|
PinSet *pins() override { return pins_; }
|
||||||
EdgePinsSet *edges() { return edges_; }
|
EdgePinsSet *edges() override { return edges_; }
|
||||||
NetSet *nets() { return nets_; }
|
NetSet *nets() override { return nets_; }
|
||||||
InstanceSet *instances() { return insts_; }
|
InstanceSet *instances() override { return insts_; }
|
||||||
virtual ClockSet *clks() { return nullptr; }
|
ClockSet *clks() override { return nullptr; }
|
||||||
bool hasObjects() const;
|
bool hasObjects() const;
|
||||||
void deleteObjects(ExceptionThru *pt,
|
void deleteObjects(ExceptionThru *pt,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
virtual PinSet allPins(const Network *network);
|
PinSet allPins(const Network *network) override;
|
||||||
bool matches(const Pin *from_pin,
|
bool matches(const Pin *from_pin,
|
||||||
const Pin *to_pin,
|
const Pin *to_pin,
|
||||||
const RiseFall *to_rf,
|
const RiseFall *to_rf,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
bool equal(ExceptionThru *thru) const;
|
bool equal(ExceptionThru *thru) const;
|
||||||
virtual int compare(ExceptionPt *pt,
|
int compare(ExceptionPt *pt,
|
||||||
const Network *network) const;
|
const Network *network) const override;
|
||||||
virtual void mergeInto(ExceptionPt *pt,
|
void mergeInto(ExceptionPt *pt,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
bool intersectsPts(ExceptionThru *thru,
|
bool intersectsPts(ExceptionThru *thru,
|
||||||
const Network *network) const;
|
const Network *network) const;
|
||||||
virtual int typePriority() const { return 2; }
|
int typePriority() const override { return 2; }
|
||||||
virtual size_t objectCount() const;
|
size_t objectCount() const override;
|
||||||
virtual void connectPinAfter(PinSet *drvrs,
|
void connectPinAfter(PinSet *drvrs,
|
||||||
Network *network);
|
Network *network) override;
|
||||||
virtual void deletePinBefore(const Pin *pin,
|
void deletePinBefore(const Pin *pin,
|
||||||
Network *network);
|
Network *network) override;
|
||||||
void deleteInstance(const Instance *inst,
|
void deleteInstance(const Instance *inst,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void findHash(const Network *network);
|
void findHash(const Network *network);
|
||||||
virtual void addPin(const Pin *pin,
|
void addPin(const Pin *pin,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addEdge(const EdgePins &edge,
|
void addEdge(const EdgePins &edge,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addNet(const Net *net,
|
void addNet(const Net *net,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addInstance(const Instance *inst,
|
void addInstance(const Instance *inst,
|
||||||
const Network *network);
|
const Network *network) override;
|
||||||
virtual void addClock(Clock *) {}
|
void addClock(Clock *) override {}
|
||||||
void deletePin(const Pin *pin,
|
void deletePin(const Pin *pin,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
void deleteEdge(const EdgePins &edge);
|
void deleteEdge(const EdgePins &edge);
|
||||||
|
|
|
||||||
|
|
@ -1365,7 +1365,7 @@ class ConnectedPinIterator1 : public ConnectedPinIterator
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ConnectedPinIterator1(PinSet *pins);
|
ConnectedPinIterator1(PinSet *pins);
|
||||||
virtual ~ConnectedPinIterator1();
|
~ConnectedPinIterator1() override;
|
||||||
bool hasNext() override;
|
bool hasNext() override;
|
||||||
const Pin *next() override;
|
const Pin *next() override;
|
||||||
|
|
||||||
|
|
@ -1401,7 +1401,7 @@ class FindConnectedPins : public PinVisitor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
FindConnectedPins(PinSet *pins);
|
FindConnectedPins(PinSet *pins);
|
||||||
virtual void operator()(const Pin *pin);
|
void operator()(const Pin *pin) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PinSet *pins_;
|
PinSet *pins_;
|
||||||
|
|
@ -1572,7 +1572,7 @@ class FindDrvrPins : public PinVisitor
|
||||||
public:
|
public:
|
||||||
FindDrvrPins(PinSet *pins,
|
FindDrvrPins(PinSet *pins,
|
||||||
const Network *network);
|
const Network *network);
|
||||||
virtual void operator()(const Pin *pin);
|
void operator()(const Pin *pin) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PinSet *pins_;
|
PinSet *pins_;
|
||||||
|
|
|
||||||
18
sdc/Sdc.cc
18
sdc/Sdc.cc
|
|
@ -1289,7 +1289,7 @@ public:
|
||||||
const Pin *load);
|
const Pin *load);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void visit(HpinDrvrLoad *drvr_load);
|
void visit(HpinDrvrLoad *drvr_load) override;
|
||||||
void makeClkHpinDisables(const Pin *clk_src,
|
void makeClkHpinDisables(const Pin *clk_src,
|
||||||
const Pin *drvr,
|
const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load);
|
||||||
|
|
@ -3173,7 +3173,7 @@ public:
|
||||||
float &fanout,
|
float &fanout,
|
||||||
bool &has_net_load,
|
bool &has_net_load,
|
||||||
const Sdc *sdc);
|
const Sdc *sdc);
|
||||||
virtual void operator()(const Pin *pin);
|
void operator()(const Pin *pin) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
const RiseFall *rf_;
|
const RiseFall *rf_;
|
||||||
|
|
@ -3560,8 +3560,8 @@ public:
|
||||||
Graph *graph);
|
Graph *graph);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void visit(const Pin *drvr,
|
void visit(const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load) override;
|
||||||
|
|
||||||
PinPairSet *pairs_;
|
PinPairSet *pairs_;
|
||||||
Graph *graph_;
|
Graph *graph_;
|
||||||
|
|
@ -3601,8 +3601,8 @@ public:
|
||||||
Graph *graph);
|
Graph *graph);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void visit(const Pin *drvr,
|
void visit(const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load) override;
|
||||||
|
|
||||||
PinPairSet *pairs_;
|
PinPairSet *pairs_;
|
||||||
Graph *graph_;
|
Graph *graph_;
|
||||||
|
|
@ -5151,9 +5151,9 @@ public:
|
||||||
ExpandException(ExceptionPath *exception,
|
ExpandException(ExceptionPath *exception,
|
||||||
ExceptionPathSet &expansions,
|
ExceptionPathSet &expansions,
|
||||||
Network *network);
|
Network *network);
|
||||||
virtual void visit(ExceptionFrom *from,
|
void visit(ExceptionFrom *from,
|
||||||
ExceptionThruSeq *thrus,
|
ExceptionThruSeq *thrus,
|
||||||
ExceptionTo *to);
|
ExceptionTo *to) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
ExceptionPathSet &expansions_;
|
ExceptionPathSet &expansions_;
|
||||||
|
|
|
||||||
|
|
@ -322,9 +322,9 @@ public:
|
||||||
const Mode *mode);
|
const Mode *mode);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual void visitReg(Instance *inst);
|
void visitReg(Instance *inst) override;
|
||||||
virtual void visitSequential(Instance *inst,
|
void visitSequential(Instance *inst,
|
||||||
const Sequential *seq);
|
const Sequential *seq) override;
|
||||||
|
|
||||||
InstanceSet regs_;
|
InstanceSet regs_;
|
||||||
};
|
};
|
||||||
|
|
@ -383,9 +383,9 @@ public:
|
||||||
const Mode *mode);
|
const Mode *mode);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void visitReg(Instance *inst);
|
void visitReg(Instance *inst) override;
|
||||||
virtual void visitSequential(Instance *inst,
|
void visitSequential(Instance *inst,
|
||||||
const Sequential *seq);
|
const Sequential *seq) override;
|
||||||
virtual bool matchPin(Pin *pin);
|
virtual bool matchPin(Pin *pin);
|
||||||
void visitExpr(FuncExpr *expr,
|
void visitExpr(FuncExpr *expr,
|
||||||
Instance *inst,
|
Instance *inst,
|
||||||
|
|
@ -461,9 +461,9 @@ public:
|
||||||
FindRegDataPins(const StaState *sta);
|
FindRegDataPins(const StaState *sta);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual bool matchPin(Pin *pin);
|
bool matchPin(Pin *pin) override;
|
||||||
virtual FuncExpr *seqExpr1(const Sequential *seq);
|
FuncExpr *seqExpr1(const Sequential *seq) override;
|
||||||
virtual FuncExpr *seqExpr2(const Sequential *seq);
|
FuncExpr *seqExpr2(const Sequential *seq) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
FindRegDataPins::FindRegDataPins(const StaState *sta) :
|
FindRegDataPins::FindRegDataPins(const StaState *sta) :
|
||||||
|
|
@ -528,9 +528,9 @@ public:
|
||||||
FindRegClkPins(const StaState *sta);
|
FindRegClkPins(const StaState *sta);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual bool matchPin(Pin *pin);
|
bool matchPin(Pin *pin) override;
|
||||||
virtual FuncExpr *seqExpr1(const Sequential *seq);
|
FuncExpr *seqExpr1(const Sequential *seq) override;
|
||||||
virtual FuncExpr *seqExpr2(const Sequential *seq);
|
FuncExpr *seqExpr2(const Sequential *seq) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
FindRegClkPins::FindRegClkPins(const StaState *sta) :
|
FindRegClkPins::FindRegClkPins(const StaState *sta) :
|
||||||
|
|
@ -586,9 +586,9 @@ public:
|
||||||
FindRegAsyncPins(const StaState *sta);
|
FindRegAsyncPins(const StaState *sta);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual bool matchPin(Pin *pin);
|
bool matchPin(Pin *pin) override;
|
||||||
virtual FuncExpr *seqExpr1(const Sequential *seq) { return seq->clear(); }
|
FuncExpr *seqExpr1(const Sequential *seq) override { return seq->clear(); }
|
||||||
virtual FuncExpr *seqExpr2(const Sequential *seq) { return seq->preset(); }
|
FuncExpr *seqExpr2(const Sequential *seq) override { return seq->preset(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
FindRegAsyncPins::FindRegAsyncPins(const StaState *sta) :
|
FindRegAsyncPins::FindRegAsyncPins(const StaState *sta) :
|
||||||
|
|
@ -629,14 +629,14 @@ public:
|
||||||
FindRegOutputPins(const StaState *sta);
|
FindRegOutputPins(const StaState *sta);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual bool matchPin(Pin *pin);
|
bool matchPin(Pin *pin) override;
|
||||||
virtual void visitSequential(Instance *inst,
|
void visitSequential(Instance *inst,
|
||||||
const Sequential *seq);
|
const Sequential *seq) override;
|
||||||
void visitOutput(LibertyPort *port,
|
void visitOutput(LibertyPort *port,
|
||||||
Instance *inst);
|
Instance *inst);
|
||||||
// Unused.
|
// Unused.
|
||||||
virtual FuncExpr *seqExpr1(const Sequential *seq);
|
FuncExpr *seqExpr1(const Sequential *seq) override;
|
||||||
virtual FuncExpr *seqExpr2(const Sequential *seq);
|
FuncExpr *seqExpr2(const Sequential *seq) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
FindRegOutputPins::FindRegOutputPins(const StaState *sta) :
|
FindRegOutputPins::FindRegOutputPins(const StaState *sta) :
|
||||||
|
|
|
||||||
|
|
@ -707,8 +707,8 @@ public:
|
||||||
BfsFwdIterator *insert_iter,
|
BfsFwdIterator *insert_iter,
|
||||||
GenclkInfo *genclk_info,
|
GenclkInfo *genclk_info,
|
||||||
const Mode *mode);
|
const Mode *mode);
|
||||||
virtual VertexVisitor *copy() const;
|
VertexVisitor *copy() const override;
|
||||||
virtual void visit(Vertex *vertex);
|
void visit(Vertex *vertex) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
GenclkSrcArrivalVisitor(Clock *gclk,
|
GenclkSrcArrivalVisitor(Clock *gclk,
|
||||||
|
|
|
||||||
|
|
@ -236,9 +236,9 @@ class MakeEndTimingArcs : public PathEndVisitor
|
||||||
public:
|
public:
|
||||||
MakeEndTimingArcs(Sta *sta);
|
MakeEndTimingArcs(Sta *sta);
|
||||||
MakeEndTimingArcs(const MakeEndTimingArcs&) = default;
|
MakeEndTimingArcs(const MakeEndTimingArcs&) = default;
|
||||||
virtual ~MakeEndTimingArcs() {}
|
~MakeEndTimingArcs() override {}
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
void setInputRf(const RiseFall *input_rf);
|
void setInputRf(const RiseFall *input_rf);
|
||||||
const ClockEdgeDelays &margins() const { return margins_; }
|
const ClockEdgeDelays &margins() const { return margins_; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -246,11 +246,11 @@ public:
|
||||||
bool unique_pins,
|
bool unique_pins,
|
||||||
bool unique_edges,
|
bool unique_edges,
|
||||||
PathEnum *path_enum);
|
PathEnum *path_enum);
|
||||||
virtual VertexVisitor *copy() const override;
|
VertexVisitor *copy() const override;
|
||||||
void visitFaninPathsThru(Path *before_div,
|
void visitFaninPathsThru(Path *before_div,
|
||||||
Vertex *prev_vertex,
|
Vertex *prev_vertex,
|
||||||
TimingArc *prev_arc);
|
TimingArc *prev_arc);
|
||||||
virtual bool visitFromToPath(const Pin *from_pin,
|
bool visitFromToPath(const Pin *from_pin,
|
||||||
Vertex *from_vertex,
|
Vertex *from_vertex,
|
||||||
const RiseFall *from_rf,
|
const RiseFall *from_rf,
|
||||||
Tag *from_tag,
|
Tag *from_tag,
|
||||||
|
|
@ -277,7 +277,7 @@ private:
|
||||||
Edge *edge,
|
Edge *edge,
|
||||||
const Pin *to_pin,
|
const Pin *to_pin,
|
||||||
Vertex *to_vertex) override;
|
Vertex *to_vertex) override;
|
||||||
virtual void visit(Vertex *) override {} // Not used.
|
void visit(Vertex *) override {} // Not used.
|
||||||
void insertUniqueEdgeDiv(Diversion *div);
|
void insertUniqueEdgeDiv(Diversion *div);
|
||||||
void reportDiversion(const Edge *edge,
|
void reportDiversion(const Edge *edge,
|
||||||
const TimingArc *div_arc,
|
const TimingArc *div_arc,
|
||||||
|
|
|
||||||
|
|
@ -601,9 +601,9 @@ class MakePathEnds1 : public PathEndVisitor
|
||||||
public:
|
public:
|
||||||
MakePathEnds1(PathGroups *path_groups);
|
MakePathEnds1(PathGroups *path_groups);
|
||||||
MakePathEnds1(const MakePathEnds1&) = default;
|
MakePathEnds1(const MakePathEnds1&) = default;
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
virtual void vertexEnd(Vertex *vertex);
|
void vertexEnd(Vertex *vertex) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void visitPathEnd(PathEnd *path_end,
|
void visitPathEnd(PathEnd *path_end,
|
||||||
|
|
@ -676,10 +676,10 @@ public:
|
||||||
MakePathEndsAll(int endpoint_path_count,
|
MakePathEndsAll(int endpoint_path_count,
|
||||||
PathGroups *path_groups);
|
PathGroups *path_groups);
|
||||||
MakePathEndsAll(const MakePathEndsAll&) = default;
|
MakePathEndsAll(const MakePathEndsAll&) = default;
|
||||||
virtual ~MakePathEndsAll();
|
~MakePathEndsAll() override;
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
virtual void vertexEnd(Vertex *vertex);
|
void vertexEnd(Vertex *vertex) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void visitPathEnd(PathEnd *path_end,
|
void visitPathEnd(PathEnd *path_end,
|
||||||
|
|
@ -906,8 +906,8 @@ public:
|
||||||
const StaState *sta);
|
const StaState *sta);
|
||||||
MakeEndpointPathEnds(const MakeEndpointPathEnds &make_path_ends);
|
MakeEndpointPathEnds(const MakeEndpointPathEnds &make_path_ends);
|
||||||
~MakeEndpointPathEnds();
|
~MakeEndpointPathEnds();
|
||||||
virtual VertexVisitor *copy() const;
|
VertexVisitor *copy() const override;
|
||||||
virtual void visit(Vertex *vertex);
|
void visit(Vertex *vertex) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
VisitPathEnds visit_path_ends_;
|
VisitPathEnds visit_path_ends_;
|
||||||
|
|
|
||||||
|
|
@ -733,8 +733,8 @@ public:
|
||||||
Search *search);
|
Search *search);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void visit(const Pin *drvr,
|
void visit(const Pin *drvr,
|
||||||
const Pin *load);
|
const Pin *load) override;
|
||||||
|
|
||||||
Graph *graph_;
|
Graph *graph_;
|
||||||
Search *search_;
|
Search *search_;
|
||||||
|
|
@ -3444,9 +3444,9 @@ public:
|
||||||
FindEndRequiredVisitor(RequiredCmp *required_cmp,
|
FindEndRequiredVisitor(RequiredCmp *required_cmp,
|
||||||
const StaState *sta);
|
const StaState *sta);
|
||||||
FindEndRequiredVisitor(const StaState *sta);
|
FindEndRequiredVisitor(const StaState *sta);
|
||||||
virtual ~FindEndRequiredVisitor();
|
~FindEndRequiredVisitor() override;
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
const StaState *sta_;
|
const StaState *sta_;
|
||||||
|
|
@ -4092,8 +4092,8 @@ public:
|
||||||
FindEndSlackVisitor(SlackSeq &slacks,
|
FindEndSlackVisitor(SlackSeq &slacks,
|
||||||
const StaState *sta);
|
const StaState *sta);
|
||||||
FindEndSlackVisitor(const FindEndSlackVisitor &) = default;
|
FindEndSlackVisitor(const FindEndSlackVisitor &) = default;
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
SlackSeq &slacks_;
|
SlackSeq &slacks_;
|
||||||
|
|
|
||||||
|
|
@ -114,9 +114,9 @@ class StaDelayCalcObserver : public DelayCalcObserver
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
StaDelayCalcObserver(Search *search);
|
StaDelayCalcObserver(Search *search);
|
||||||
virtual void delayChangedFrom(Vertex *vertex);
|
void delayChangedFrom(Vertex *vertex) override;
|
||||||
virtual void delayChangedTo(Vertex *vertex);
|
void delayChangedTo(Vertex *vertex) override;
|
||||||
virtual void checkDelayChangedTo(Vertex *vertex);
|
void checkDelayChangedTo(Vertex *vertex) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Search *search_;
|
Search *search_;
|
||||||
|
|
@ -3390,8 +3390,8 @@ public:
|
||||||
bool include_port_paths,
|
bool include_port_paths,
|
||||||
StaState *sta);
|
StaState *sta);
|
||||||
MinPeriodEndVisitor(const MinPeriodEndVisitor &) = default;
|
MinPeriodEndVisitor(const MinPeriodEndVisitor &) = default;
|
||||||
virtual PathEndVisitor *copy() const;
|
PathEndVisitor *copy() const override;
|
||||||
virtual void visit(PathEnd *path_end);
|
void visit(PathEnd *path_end) override;
|
||||||
float minPeriod() const { return min_period_; }
|
float minPeriod() const { return min_period_; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ public:
|
||||||
ReportStd();
|
ReportStd();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual size_t printConsole(const char *buffer, size_t length);
|
size_t printConsole(const char *buffer, size_t length) override;
|
||||||
virtual size_t printErrorConsole(const char *buffer, size_t length);
|
virtual size_t printErrorConsole(const char *buffer, size_t length);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue