mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-19 20:33:39 +00:00
Added module->design and cell->module, wire->module pointers
This commit is contained in:
parent
1cb25c05b3
commit
e6d33513a5
15 changed files with 142 additions and 44 deletions
|
@ -936,7 +936,7 @@ void AST::process(RTLIL::Design *design, AstNode *ast, bool dump_ast1, bool dump
|
|||
(*it)->str = (*it)->str.substr(1);
|
||||
if (defer)
|
||||
(*it)->str = "$abstract" + (*it)->str;
|
||||
if (design->modules_.count((*it)->str)) {
|
||||
if (design->has((*it)->str)) {
|
||||
if (!ignore_redef)
|
||||
log_error("Re-definition of module `%s' at %s:%d!\n",
|
||||
(*it)->str.c_str(), (*it)->filename.c_str(), (*it)->linenum);
|
||||
|
@ -944,7 +944,7 @@ void AST::process(RTLIL::Design *design, AstNode *ast, bool dump_ast1, bool dump
|
|||
(*it)->str.c_str(), (*it)->filename.c_str(), (*it)->linenum);
|
||||
continue;
|
||||
}
|
||||
design->modules_[(*it)->str] = process_module(*it, defer);
|
||||
design->add(process_module(*it, defer));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1041,10 +1041,10 @@ RTLIL::IdString AstModule::derive(RTLIL::Design *design, std::map<RTLIL::IdStrin
|
|||
modname = "$paramod" + stripped_name + para_info;
|
||||
}
|
||||
|
||||
if (design->modules_.count(modname) == 0) {
|
||||
if (!design->has(modname)) {
|
||||
new_ast->str = modname;
|
||||
design->modules_[modname] = process_module(new_ast, false);
|
||||
design->modules_[modname]->check();
|
||||
design->add(process_module(new_ast, false));
|
||||
design->module(modname)->check();
|
||||
} else {
|
||||
log("Found cached RTLIL representation for module `%s'.\n", modname.c_str());
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue