Revert "Fold loop" This reverts commit da51492dbcc9f19a4808ef18e8ae1222bc55b118.
diff --git a/backends/aiger/xaiger.cc b/backends/aiger/xaiger.cc index f17a4c7..8b809b2 100644 --- a/backends/aiger/xaiger.cc +++ b/backends/aiger/xaiger.cc
@@ -184,7 +184,6 @@ if (bit != wirebit) alias_map[bit] = wirebit; input_bits.insert(wirebit); - undriven_bits.erase(bit); } if (wire->port_output || keep) { @@ -192,8 +191,6 @@ if (bit != wirebit) alias_map[wirebit] = bit; output_bits.insert(wirebit); - if (!wire->port_input) - unused_bits.erase(bit); } else log_debug("Skipping PO '%s' driven by 1'bx\n", log_signal(wirebit)); @@ -201,6 +198,12 @@ } } + for (auto bit : input_bits) + undriven_bits.erase(sigmap(bit)); + for (auto bit : output_bits) + if (!bit.wire->port_input) + unused_bits.erase(bit); + // TODO: Speed up toposort -- ultimately we care about // box ordering, but not individual AIG cells dict<SigBit, pool<IdString>> bit_drivers, bit_users;