3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-08-09 04:31:25 +00:00

pmgen progress

Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
Clifford Wolf 2019-04-30 10:51:51 +02:00
parent d2d402e625
commit 4306bebe58
4 changed files with 27 additions and 13 deletions

View file

@ -19,11 +19,14 @@
#include "kernel/yosys.h"
#include "kernel/sigtools.h"
#include "passes/pmgen/peepopt_pm.h"
USING_YOSYS_NAMESPACE
PRIVATE_NAMESPACE_BEGIN
bool did_something;
#include "passes/pmgen/peepopt_pm.h"
struct PeepoptPass : public Pass {
PeepoptPass() : Pass("peepopt", "collection of peephole optimizers") { }
void help() YS_OVERRIDE
@ -51,8 +54,12 @@ struct PeepoptPass : public Pass {
extra_args(args, argidx, design);
for (auto module : design->selected_modules()) {
peepopt_pm pm(module, module->selected_cells());
pm.run_shiftmul();
did_something = true;
while (did_something) {
did_something = false;
peepopt_pm pm(module, module->selected_cells());
pm.run_shiftmul();
}
}
}
} PeepoptPass;