From 6b7efe12b79d4ed68af6a31f124213e101edbbb1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marcelina=20Ko=C5=9Bcielnicka?= Date: Mon, 13 Jun 2022 16:53:29 +0200 Subject: [PATCH] Add a check for packed memory MEMID uniqueness --- kernel/rtlil.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/kernel/rtlil.cc b/kernel/rtlil.cc index 8346b56e0..dc4ea9a78 100644 --- a/kernel/rtlil.cc +++ b/kernel/rtlil.cc @@ -1842,6 +1842,8 @@ void RTLIL::Module::check() log_assert(!it2.first.empty()); } + pool packed_memids; + for (auto &it : cells_) { log_assert(this == it.second->module); log_assert(it.first == it.second->name); @@ -1857,6 +1859,14 @@ void RTLIL::Module::check() log_assert(!it2.first.empty()); InternalCellChecker checker(this, it.second); checker.check(); + if (it.second->has_memid()) { + log_assert(memories.count(it.second->parameters.at(ID::MEMID).decode_string())); + } else if (it.second->is_mem_cell()) { + IdString memid = it.second->parameters.at(ID::MEMID).decode_string(); + log_assert(!memories.count(memid)); + log_assert(!packed_memids.count(memid)); + packed_memids.insert(memid); + } } for (auto &it : processes) { -- 2.30.2