summaryrefslogtreecommitdiff
path: root/kernel/register.h
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2014-07-24 15:06:45 +0200
committerClifford Wolf <clifford@clifford.at>2014-07-24 16:14:19 +0200
commit2f54345cff3aea768bb89754654127a3b0ee58e9 (patch)
treea0a1922d0a271f1af35e22c29b7c3cf61f39525e /kernel/register.h
parente589289df7662f076d12f7237321b429401952e2 (diff)
Added "cover" command
Diffstat (limited to 'kernel/register.h')
-rw-r--r--kernel/register.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/kernel/register.h b/kernel/register.h
index b07c4617..fd073cbe 100644
--- a/kernel/register.h
+++ b/kernel/register.h
@@ -47,9 +47,11 @@ extern std::vector<RTLIL::Design*> pushed_designs;
struct Pass
{
std::string pass_name, short_help;
+ int call_counter;
+
Pass(std::string name, std::string short_help = "** document me **");
- virtual void run_register();
virtual ~Pass();
+
virtual void help();
virtual void execute(std::vector<std::string> args, RTLIL::Design *design) = 0;
@@ -66,6 +68,8 @@ struct Pass
static void call_on_module(RTLIL::Design *design, RTLIL::Module *module, std::string command);
static void call_on_module(RTLIL::Design *design, RTLIL::Module *module, std::vector<std::string> args);
+ Pass *next_queued_pass;
+ virtual void run_register();
static void init_register();
static void done_register();
};
@@ -105,9 +109,6 @@ struct Backend : Pass
extern void handle_extra_select_args(Pass *pass, std::vector<std::string> args, size_t argidx, size_t args_size, RTLIL::Design *design);
namespace REGISTER_INTERN {
- extern int raw_register_count;
- extern bool raw_register_done;
- extern Pass *raw_register_array[];
extern std::map<std::string, Pass*> pass_register;
extern std::map<std::string, Frontend*> frontend_register;
extern std::map<std::string, Backend*> backend_register;