mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-13 04:28:18 +00:00
Added Pass:call_newsel API
This commit is contained in:
parent
905eac04f1
commit
a66ca0472a
|
@ -182,6 +182,30 @@ void Pass::call(RTLIL::Design *design, std::vector<std::string> args)
|
||||||
design->check();
|
design->check();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Pass::call_newsel(RTLIL::Design *design, std::string command)
|
||||||
|
{
|
||||||
|
std::string backup_selected_active_module = design->selected_active_module;
|
||||||
|
design->selected_active_module.clear();
|
||||||
|
design->selection_stack.push_back(RTLIL::Selection());
|
||||||
|
|
||||||
|
Pass::call(design, command);
|
||||||
|
|
||||||
|
design->selection_stack.pop_back();
|
||||||
|
design->selected_active_module = backup_selected_active_module;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Pass::call_newsel(RTLIL::Design *design, std::vector<std::string> args)
|
||||||
|
{
|
||||||
|
std::string backup_selected_active_module = design->selected_active_module;
|
||||||
|
design->selected_active_module.clear();
|
||||||
|
design->selection_stack.push_back(RTLIL::Selection());
|
||||||
|
|
||||||
|
Pass::call(design, args);
|
||||||
|
|
||||||
|
design->selection_stack.pop_back();
|
||||||
|
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("read_"+name, short_help), frontend_name(name)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,6 +55,9 @@ struct Pass
|
||||||
static void call(RTLIL::Design *design, std::string command);
|
static void call(RTLIL::Design *design, std::string command);
|
||||||
static void call(RTLIL::Design *design, std::vector<std::string> args);
|
static void call(RTLIL::Design *design, std::vector<std::string> args);
|
||||||
|
|
||||||
|
static void call_newsel(RTLIL::Design *design, std::string command);
|
||||||
|
static void call_newsel(RTLIL::Design *design, std::vector<std::string> args);
|
||||||
|
|
||||||
static void init_register();
|
static void init_register();
|
||||||
static void done_register();
|
static void done_register();
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue