From e22e4d59b8abe9ba60d32402d0ff9b84d266743d Mon Sep 17 00:00:00 2001 From: Marcus Comstedt Date: Sun, 22 May 2016 16:37:47 +0200 Subject: [PATCH] Made the expansion order of hierarchy deterministic --- passes/hierarchy/hierarchy.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/passes/hierarchy/hierarchy.cc b/passes/hierarchy/hierarchy.cc index 460b3c693..94b93de5d 100644 --- a/passes/hierarchy/hierarchy.cc +++ b/passes/hierarchy/hierarchy.cc @@ -261,7 +261,7 @@ bool expand_module(RTLIL::Design *design, RTLIL::Module *module, bool flag_check return did_something; } -void hierarchy_worker(RTLIL::Design *design, std::set &used, RTLIL::Module *mod, int indent) +void hierarchy_worker(RTLIL::Design *design, std::set> &used, RTLIL::Module *mod, int indent) { if (used.count(mod) > 0) return; @@ -287,7 +287,7 @@ void hierarchy_worker(RTLIL::Design *design, std::set &used, RTL void hierarchy_clean(RTLIL::Design *design, RTLIL::Module *top, bool purge_lib) { - std::set used; + std::set> used; hierarchy_worker(design, used, top, 0); std::vector del_modules; @@ -523,7 +523,7 @@ struct HierarchyPass : public Pass { { did_something = false; - std::set used_modules; + std::set> used_modules; if (top_mod != NULL) { log_header(design, "Analyzing design hierarchy..\n"); hierarchy_worker(design, used_modules, top_mod, 0); -- 2.30.2