diff --git a/kernel/rtlil_bufnorm.cc b/kernel/rtlil_bufnorm.cc index e8446a99e..510ddf582 100644 --- a/kernel/rtlil_bufnorm.cc +++ b/kernel/rtlil_bufnorm.cc @@ -235,6 +235,12 @@ struct RTLIL::SigNormIndex cell->setPort(port, tmp); } } + + // newly_driven is now empty but retains its peak capacity. A later + // incremental connect refills it with a handful of bits, yet the next + // rehash would be sized to that stale peak capacity. Release the + // storage so subsequent small batches stay small. + pool().swap(newly_driven); } void restore_connections() {