run("opt_clean");
run("check");
run("opt");
+ if (help_mode || dsp)
+ run("techmap -map +/mul2dsp.v -map +/ice40/dsp_map.v -D DSP_A_MAXWIDTH=16 -D DSP_B_MAXWIDTH=16 "
+ "-D DSP_A_MINWIDTH=2 -D DSP_Y_MINWIDTH=11 "
+ "-D DSP_NAME=$__MUL16X16", "(if -dsp)");
run("wreduce");
run("peepopt");
run("opt_clean");
run("opt_expr");
run("opt_clean");
if (help_mode || dsp) {
- run("techmap -map +/mul2dsp.v -map +/ice40/dsp_map.v -D DSP_A_MAXWIDTH=16 -D DSP_B_MAXWIDTH=16 "
- "-D DSP_A_MINWIDTH=2 -D DSP_Y_MINWIDTH=11 "
- "-D DSP_NAME=$__MUL16X16", "(if -dsp)");
- run("opt_expr -fine", " (if -dsp)");
- run("wreduce", " (if -dsp)");
run("ice40_dsp", " (if -dsp)");
run("chtype -set $mul t:$__soft_mul","(if -dsp)");
}