From f0c9a099d20bc3ddee55155fe3d37b8d8d189a01 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Thu, 2 Jul 2015 15:25:38 +0200 Subject: [PATCH] Added "synth -nofsm" --- techlibs/common/synth.cc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/techlibs/common/synth.cc b/techlibs/common/synth.cc index 4c819e230..9d71feef1 100644 --- a/techlibs/common/synth.cc +++ b/techlibs/common/synth.cc @@ -55,6 +55,9 @@ struct SynthPass : public Pass { log(" -encfile \n"); log(" passed to 'fsm_recode' via 'fsm'\n"); log("\n"); + log(" -nofsm\n"); + log(" do not run FSM optimization\n"); + log("\n"); log(" -noabc\n"); log(" do not run abc (as if yosys was compiled without ABC support)\n"); log("\n"); @@ -112,6 +115,7 @@ struct SynthPass : public Pass { std::string top_module, fsm_opts, memory_opts; std::string run_from, run_to; bool noalumacc = false; + bool nofsm = false; bool noabc = false; size_t argidx; @@ -136,6 +140,10 @@ struct SynthPass : public Pass { } continue; } + if (args[argidx] == "-nofsm") { + nofsm = true; + continue; + } if (args[argidx] == "-noabc") { noabc = true; continue; @@ -179,7 +187,8 @@ struct SynthPass : public Pass { Pass::call(design, "alumacc"); Pass::call(design, "share"); Pass::call(design, "opt"); - Pass::call(design, "fsm" + fsm_opts); + if (!nofsm) + Pass::call(design, "fsm" + fsm_opts); Pass::call(design, "opt -fast"); Pass::call(design, "memory -nomap" + memory_opts); Pass::call(design, "opt_clean"); -- 2.30.2