feat: forward converter options through a {{CONV_FLAGS}} placeholder
The bbdd template hardcoded convert_bbdd -t 300000, and the runner reached
into the rendered script afterwards with
sed -i "s#\(convert_bbdd\|convert_bdd\) -t 300000#\1 $conv_flags#"
to inject -n. That only worked while the literal table size in the template
matched the pattern in the runner, and it silently did nothing otherwise -
including for convert_bdd, whose template never carried a -t at all.
Replace it with a {{CONV_FLAGS}} placeholder substituted alongside the other
template variables, and give synth.sh the matching -n MAX_INPUTS flag so the
manual flow can partition too. synth.sh had to learn the substitution either
way: an unsubstituted placeholder would otherwise reach yosys verbatim.
The placeholder is deliberately absent from yosys/bdd_synth.ys, because
convert_bdd parses no options at all - src/convert_bdd.cpp:118 reads
argv[optind] directly, so passing -t there would make the flag the input
filename. The runner now refuses -n against a template without the
placeholder rather than dropping it without a word; lifting that restriction
is the convert_bdd work.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014JTKS4uaDDZejKn7pE8vjc