3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-06-05 08:30:51 +00:00

pmgen: hold sigmap pointer instead of owning it

This commit is contained in:
Emil J. Tywoniak 2026-04-14 18:05:33 +02:00
parent 647541a4c1
commit 8bbb0acdda
10 changed files with 61 additions and 42 deletions

View file

@ -163,8 +163,10 @@ struct TestPmgenPass : public Pass {
}
extra_args(args, argidx, design);
for (auto module : design->selected_modules())
while (test_pmgen_pm(module, module->selected_cells()).run_reduce(reduce_chain)) {}
for (auto module : design->selected_modules()) {
SigMap sigmap(module);
while (test_pmgen_pm(module, &sigmap, module->selected_cells()).run_reduce(reduce_chain)) {}
}
}
void execute_reduce_tree(std::vector<std::string> args, RTLIL::Design *design)
@ -182,8 +184,10 @@ struct TestPmgenPass : public Pass {
}
extra_args(args, argidx, design);
for (auto module : design->selected_modules())
test_pmgen_pm(module, module->selected_cells()).run_reduce(reduce_tree);
for (auto module : design->selected_modules()) {
SigMap sigmap(module);
test_pmgen_pm(module, &sigmap, module->selected_cells()).run_reduce(reduce_tree);
}
}
void execute_eqpmux(std::vector<std::string> args, RTLIL::Design *design)
@ -201,8 +205,10 @@ struct TestPmgenPass : public Pass {
}
extra_args(args, argidx, design);
for (auto module : design->selected_modules())
test_pmgen_pm(module, module->selected_cells()).run_eqpmux(opt_eqpmux);
for (auto module : design->selected_modules()) {
SigMap sigmap(module);
test_pmgen_pm(module, &sigmap, module->selected_cells()).run_eqpmux(opt_eqpmux);
}
}
void execute_generate(std::vector<std::string> args, RTLIL::Design *design)