YosysHQ / yosys

Yosys Open SYnthesis Suite
https://yosyshq.net/yosys/
ISC License
3.3k stars 860 forks source link

synth_* passes should call `check -mapped` #4348

Open nakengelhardt opened 2 months ago

nakengelhardt commented 2 months ago

The expectation when calling a synthesis pass for a specific architecture is that the result is usable on the target architecture, so it should not have leftover internal cells. Adding the option -mapped to the final call to check that's already present in the synth_* would alert the user when that's not the case, e.g. when the design cells contains $pow cells that can't be optimized.

Would possibly also require some other adaptations such as #4122 to avoid false positive errors on cells that don't correspond to logic, such as $display or $scopeinfo.