Skip to content

Commit

Permalink
scc to use design->selected_modules() which avoids black/white-boxes
Browse files Browse the repository at this point in the history
  • Loading branch information
eddiehung committed Jan 7, 2020
1 parent 66b0f3c commit 102f139
Showing 1 changed file with 25 additions and 26 deletions.
51 changes: 25 additions & 26 deletions passes/cmds/scc.cc
Original file line number Diff line number Diff line change
Expand Up @@ -301,42 +301,41 @@ struct SccPass : public Pass {
RTLIL::Selection newSelection(false);
int scc_counter = 0;

for (auto &mod_it : design->modules_)
if (design->selected(mod_it.second))
{
SccWorker worker(design, mod_it.second, nofeedbackMode, allCellTypes, maxDepth);
for (auto mod : design->selected_modules())
{
SccWorker worker(design, mod, nofeedbackMode, allCellTypes, maxDepth);

if (!setAttr.empty())
if (!setAttr.empty())
{
for (const auto &cells : worker.sccList)
{
for (const auto &cells : worker.sccList)
for (auto attr : setAttr)
{
for (auto attr : setAttr)
{
IdString attr_name(RTLIL::escape_id(attr.first));
string attr_valstr = attr.second;
string index = stringf("%d", scc_counter);

for (size_t pos = 0; (pos = attr_valstr.find("{}", pos)) != string::npos; pos += index.size())
attr_valstr.replace(pos, 2, index);
IdString attr_name(RTLIL::escape_id(attr.first));
string attr_valstr = attr.second;
string index = stringf("%d", scc_counter);

Const attr_value(attr_valstr);
for (size_t pos = 0; (pos = attr_valstr.find("{}", pos)) != string::npos; pos += index.size())
attr_valstr.replace(pos, 2, index);

for (auto cell : cells)
cell->attributes[attr_name] = attr_value;
}
Const attr_value(attr_valstr);

scc_counter++;
for (auto cell : cells)
cell->attributes[attr_name] = attr_value;
}
}
else
{
scc_counter += GetSize(worker.sccList);
}

if (selectMode)
worker.select(newSelection);
scc_counter++;
}
}
else
{
scc_counter += GetSize(worker.sccList);
}

if (selectMode)
worker.select(newSelection);
}

if (expect >= 0) {
if (scc_counter == expect)
log("Found and expected %d SCCs.\n", scc_counter);
Expand Down

0 comments on commit 102f139

Please sign in to comment.