Fixed "scc" for cells that have feedback singals _and_ are part of a larger loop
authorClifford Wolf <clifford@clifford.at>
Fri, 27 May 2016 14:33:13 +0000 (16:33 +0200)
committerClifford Wolf <clifford@clifford.at>
Fri, 27 May 2016 14:33:13 +0000 (16:33 +0200)
passes/cmds/scc.cc

index 0071724069741bc9fd38b072d4c585d6210e3389..bb6d74474a1f2ec558d488840306d15618d73298 100644 (file)
@@ -181,10 +181,10 @@ struct SccWorker
                                cell2scc[cell] = sccList.size();
                                scc.insert(cell);
                                sccList.push_back(scc);
-                               workQueue.erase(cell);
                                log("\n");
-                       } else
-                               run(cell, 0, maxDepth);
+                       }
+
+                       run(cell, 0, maxDepth);
                }
 
                log("Found %d SCCs in module %s.\n", int(sccList.size()), RTLIL::id2cstr(module->name));