3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-06-03 12:51:23 +00:00

Fix submod -hidden

This commit is contained in:
Eddie Hung 2019-11-26 11:57:26 -08:00
parent 435d33c373
commit 5e487b103c

View file

@ -151,15 +151,16 @@ struct SubmodWorker
new_wire_name = stringf("%s[%d]", wire->name.c_str(), bit.offset); new_wire_name = stringf("%s[%d]", wire->name.c_str(), bit.offset);
if (new_wire_port_input || new_wire_port_output) { if (new_wire_port_input || new_wire_port_output) {
if (new_wire_name[0] == '$') if (new_wire_name[0] == '$')
do { while (1) {
std::string next_wire_name = stringf("%s\\n%d", hidden_mode ? "$submod" : ":", auto_name_counter++); std::string next_wire_name = stringf("%s\\n%d", hidden_mode ? "$submod" : "", auto_name_counter++);
if (all_wire_names.count(next_wire_name) == 0) { if (all_wire_names.count(next_wire_name) == 0) {
all_wire_names.insert(next_wire_name); all_wire_names.insert(next_wire_name);
new_wire_name = next_wire_name; new_wire_name = next_wire_name;
break;
} }
} while (new_wire_name[0] == '$'); }
else else if (hidden_mode)
new_wire_name = stringf("$submod%s\n", new_wire_name.c_str()); new_wire_name = stringf("$submod%s", new_wire_name.c_str());
} }
RTLIL::Wire *new_wire = new_mod->addWire(new_wire_name); RTLIL::Wire *new_wire = new_mod->addWire(new_wire_name);