mirror of
https://github.com/YosysHQ/yosys
synced 2025-11-05 22:06:04 +00:00
rtlil: replace SigSig actions with new type SyncAction
This commit is contained in:
parent
37875fdedf
commit
1eb696c786
19 changed files with 305 additions and 252 deletions
|
|
@ -2122,13 +2122,14 @@ void dump_proc_switch(std::ostream &f, std::string indent, RTLIL::SwitchRule *sw
|
|||
void dump_case_actions(std::ostream &f, std::string indent, RTLIL::CaseRule *cs)
|
||||
{
|
||||
for (auto it = cs->actions.begin(); it != cs->actions.end(); ++it) {
|
||||
if (it->first.size() == 0)
|
||||
if (it->lhs.size() == 0)
|
||||
continue;
|
||||
f << stringf("%s ", indent);
|
||||
dump_sigspec(f, it->first);
|
||||
dump_sigspec(f, it->lhs);
|
||||
f << stringf(" = ");
|
||||
dump_sigspec(f, it->second);
|
||||
dump_sigspec(f, it->rhs);
|
||||
f << stringf(";\n");
|
||||
// TODO
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2259,7 +2260,7 @@ void case_body_find_regs(RTLIL::CaseRule *cs)
|
|||
case_body_find_regs(*it2);
|
||||
|
||||
for (auto it = cs->actions.begin(); it != cs->actions.end(); ++it) {
|
||||
for (auto &c : it->first.chunks())
|
||||
for (auto &c : it->lhs.chunks())
|
||||
if (c.wire != NULL)
|
||||
reg_wires.insert(c.wire->name);
|
||||
}
|
||||
|
|
@ -2271,7 +2272,7 @@ void dump_process(std::ostream &f, std::string indent, RTLIL::Process *proc, boo
|
|||
case_body_find_regs(&proc->root_case);
|
||||
for (auto it = proc->syncs.begin(); it != proc->syncs.end(); ++it)
|
||||
for (auto it2 = (*it)->actions.begin(); it2 != (*it)->actions.end(); it2++) {
|
||||
for (auto &c : it2->first.chunks())
|
||||
for (auto &c : it2->lhs.chunks())
|
||||
if (c.wire != NULL)
|
||||
reg_wires.insert(c.wire->name);
|
||||
}
|
||||
|
|
@ -2328,12 +2329,12 @@ void dump_process(std::ostream &f, std::string indent, RTLIL::Process *proc, boo
|
|||
}
|
||||
|
||||
for (auto it = sync->actions.begin(); it != sync->actions.end(); ++it) {
|
||||
if (it->first.size() == 0)
|
||||
if (it->lhs.size() == 0)
|
||||
continue;
|
||||
f << stringf("%s ", indent);
|
||||
dump_sigspec(f, it->first);
|
||||
dump_sigspec(f, it->lhs);
|
||||
f << stringf(" <= ");
|
||||
dump_sigspec(f, it->second);
|
||||
dump_sigspec(f, it->rhs);
|
||||
f << stringf(";\n");
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue