Do not run "wreduce" in "prep -ifx"
authorClifford Wolf <clifford@clifford.at>
Wed, 8 Jun 2016 10:14:32 +0000 (12:14 +0200)
committerClifford Wolf <clifford@clifford.at>
Wed, 8 Jun 2016 10:14:32 +0000 (12:14 +0200)
techlibs/common/prep.cc

index a871118339ce0337d213410a7d8361583e5bc50a..9f8f6b313944045be9c69ec66a055eb45c97f545 100644 (file)
@@ -48,7 +48,7 @@ struct PrepPass : public ScriptPass
                log("\n");
                log("    -ifx\n");
                log("        passed to 'proc'. uses verilog simulation behavior for verilog if/case\n");
-               log("        undef handling\n");
+               log("        undef handling. this also prevents 'wreduce' from being run.\n");
                log("\n");
                log("    -nordff\n");
                log("        passed to 'memory_dff'. prohibits merging of FFs into memory read ports\n");
@@ -151,7 +151,8 @@ struct PrepPass : public ScriptPass
                        run("opt_clean");
                        run("check");
                        run("opt -keepdc");
-                       run("wreduce");
+                       if (!ifxmode)
+                               run("wreduce");
                        run("memory_dff" + (help_mode ? " [-nordff]" : memory_opts));
                        run("opt_clean");
                        run("memory_collect");