Skip to content

Commit 8e50916

Browse files
committed
deleteFilterTags
Signed-off-by: James Cherry <cherry@parallaxsw.com>
1 parent 17cf87b commit 8e50916

3 files changed

Lines changed: 5 additions & 25 deletions

File tree

search/ClkInfo.cc

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -243,28 +243,7 @@ ClkInfo::equal(const ClkInfo *clk_info1,
243243
const ClkInfo *clk_info2,
244244
const StaState *sta)
245245
{
246-
bool crpr_on = sta->crprActive();
247-
ClockUncertainties *uncertainties1 = clk_info1->uncertainties();
248-
ClockUncertainties *uncertainties2 = clk_info2->uncertainties();
249-
return clk_info1->clkEdge() == clk_info2->clkEdge()
250-
&& clk_info1->pathAPIndex() == clk_info2->pathAPIndex()
251-
&& clk_info1->clkSrc() == clk_info2->clkSrc()
252-
&& clk_info1->genClkSrc() == clk_info2->genClkSrc()
253-
&& (!crpr_on
254-
|| Path::equal(clk_info1->crprClkPathRaw(),
255-
clk_info2->crprClkPathRaw(),
256-
sta))
257-
// || clk_info1->crprClkVertexId(sta) == clk_info2->crprClkVertexId(sta))
258-
&& ((uncertainties1 == nullptr
259-
&& uncertainties2 == nullptr)
260-
|| (uncertainties1 && uncertainties2
261-
&& ClockUncertainties::equal(uncertainties1, uncertainties2)))
262-
&& clk_info1->insertion() == clk_info2->insertion()
263-
&& clk_info1->latency() == clk_info2->latency()
264-
&& clk_info1->isPropagated() == clk_info2->isPropagated()
265-
&& clk_info1->isGenClkSrcPath() == clk_info2->isGenClkSrcPath()
266-
&& clk_info1->isPulseClk() == clk_info2->isPulseClk()
267-
&& clk_info1->pulseClkSenseRfIndex() == clk_info2->pulseClkSenseRfIndex();
246+
return ClkInfo::cmp(clk_info1, clk_info2, sta) == 0;
268247
}
269248

270249
////////////////////////////////////////////////////////////////

search/ClkInfo.hh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ public:
7373
bool isGenClkSrcPath() const { return is_gen_clk_src_path_; }
7474
size_t hash() const { return hash_; }
7575
bool crprPathRefsFilter() const { return crpr_path_refs_filter_; }
76+
const Path *crprClkPathRaw() const;
7677

7778
static int cmp(const ClkInfo *clk_info1,
7879
const ClkInfo *clk_info2,
@@ -82,7 +83,6 @@ public:
8283
const StaState *sta);
8384
protected:
8485
void findHash(const StaState *sta);
85-
const Path *crprClkPathRaw() const;
8686

8787
private:
8888
const ClockEdge *clk_edge_;

search/Search.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,8 @@ Search::deleteFilterTags()
576576
for (TagIndex i = 0; i < tag_next_; i++) {
577577
Tag *tag = tags_[i];
578578
if (tag
579-
&& tag->isFilter()) {
579+
&& (tag->isFilter()
580+
|| tag->clkInfo()->crprPathRefsFilter())) {
580581
tags_[i] = nullptr;
581582
tag_set_->erase(tag);
582583
delete tag;
@@ -595,7 +596,7 @@ Search::deleteFilterClkInfos()
595596
delete clk_info;
596597
}
597598
else
598-
itr++;
599+
itr++;
599600
}
600601
}
601602

0 commit comments

Comments
 (0)