peepopt: Drop unused 'initbits' code

Drop code that was once used by the 'dffmux' pattern but now is unused
after that pattern has been obsoleted by the 'opt_dff' pass.
This commit is contained in:
Martin Povišer 2023-08-02 13:52:40 +02:00
parent 7d30f716e8
commit a0c3be3aae
1 changed files with 0 additions and 39 deletions

View File

@ -24,8 +24,6 @@ USING_YOSYS_NAMESPACE
PRIVATE_NAMESPACE_BEGIN PRIVATE_NAMESPACE_BEGIN
bool did_something; bool did_something;
dict<SigBit, State> initbits;
pool<SigBit> rminitbits;
#include "passes/pmgen/peepopt_pm.h" #include "passes/pmgen/peepopt_pm.h"
#include "generate.h" #include "generate.h"
@ -60,9 +58,6 @@ struct PeepoptPass : public Pass {
if (!genmode.empty()) if (!genmode.empty())
{ {
initbits.clear();
rminitbits.clear();
if (genmode == "shiftmul") if (genmode == "shiftmul")
GENERATE_PATTERN(peepopt_pm, shiftmul); GENERATE_PATTERN(peepopt_pm, shiftmul);
else if (genmode == "muldiv") else if (genmode == "muldiv")
@ -79,47 +74,13 @@ struct PeepoptPass : public Pass {
while (did_something) while (did_something)
{ {
did_something = false; did_something = false;
initbits.clear();
rminitbits.clear();
peepopt_pm pm(module); peepopt_pm pm(module);
for (auto w : module->wires()) {
auto it = w->attributes.find(ID::init);
if (it != w->attributes.end()) {
SigSpec sig = pm.sigmap(w);
Const val = it->second;
int len = std::min(GetSize(sig), GetSize(val));
for (int i = 0; i < len; i++) {
if (sig[i].wire == nullptr)
continue;
if (val[i] != State::S0 && val[i] != State::S1)
continue;
initbits[sig[i]] = val[i];
}
}
}
pm.setup(module->selected_cells()); pm.setup(module->selected_cells());
pm.run_shiftmul(); pm.run_shiftmul();
pm.run_muldiv(); pm.run_muldiv();
for (auto w : module->wires()) {
auto it = w->attributes.find(ID::init);
if (it != w->attributes.end()) {
SigSpec sig = pm.sigmap(w);
Const &val = it->second;
int len = std::min(GetSize(sig), GetSize(val));
for (int i = 0; i < len; i++) {
if (rminitbits.count(sig[i]))
val[i] = State::Sx;
}
}
}
initbits.clear();
rminitbits.clear();
} }
} }
} }