ecp5: Add a check for legacy parameter values

Signed-off-by: David Shah <dave@ds0.me>
This commit is contained in:
David Shah 2019-08-06 09:53:33 +01:00
parent c9ba81ab50
commit 7126dacccd

View File

@ -2384,9 +2384,21 @@ class Ecp5Packer
} }
} }
void prepack_checks()
{
// Check for legacy-style JSON (use CEMUX as a clue) and error out, avoiding a confusing assertion failure
// later
for (auto cell : sorted(ctx->cells)) {
if (is_ff(ctx, cell.second) && cell.second->params.count(ctx->id("CEMUX")) &&
!cell.second->params[ctx->id("CEMUX")].is_string)
log_error("Found netlist using legacy-style JSON parameter values, please update your Yosys.\n");
}
}
public: public:
void pack() void pack()
{ {
prepack_checks();
pack_io(); pack_io();
pack_dqsbuf(); pack_dqsbuf();
pack_iologic(); pack_iologic();