aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/fabulous/synth_fabulous.cc
diff options
context:
space:
mode:
Diffstat (limited to 'techlibs/fabulous/synth_fabulous.cc')
-rw-r--r--techlibs/fabulous/synth_fabulous.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/techlibs/fabulous/synth_fabulous.cc b/techlibs/fabulous/synth_fabulous.cc
index 3b36a5bf6..d10cc021d 100644
--- a/techlibs/fabulous/synth_fabulous.cc
+++ b/techlibs/fabulous/synth_fabulous.cc
@@ -101,7 +101,6 @@ struct SynthPass : public ScriptPass
noshare = false;
}
- // TODO: bring back relevant flags to carry through to synth call
void execute(std::vector<std::string> args, RTLIL::Design *design) override
{
string run_from, run_to;
@@ -196,7 +195,6 @@ struct SynthPass : public ScriptPass
run("deminout");
// synth pass
- run("proc");
run("opt_expr");
run("opt_clean");
run("check");
@@ -219,8 +217,14 @@ struct SynthPass : public ScriptPass
run("memory -nomap" + memory_opts);
run("opt_clean");
+ // RegFile extraction
+
+ run("memory_libmap -lib +/fabulous/ram_regfile.txt");
+ run("techmap -map +/fabulous/regfile_map.v");
+ run("opt -fast -mux_undef -undriven -fine");
run("memory_map");
+ run("opt -undriven -fine");
run("opt -full");
run("techmap -map +/techmap.v");
run("opt -fast");