change splitcells pass to remove some bracket from register names in blast mode

This commit is contained in:
Stan Lee 2026-01-20 15:50:43 -08:00
parent 60a81a2676
commit 45bd3f4515
1 changed files with 8 additions and 3 deletions

View File

@ -169,9 +169,14 @@ struct SplitcellsWorker
int slice_msb = slices[i]-1;
int slice_lsb = slices[i-1];
IdString slice_name = module->uniquify(cell->name.str() + (slice_msb == slice_lsb ?
stringf("%c%d%c", format[0], slice_lsb, format[1]) :
stringf("%c%d%c%d%c", format[0], slice_msb, format[2], slice_lsb, format[1])));
std::string base_name = cell->name.str();
if (blast) {
base_name = base_name.substr(0, base_name.find('['));
}
IdString slice_name = module->uniquify(base_name + (slice_msb == slice_lsb ?
stringf("%c%d%c", format[0], slice_lsb, format[1]) :
stringf("%c%d%c%d%c", format[0], slice_msb, format[2], slice_lsb, format[1])));
Cell *slice = module->addCell(slice_name, cell);