Removed is_port for non-trigger outputs. TODO: add a flag which does this so POs are only those ones

This commit is contained in:
AdvaySingh1 2026-03-19 09:23:12 -07:00
parent dc73249d8f
commit 52fad78b40
1 changed files with 12 additions and 0 deletions

View File

@ -1205,11 +1205,23 @@ void RunAbcState::run(ConcurrentStack<AbcProcess> &process_pool)
fprintf(f, " dummy_input\n");
fprintf(f, "\n");
// Only keep the output port whose signal originates from the miter equiv NOT cell
for (auto &si : signal_list) {
if (!si.is_port || si.type == G(NONE))
continue;
if (si.type == G(FF) || si.type == G(FF0) || si.type == G(FF1))
continue;
if (si.bit_str.find("trigger") == std::string::npos)
si.is_port = false;
}
int count_output = 0;
fprintf(f, ".outputs");
for (auto &si : signal_list) {
if (!si.is_port || si.type == G(NONE))
continue;
if (si.type == G(FF) || si.type == G(FF0) || si.type == G(FF1))
continue;
fprintf(f, " ys__n%d", si.id);
po_map[count_output++] = si.bit_str;
}