Disable shregmap in synth_xilinx if -retime
authorEddie Hung <eddieh@ece.ubc.ca>
Wed, 3 Apr 2019 14:14:20 +0000 (07:14 -0700)
committerEddie Hung <eddieh@ece.ubc.ca>
Wed, 3 Apr 2019 14:14:20 +0000 (07:14 -0700)
techlibs/xilinx/synth_xilinx.cc

index b6225a1a32e7eb242958b5bd9b5a27eff7723c84..df30a22de9aff0a65f5b425d95ab93aa6b34b775 100644 (file)
@@ -113,8 +113,8 @@ struct SynthXilinxPass : public Pass
                log("        dffsr2dff\n");
                log("        dff2dffe\n");
                log("        opt -full\n");
-               log("        simplemap t:$dff* (only without -nosrl)\n");
-               log("        shregmap -tech xilinx -minlen 3 (only without -nosrl)\n");
+               log("        simplemap t:$dff* (without -nosrl and without -retime only)\n");
+               log("        shregmap -tech xilinx -minlen 3 (without -nosrl and without -retime only)\n");
                log("        techmap -map +/techmap.v -map +/xilinx/arith_map.v -map +/xilinx/ff_map.v\n");
                log("        opt -fast\n");
                log("\n");
@@ -265,7 +265,7 @@ struct SynthXilinxPass : public Pass
                        Pass::call(design, "dff2dffe");
                        Pass::call(design, "opt -full");
 
-                       if (!nosrl) {
+                       if (!nosrl && !retime) {
                                Pass::call(design, "simplemap t:$dff*");
                                Pass::call(design, "shregmap -tech xilinx -minlen 3");
                        }