YosysHQ / sby

SymbiYosys (sby) -- Front-end for Yosys-based formal verification flows
Other
387 stars 73 forks source link

Don't use python asserts to handle unexpected solver output #180

Closed jix closed 2 years ago

jix commented 2 years ago

This turns all the asserts used in output_callback or exit_callback that can be triggered by misbehaving solvers into task.error calls. This gives better error messages and is required if we want to run multiple tasks in parallel (as for autotune, stages etc.) without one misbehaving solver taking down all of sby.

To simplify things, this also includes small changes to SbyProc so that checkretcode can replace some of those asserts.