yosys/backends
Jannis Harder d03c5e2a00 smtbmc: Break dependency recursion during unrolling
Previously `unroll_stmt` would recurse over the smtlib expressions as
well as recursively follow not-yet-emitted definitions the current
expression depends on. While the depth of smtlib expressions generated
by yosys seems to be reasonably bounded, the dependency chain of
not-yet-emitted definitions can grow linearly with the size of the
design and linearly in the BMC depth.

This makes `unroll_stmt` use a `list` as stack, using python generators
and `recursion_helper` function to keep the overall code structure of
the previous recursive implementation.
2024-03-04 16:53:03 +01:00
..
aiger write_aiger: Include `$assert` and `$assume` cells in -ywmap output 2024-03-04 16:53:03 +01:00
blif Ignore $scopeinfo in write_blif 2024-02-06 17:51:29 +01:00
btor tests: use /usr/bin/env for bash. 2023-08-12 11:59:39 +10:00
cxxrtl cxxrtl: expose scope information in the C++ API. 2024-02-26 12:42:48 +00:00
edif Ignore $scopeinfo in write_edif 2024-02-06 17:51:29 +01:00
firrtl Ignore $scopeinfo in write_firrtl 2024-02-06 17:51:29 +01:00
intersynth Intersynth URL 2021-06-09 12:42:52 +02:00
jny Drop stray 'cellaigs.h' include from backend passes 2023-07-10 12:45:03 +02:00
json Ignore $scopeinfo in write_json 2024-02-06 17:51:29 +01:00
rtlil backends/rtlil: Do not shorten a value with z bits to 'x 2023-01-29 14:02:25 +01:00
simplec tests: use /usr/bin/env for bash. 2023-08-12 11:59:39 +10:00
smt2 smtbmc: Break dependency recursion during unrolling 2024-03-04 16:53:03 +01:00
smv Ignore $scopeinfo in write_smv 2024-02-06 17:51:29 +01:00
spice Ignore $scopeinfo in write_spice 2024-02-06 17:51:29 +01:00
table Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
verilog Ignore $scopeinfo in write_verilog 2024-02-06 17:51:29 +01:00