deleteFilterTags
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
17cf87b4c6
commit
8e50916693
|
|
@ -243,28 +243,7 @@ ClkInfo::equal(const ClkInfo *clk_info1,
|
||||||
const ClkInfo *clk_info2,
|
const ClkInfo *clk_info2,
|
||||||
const StaState *sta)
|
const StaState *sta)
|
||||||
{
|
{
|
||||||
bool crpr_on = sta->crprActive();
|
return ClkInfo::cmp(clk_info1, clk_info2, sta) == 0;
|
||||||
ClockUncertainties *uncertainties1 = clk_info1->uncertainties();
|
|
||||||
ClockUncertainties *uncertainties2 = clk_info2->uncertainties();
|
|
||||||
return clk_info1->clkEdge() == clk_info2->clkEdge()
|
|
||||||
&& clk_info1->pathAPIndex() == clk_info2->pathAPIndex()
|
|
||||||
&& clk_info1->clkSrc() == clk_info2->clkSrc()
|
|
||||||
&& clk_info1->genClkSrc() == clk_info2->genClkSrc()
|
|
||||||
&& (!crpr_on
|
|
||||||
|| Path::equal(clk_info1->crprClkPathRaw(),
|
|
||||||
clk_info2->crprClkPathRaw(),
|
|
||||||
sta))
|
|
||||||
// || clk_info1->crprClkVertexId(sta) == clk_info2->crprClkVertexId(sta))
|
|
||||||
&& ((uncertainties1 == nullptr
|
|
||||||
&& uncertainties2 == nullptr)
|
|
||||||
|| (uncertainties1 && uncertainties2
|
|
||||||
&& ClockUncertainties::equal(uncertainties1, uncertainties2)))
|
|
||||||
&& clk_info1->insertion() == clk_info2->insertion()
|
|
||||||
&& clk_info1->latency() == clk_info2->latency()
|
|
||||||
&& clk_info1->isPropagated() == clk_info2->isPropagated()
|
|
||||||
&& clk_info1->isGenClkSrcPath() == clk_info2->isGenClkSrcPath()
|
|
||||||
&& clk_info1->isPulseClk() == clk_info2->isPulseClk()
|
|
||||||
&& clk_info1->pulseClkSenseRfIndex() == clk_info2->pulseClkSenseRfIndex();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,7 @@ public:
|
||||||
bool isGenClkSrcPath() const { return is_gen_clk_src_path_; }
|
bool isGenClkSrcPath() const { return is_gen_clk_src_path_; }
|
||||||
size_t hash() const { return hash_; }
|
size_t hash() const { return hash_; }
|
||||||
bool crprPathRefsFilter() const { return crpr_path_refs_filter_; }
|
bool crprPathRefsFilter() const { return crpr_path_refs_filter_; }
|
||||||
|
const Path *crprClkPathRaw() const;
|
||||||
|
|
||||||
static int cmp(const ClkInfo *clk_info1,
|
static int cmp(const ClkInfo *clk_info1,
|
||||||
const ClkInfo *clk_info2,
|
const ClkInfo *clk_info2,
|
||||||
|
|
@ -82,7 +83,6 @@ public:
|
||||||
const StaState *sta);
|
const StaState *sta);
|
||||||
protected:
|
protected:
|
||||||
void findHash(const StaState *sta);
|
void findHash(const StaState *sta);
|
||||||
const Path *crprClkPathRaw() const;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const ClockEdge *clk_edge_;
|
const ClockEdge *clk_edge_;
|
||||||
|
|
|
||||||
|
|
@ -576,7 +576,8 @@ Search::deleteFilterTags()
|
||||||
for (TagIndex i = 0; i < tag_next_; i++) {
|
for (TagIndex i = 0; i < tag_next_; i++) {
|
||||||
Tag *tag = tags_[i];
|
Tag *tag = tags_[i];
|
||||||
if (tag
|
if (tag
|
||||||
&& tag->isFilter()) {
|
&& (tag->isFilter()
|
||||||
|
|| tag->clkInfo()->crprPathRefsFilter())) {
|
||||||
tags_[i] = nullptr;
|
tags_[i] = nullptr;
|
||||||
tag_set_->erase(tag);
|
tag_set_->erase(tag);
|
||||||
delete tag;
|
delete tag;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue