summaryrefslogtreecommitdiff
path: root/backends
diff options
context:
space:
mode:
Diffstat (limited to 'backends')
-rw-r--r--backends/blif/blif.cc5
-rw-r--r--backends/edif/edif.cc5
-rw-r--r--backends/spice/spice.cc5
3 files changed, 15 insertions, 0 deletions
diff --git a/backends/blif/blif.cc b/backends/blif/blif.cc
index 27f08774..f5a98276 100644
--- a/backends/blif/blif.cc
+++ b/backends/blif/blif.cc
@@ -293,6 +293,11 @@ struct BlifBackend : public Backend {
}
extra_args(f, filename, args, argidx);
+ if (top_module_name.empty())
+ for (auto & mod_it:design->modules)
+ if (mod_it.second->get_bool_attribute("\\top"))
+ top_module_name = mod_it.first;
+
fprintf(f, "# Generated by %s\n", yosys_version_str);
std::vector<RTLIL::Module*> mod_list;
diff --git a/backends/edif/edif.cc b/backends/edif/edif.cc
index c5977bb1..8843b394 100644
--- a/backends/edif/edif.cc
+++ b/backends/edif/edif.cc
@@ -118,6 +118,11 @@ struct EdifBackend : public Backend {
}
extra_args(f, filename, args, argidx);
+ if (top_module_name.empty())
+ for (auto & mod_it:design->modules)
+ if (mod_it.second->get_bool_attribute("\\top"))
+ top_module_name = mod_it.first;
+
for (auto module_it : design->modules)
{
RTLIL::Module *module = module_it.second;
diff --git a/backends/spice/spice.cc b/backends/spice/spice.cc
index 6c8a3ec9..e7926e90 100644
--- a/backends/spice/spice.cc
+++ b/backends/spice/spice.cc
@@ -172,6 +172,11 @@ struct SpiceBackend : public Backend {
}
extra_args(f, filename, args, argidx);
+ if (top_module_name.empty())
+ for (auto & mod_it:design->modules)
+ if (mod_it.second->get_bool_attribute("\\top"))
+ top_module_name = mod_it.first;
+
fprintf(f, "* SPICE netlist generated by %s\n", yosys_version_str);
fprintf(f, "\n");