Revert "Move mul2dsp before wreduce"
authorEddie Hung <eddie@fpgeh.com>
Fri, 20 Sep 2019 15:56:16 +0000 (08:56 -0700)
committerEddie Hung <eddie@fpgeh.com>
Fri, 20 Sep 2019 15:56:16 +0000 (08:56 -0700)
This reverts commit e4f4f6a9d5cf8bb23870fc483f16f66c80ceebab.

techlibs/ice40/synth_ice40.cc

index 225603475c10e25fc681f8a020b0a7b67d090043..284bc90d08afa587f7546c1812b7d848f1adae45 100644 (file)
@@ -265,10 +265,6 @@ struct SynthIce40Pass : public ScriptPass
                        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");
@@ -277,6 +273,11 @@ struct SynthIce40Pass : public ScriptPass
                        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)");
                        }