From f28b6aff40a65aa30a04b77cd51e6c0a346e739e Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Wed, 27 Feb 2013 16:27:20 +0100 Subject: Implemented basic functionality of "extract" pass --- passes/opt/opt_rmunused.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'passes/opt') diff --git a/passes/opt/opt_rmunused.cc b/passes/opt/opt_rmunused.cc index 29a6f2bc4..33c09f287 100644 --- a/passes/opt/opt_rmunused.cc +++ b/passes/opt/opt_rmunused.cc @@ -141,6 +141,16 @@ static void rmunused_module_signals(RTLIL::Module *module) used_signals_nodrivers.add(it2.second); } } + for (auto &it : module->wires) { + RTLIL::Wire *wire = it.second; + if (wire->port_id > 0) { + RTLIL::SigSpec sig = RTLIL::SigSpec(wire); + assign_map.apply(sig); + used_signals.add(sig); + if (!wire->port_input) + used_signals_nodrivers.add(sig); + } + } std::vector del_wires; for (auto &it : module->wires) { -- cgit v1.2.3