summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2014-07-30 19:59:29 +0200
committerClifford Wolf <clifford@clifford.at>2014-07-30 19:59:29 +0200
commit6400ae36489a7ada5419d7bc502934f6d05e69bb (patch)
treeb61fddfa994173e74ce08ca4a84dbf426a19137a /kernel
parent7d98645fe8efcb446079a8a3cd8721ef5e27ee79 (diff)
Added write_file command
Diffstat (limited to 'kernel')
-rw-r--r--kernel/register.cc8
-rw-r--r--kernel/register.h4
2 files changed, 7 insertions, 5 deletions
diff --git a/kernel/register.cc b/kernel/register.cc
index 4569481f..c7bd2cce 100644
--- a/kernel/register.cc
+++ b/kernel/register.cc
@@ -245,7 +245,9 @@ void Pass::call_on_module(RTLIL::Design *design, RTLIL::Module *module, std::vec
design->selected_active_module = backup_selected_active_module;
}
-Frontend::Frontend(std::string name, std::string short_help) : Pass("read_"+name, short_help), frontend_name(name)
+Frontend::Frontend(std::string name, std::string short_help) :
+ Pass(name.rfind("=", 0) == 0 ? name.substr(1) : "read_" + name, short_help),
+ frontend_name(name.rfind("=", 0) == 0 ? name.substr(1) : name)
{
}
@@ -377,8 +379,8 @@ void Frontend::frontend_call(RTLIL::Design *design, FILE *f, std::string filenam
}
Backend::Backend(std::string name, std::string short_help) :
- Pass(name.substr(0, 1) == "=" ? name.substr(1) : "write_"+name, short_help),
- backend_name(name.substr(0, 1) == "=" ? name.substr(1) : name)
+ Pass(name.rfind("=", 0) == 0 ? name.substr(1) : "write_" + name, short_help),
+ backend_name(name.rfind("=", 0) == 0 ? name.substr(1) : name)
{
}
diff --git a/kernel/register.h b/kernel/register.h
index 68f09c82..41780bfb 100644
--- a/kernel/register.h
+++ b/kernel/register.h
@@ -66,7 +66,7 @@ struct Frontend : Pass
Frontend(std::string name, std::string short_help = "** document me **");
virtual void run_register();
virtual ~Frontend();
- virtual void execute(std::vector<std::string> args, RTLIL::Design *design);
+ virtual void execute(std::vector<std::string> args, RTLIL::Design *design) override final;
virtual void execute(FILE *&f, std::string filename, std::vector<std::string> args, RTLIL::Design *design) = 0;
static std::vector<std::string> next_args;
@@ -82,7 +82,7 @@ struct Backend : Pass
Backend(std::string name, std::string short_help = "** document me **");
virtual void run_register();
virtual ~Backend();
- virtual void execute(std::vector<std::string> args, RTLIL::Design *design);
+ virtual void execute(std::vector<std::string> args, RTLIL::Design *design) override final;
virtual void execute(FILE *&f, std::string filename, std::vector<std::string> args, RTLIL::Design *design) = 0;
void extra_args(FILE *&f, std::string &filename, std::vector<std::string> args, size_t argidx);