Revert "write_xaiger: use sigmap bits more consistently"

This reverts commit 6c340112fe.
This commit is contained in:
Eddie Hung 2019-12-16 14:35:35 -08:00
parent 6c340112fe
commit 78c0246d4a
1 changed files with 5 additions and 4 deletions

View File

@ -294,7 +294,7 @@ struct XAigerWriter
output_bits.insert(b); output_bits.insert(b);
if (!cell_known) if (!cell_known)
inout_bits.insert(I); inout_bits.insert(b);
} }
} }
} }
@ -315,7 +315,7 @@ struct XAigerWriter
SigBit O = sigmap(b); SigBit O = sigmap(b);
if (O != b) if (O != b)
alias_map[O] = b; alias_map[O] = b;
input_bits.insert(O); input_bits.insert(b);
if (arrival) if (arrival)
arrival_times[b] = arrival; arrival_times[b] = arrival;
@ -542,8 +542,9 @@ struct XAigerWriter
undriven_bits.erase(bit); undriven_bits.erase(bit);
} }
// For inout ports, or keep-ed wires, which end up being both a PI and a // For inout ports, or keep-ed wires, then create a new wire with an
// a PO then replace the PO with a new wire with the $inout.out suffix // $inout.out suffix, make it a PO driven by the existing inout, and
// inherit existing inout's drivers
for (auto bit : inout_bits) { for (auto bit : inout_bits) {
RTLIL::Wire *wire = bit.wire; RTLIL::Wire *wire = bit.wire;
RTLIL::IdString wire_name = stringf("$%s$inout.out", wire->name.c_str()); RTLIL::IdString wire_name = stringf("$%s$inout.out", wire->name.c_str());