3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-13 04:28:18 +00:00

Fixed assertion failure for non-inferrable counters in some cases

This commit is contained in:
Andrew Zonenberg 2016-04-06 23:42:22 -07:00
parent 48c10d90f4
commit 01a5f71187

View file

@ -248,8 +248,12 @@ void greenpak4_counters_worker(
if (cell->type != "$alu") if (cell->type != "$alu")
return; return;
//A input is the count value. Check if it has COUNT_EXTRACT set //A input is the count value. Check if it has COUNT_EXTRACT set.
RTLIL::Wire* a_wire = sigmap(cell->getPort("\\A")).as_wire(); //If it's not a wire, don't even try
auto port = sigmap(cell->getPort("\\A"));
if(!port.is_wire())
return;
RTLIL::Wire* a_wire = port.as_wire();
bool force_extract = false; bool force_extract = false;
bool never_extract = false; bool never_extract = false;
string count_reg_src = a_wire->attributes["\\src"].decode_string().c_str(); string count_reg_src = a_wire->attributes["\\src"].decode_string().c_str();