Fixed sharing of $memrd cells
This commit is contained in:
@@ -708,6 +708,10 @@ struct ShareWorker
|
||||
if (c1->type == "$memrd")
|
||||
{
|
||||
RTLIL::Cell *supercell = module->addCell(NEW_ID, c1);
|
||||
RTLIL::SigSpec addr1 = c1->getPort("\\ADDR");
|
||||
RTLIL::SigSpec addr2 = c2->getPort("\\ADDR");
|
||||
if (addr1 != addr2)
|
||||
supercell->setPort("\\ADDR", module->Mux(NEW_ID, addr2, addr1, act));
|
||||
supercell_aux.insert(module->addPos(NEW_ID, supercell->getPort("\\DATA"), c2->getPort("\\DATA")));
|
||||
supercell_aux.insert(supercell);
|
||||
return supercell;
|
||||
|
||||
Reference in New Issue
Block a user