diff --git a/passes/opt/wreduce.cc b/passes/opt/wreduce.cc index fbfe673ec..e52f9e89e 100644 --- a/passes/opt/wreduce.cc +++ b/passes/opt/wreduce.cc @@ -591,6 +591,10 @@ struct WreduceWorker Wire *nw = module->addWire(module->uniquify(IdString(w->name.str() + "_wreduce")), GetSize(w) - unused_top_bits); module->connect(nw, SigSpec(w).extract(0, GetSize(nw))); module->swap_names(w, nw); + for (auto bit : mi.sigmap(SigSpec(w).extract(GetSize(nw), unused_top_bits))) + mi.database.erase(bit); + mi.sigmap.set(module); + mi.notify_connect(module, SigSig(nw, SigSpec(w).extract(0, GetSize(nw)))); } } }; diff --git a/tests/silimate/extract_reduce_gates.ys b/tests/silimate/extract_reduce_gates.ys deleted file mode 100644 index c50db9bc7..000000000 --- a/tests/silimate/extract_reduce_gates.ys +++ /dev/null @@ -1,950 +0,0 @@ -################################################################### -# Extract Reduce AND Gates Tests -################################################################### - -log -header "Simple AND chain" -log -push -design -reset -read_verilog <