diff options
author | Clifford Wolf <clifford@clifford.at> | 2015-06-30 01:38:34 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2015-06-30 01:38:34 +0200 |
commit | 77e89399a659e5c16e5cd6a8040e38e811e7192d (patch) | |
tree | c7bc9b49255d731d2b572ee56520f846405b3fbf /passes/cmds | |
parent | caa274ada6f2f35119cff943d0e9ed05dfaaeec7 (diff) | |
download | yosys-77e89399a659e5c16e5cd6a8040e38e811e7192d.tar.gz yosys-77e89399a659e5c16e5cd6a8040e38e811e7192d.tar.bz2 yosys-77e89399a659e5c16e5cd6a8040e38e811e7192d.zip |
Bugfix in chparam
Diffstat (limited to 'passes/cmds')
-rw-r--r-- | passes/cmds/setattr.cc | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/passes/cmds/setattr.cc b/passes/cmds/setattr.cc index a82625696..58fcf028f 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(); |