CheckCrpr::clkPathPrev
This commit is contained in:
parent
c33a446918
commit
b9824b62b2
|
|
@ -55,27 +55,24 @@ CheckCrpr::clkPathPrev(const PathVertex *path,
|
|||
int arrival_index;
|
||||
bool exists;
|
||||
path->arrivalIndex(arrival_index, exists);
|
||||
return clkPathPrev(vertex, arrival_index, tmp);
|
||||
tmp = clkPathPrev(vertex, arrival_index);
|
||||
if (tmp.isNull())
|
||||
return nullptr;
|
||||
else
|
||||
return &tmp;
|
||||
}
|
||||
|
||||
PathVertex *
|
||||
PathVertex
|
||||
CheckCrpr::clkPathPrev(Vertex *vertex,
|
||||
int arrival_index,
|
||||
PathVertex &tmp)
|
||||
int arrival_index)
|
||||
{
|
||||
PathVertexRep *prevs = graph_->prevPaths(vertex);
|
||||
if (prevs) {
|
||||
PathVertexRep *prev = &prevs[arrival_index];
|
||||
if (prev->isNull())
|
||||
return nullptr;
|
||||
if (prevs)
|
||||
return PathVertex(prevs[arrival_index], this);
|
||||
else {
|
||||
tmp.init(graph_->vertex(prev->vertexId()),
|
||||
search_->tag(prev->tagIndex()), this);
|
||||
return &tmp;
|
||||
}
|
||||
}
|
||||
else
|
||||
internalError("missing prev paths");
|
||||
return PathVertex();
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -51,14 +51,14 @@ public:
|
|||
Pin *&crpr_pin);
|
||||
|
||||
// Previous clk path when crpr is enabled.
|
||||
PathVertex *clkPathPrev(const PathVertex *path,
|
||||
PathVertex &tmp);
|
||||
PathVertex clkPathPrev(const PathVertex *path);
|
||||
// For Search::reportArrivals.
|
||||
PathVertex *clkPathPrev(Vertex *vertex,
|
||||
int arrival_index,
|
||||
PathVertex &tmp);
|
||||
PathVertex clkPathPrev(Vertex *vertex,
|
||||
int arrival_index);
|
||||
|
||||
private:
|
||||
PathVertex *clkPathPrev(const PathVertex *path,
|
||||
PathVertex &tmp);
|
||||
Arrival otherMinMaxArrival(const PathVertex *path);
|
||||
void checkCrpr1(const Path *src_path,
|
||||
const PathVertex *tgt_clk_path,
|
||||
|
|
|
|||
|
|
@ -2745,10 +2745,9 @@ Search::reportArrivals(Vertex *vertex) const
|
|||
}
|
||||
report_->print(" %s", tag->asString(this));
|
||||
if (tag_group->hasClkTag()) {
|
||||
PathVertex tmp;
|
||||
PathVertex *prev = check_crpr_->clkPathPrev(vertex, arrival_index, tmp);
|
||||
PathVertex prev = check_crpr_->clkPathPrev(vertex, arrival_index);
|
||||
report_->print(" clk_prev=[%s]",
|
||||
prev && !prev->isNull() ? prev->name(this) : "NULL");
|
||||
prev.isNull() ? "NULL" : prev.name(this));
|
||||
}
|
||||
report_->print("\n");
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue