summaryrefslogtreecommitdiff
path: root/techlibs
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2015-06-09 20:28:17 +0200
committerClifford Wolf <clifford@clifford.at>2015-06-09 20:28:17 +0200
commit9500b564aca78aa826d4bbf034001693bad9edff (patch)
tree8db41feb6373f403006b47d12d2b9d8742dd73ed /techlibs
parente49e2662aae12a1ff980a89b06e5b46403f6068d (diff)
synth_ice40 now flattens by default
Diffstat (limited to 'techlibs')
-rw-r--r--techlibs/ice40/synth_ice40.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/techlibs/ice40/synth_ice40.cc b/techlibs/ice40/synth_ice40.cc
index e1cfa977..236c27a5 100644
--- a/techlibs/ice40/synth_ice40.cc
+++ b/techlibs/ice40/synth_ice40.cc
@@ -60,8 +60,8 @@ struct SynthIce40Pass : public Pass {
log(" from label is synonymous to 'begin', and empty to label is\n");
log(" synonymous to the end of the command list.\n");
log("\n");
- log(" -flatten\n");
- log(" flatten design before synthesis\n");
+ log(" -noflatten\n");
+ log(" do not flatten design before synthesis\n");
log("\n");
log(" -retime\n");
log(" run 'abc' with -dff option\n");
@@ -79,7 +79,7 @@ struct SynthIce40Pass : public Pass {
log(" read_verilog -lib +/ice40/cells_sim.v\n");
log(" hierarchy -check -top <top>\n");
log("\n");
- log(" flatten: (only if -flatten)\n");
+ log(" flatten: (unless -noflatten)\n");
log(" proc\n");
log(" flatten\n");
log("\n");
@@ -133,7 +133,7 @@ struct SynthIce40Pass : public Pass {
std::string blif_file, edif_file;
bool nocarry = false;
bool nobram = false;
- bool flatten = false;
+ bool flatten = true;
bool retime = false;
size_t argidx;
@@ -163,6 +163,10 @@ struct SynthIce40Pass : public Pass {
flatten = true;
continue;
}
+ if (args[argidx] == "-noflatten") {
+ flatten = false;
+ continue;
+ }
if (args[argidx] == "-retime") {
retime = true;
continue;