diff options
| author | Eddie Hung <eddie@fpgeh.com> | 2020-01-28 12:46:18 -0800 |
|---|---|---|
| committer | Eddie Hung <eddie@fpgeh.com> | 2020-01-28 12:46:18 -0800 |
| commit | a855f23f22c9e6dbba5ff17a9541a7d26342b56a (patch) | |
| tree | f62715ee5a790615d8d4fcda7814a940608c7310 /kernel/register.cc | |
| parent | f5e0a07ad679696b0d3077ef877941d4c1f864d7 (diff) | |
| parent | 7939727d14f44b5d56ca3806d0907e9fceea2882 (diff) | |
| download | yosys-a855f23f22c9e6dbba5ff17a9541a7d26342b56a.tar.gz yosys-a855f23f22c9e6dbba5ff17a9541a7d26342b56a.tar.bz2 yosys-a855f23f22c9e6dbba5ff17a9541a7d26342b56a.zip | |
Merge remote-tracking branch 'origin/master' into eddie/opt_merge_init
Diffstat (limited to 'kernel/register.cc')
| -rw-r--r-- | kernel/register.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/kernel/register.cc b/kernel/register.cc index 37f2e5e1b..5d0fb3c8c 100644 --- a/kernel/register.cc +++ b/kernel/register.cc @@ -114,20 +114,35 @@ void Pass::run_register() void Pass::init_register() { + vector<Pass*> added_passes; while (first_queued_pass) { + added_passes.push_back(first_queued_pass); first_queued_pass->run_register(); first_queued_pass = first_queued_pass->next_queued_pass; } + for (auto added_pass : added_passes) + added_pass->on_register(); } void Pass::done_register() { + for (auto &it : pass_register) + it.second->on_shutdown(); + frontend_register.clear(); pass_register.clear(); backend_register.clear(); log_assert(first_queued_pass == NULL); } +void Pass::on_register() +{ +} + +void Pass::on_shutdown() +{ +} + Pass::~Pass() { } |
