summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/sigtools.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/sigtools.h b/kernel/sigtools.h
index 83ff470d..4e97bb77 100644
--- a/kernel/sigtools.h
+++ b/kernel/sigtools.h
@@ -242,7 +242,13 @@ struct SigMap
void set(RTLIL::Module *module)
{
- clear();
+ int bitcount = 0;
+ for (auto &it : module->connections())
+ bitcount += it.first.size();
+
+ database.clear();
+ database.reserve(bitcount);
+
for (auto &it : module->connections())
add(it.first, it.second);
}