diff --git a/include/sta/Path.hh b/include/sta/Path.hh index 762ea987..d9e07aaa 100644 --- a/include/sta/Path.hh +++ b/include/sta/Path.hh @@ -122,6 +122,8 @@ public: void checkPrevPath(const StaState *sta) const; void checkPrevPaths(const StaState *sta) const; + static Path *vertexPath(const Path *path, + const StaState *sta); static Path *vertexPath(const Path &path, const StaState *sta); static Path *vertexPath(const Vertex *vertex, diff --git a/search/Genclks.cc b/search/Genclks.cc index f36a150c..4b0cf0c7 100644 --- a/search/Genclks.cc +++ b/search/Genclks.cc @@ -1023,12 +1023,10 @@ Genclks::updateSrcPathPrevs() if (!src_path.isNull()) { const Path *p = &src_path; while (p) { - Path *src_vpath = Path::vertexPath(p->vertex(this), - p->tag(this), this); + Path *src_vpath = Path::vertexPath(p, this); Path *prev_path = p->prevPath(); if (prev_path) { - Path *prev_vpath = Path::vertexPath(prev_path->vertex(this), - prev_path->tag(this), this); + Path *prev_vpath = Path::vertexPath(prev_path, this); src_vpath->setPrevPath(prev_vpath); src_vpath->setPrevEdgeArc(p->prevEdge(this), p->prevArc(this), this); diff --git a/search/Path.cc b/search/Path.cc index b2b76f37..1ce916df 100644 --- a/search/Path.cc +++ b/search/Path.cc @@ -473,6 +473,13 @@ Path::setIsEnum(bool is_enum) //////////////////////////////////////////////////////////////// +Path * +Path::vertexPath(const Path *path, + const StaState *sta) +{ + return vertexPath(path->vertex(sta), path->tag(sta), sta); +} + Path * Path::vertexPath(const Path &path, const StaState *sta)