diff --git a/include/sta/Search.hh b/include/sta/Search.hh index a3871a78..5828f7ba 100644 --- a/include/sta/Search.hh +++ b/include/sta/Search.hh @@ -688,6 +688,7 @@ protected: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *edge, TimingArc *arc, ArcDelay arc_delay, @@ -720,7 +721,8 @@ public: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, - Edge *edge, + const Arrival &from_arrival, + Edge *edge, TimingArc *arc, ArcDelay arc_delay, Vertex *to_vertex, @@ -789,6 +791,7 @@ protected: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *edge, TimingArc *arc, ArcDelay arc_delay, diff --git a/search/PathEnum.cc b/search/PathEnum.cc index 69e6df77..c41cef63 100644 --- a/search/PathEnum.cc +++ b/search/PathEnum.cc @@ -237,6 +237,7 @@ public: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *edge, TimingArc *arc, ArcDelay arc_delay, @@ -315,6 +316,7 @@ PathEnumFaninVisitor::visitFromToPath(const Pin *, const RiseFall *, Tag *, PathVertex *from_path, + const Arrival &, Edge *edge, TimingArc *arc, ArcDelay, diff --git a/search/PathVertex.cc b/search/PathVertex.cc index 799a9715..0a1880e9 100644 --- a/search/PathVertex.cc +++ b/search/PathVertex.cc @@ -328,6 +328,7 @@ public: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *edge, TimingArc *arc, ArcDelay arc_delay, @@ -380,6 +381,7 @@ PrevPathVisitor::visitFromToPath(const Pin *, const RiseFall *, Tag *from_tag, PathVertex *from_path, + const Arrival &, Edge *, TimingArc *arc, ArcDelay, diff --git a/search/Search.cc b/search/Search.cc index db415fe0..ecfa8fe2 100644 --- a/search/Search.cc +++ b/search/Search.cc @@ -1250,6 +1250,7 @@ ArrivalVisitor::visitFromToPath(const Pin *, const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *, TimingArc *, ArcDelay arc_delay, @@ -1279,7 +1280,7 @@ ArrivalVisitor::visitFromToPath(const Pin *, if (tag_match == nullptr || delayGreater(to_arrival, arrival, min_max, this)) { debugPrint(debug_, "search", 3, " %s + %s = %s %s %s", - delayAsString(from_path->arrival(this), this), + delayAsString(from_arrival, this), delayAsString(arc_delay, this), delayAsString(to_arrival, this), min_max == MinMax::max() ? ">" : "<", @@ -2210,7 +2211,8 @@ PathVisitor::visitFromPath(const Pin *from_pin, } } if (to_tag) - return visitFromToPath(from_pin, from_vertex, from_rf, from_tag, from_path, + return visitFromToPath(from_pin, from_vertex, from_rf, + from_tag, from_path, from_arrival, edge, arc, arc_delay, to_vertex, to_rf, to_tag, to_arrival, min_max, path_ap); @@ -3488,6 +3490,7 @@ RequiredVisitor::visitFromToPath(const Pin *, const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &, Edge *edge, TimingArc *, ArcDelay arc_delay, diff --git a/search/VisitPathGroupVertices.cc b/search/VisitPathGroupVertices.cc index 2b2ebdaa..0dfab288 100644 --- a/search/VisitPathGroupVertices.cc +++ b/search/VisitPathGroupVertices.cc @@ -80,6 +80,7 @@ protected: const RiseFall *from_rf, Tag *from_tag, PathVertex *from_path, + const Arrival &from_arrival, Edge *edge, TimingArc *arc, ArcDelay arc_delay, @@ -254,6 +255,7 @@ PathGroupPathVisitor::visitFromToPath(const Pin *, const RiseFall *, Tag *from_tag, PathVertex *from_path, + const Arrival &, Edge *, TimingArc *, ArcDelay ,