summaryrefslogtreecommitdiff
path: root/passes/cmds
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2015-06-30 01:38:34 +0200
committerClifford Wolf <clifford@clifford.at>2015-06-30 01:38:34 +0200
commit77e89399a659e5c16e5cd6a8040e38e811e7192d (patch)
treec7bc9b49255d731d2b572ee56520f846405b3fbf /passes/cmds
parentcaa274ada6f2f35119cff943d0e9ed05dfaaeec7 (diff)
Bugfix in chparam
Diffstat (limited to 'passes/cmds')
-rw-r--r--passes/cmds/setattr.cc11
1 files changed, 5 insertions, 6 deletions
diff --git a/passes/cmds/setattr.cc b/passes/cmds/setattr.cc
index a8262569..58fcf028 100644
--- a/passes/cmds/setattr.cc
+++ b/passes/cmds/setattr.cc
@@ -45,7 +45,7 @@ struct setunset_t
}
};
-static void do_setunset(dict<RTLIL::IdString, RTLIL::Const> &attrs, std::vector<setunset_t> &list)
+static void do_setunset(dict<RTLIL::IdString, RTLIL::Const> &attrs, const std::vector<setunset_t> &list)
{
for (auto &item : list)
if (item.unset)
@@ -217,6 +217,8 @@ struct ChparamPass : public Pass {
}
extra_args(args, argidx, design);
+ do_setunset(new_parameters, setunset_list);
+
if (list_mode) {
if (!new_parameters.empty())
log_cmd_error("The options -set and -list cannot be used together.\n");
@@ -229,11 +231,8 @@ struct ChparamPass : public Pass {
}
pool<IdString> modnames, old_modnames;
- for (auto module : design->selected_modules()) {
- if (design->selected_whole_module(module))
- modnames.insert(module->name);
- else
- log_warning("Ignoring partially selected module %s.\n", log_id(module));
+ for (auto module : design->selected_whole_modules_warn()) {
+ modnames.insert(module->name);
old_modnames.insert(module->name);
}
modnames.sort();