From e9873f822e85001e6273e414315ecb563af9308d Mon Sep 17 00:00:00 2001 From: Stan Lee Date: Wed, 27 May 2026 23:47:38 -0700 Subject: [PATCH 1/2] bug fix --- passes/silimate/reg_rename.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/passes/silimate/reg_rename.cc b/passes/silimate/reg_rename.cc index ff11cecc8..3cfd9e70b 100644 --- a/passes/silimate/reg_rename.cc +++ b/passes/silimate/reg_rename.cc @@ -305,8 +305,12 @@ struct RegRenamePass : public Pass { if (!signal_name.empty() && signal_name.back() == ']') { size_t open = signal_name.rfind('['); if (open != std::string::npos) { - signal_bits = signal_name.substr(open); - signal_name.erase(open); + std::string inner = signal_name.substr(open + 1, signal_name.size() - open - 2); + // Ensure that signal_bits is not populated with non-digits + if (!inner.empty() && inner.find_first_not_of("0123456789:") == std::string::npos) { + signal_bits = signal_name.substr(open); + signal_name.erase(open); + } } } From 3d21f58f24695118fa79eae36b14c78ce62c3bea Mon Sep 17 00:00:00 2001 From: Stan Lee Date: Thu, 28 May 2026 01:22:59 -0700 Subject: [PATCH 2/2] update comment --- passes/silimate/reg_rename.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/passes/silimate/reg_rename.cc b/passes/silimate/reg_rename.cc index 3cfd9e70b..6c67ef080 100644 --- a/passes/silimate/reg_rename.cc +++ b/passes/silimate/reg_rename.cc @@ -306,7 +306,7 @@ struct RegRenamePass : public Pass { size_t open = signal_name.rfind('['); if (open != std::string::npos) { std::string inner = signal_name.substr(open + 1, signal_name.size() - open - 2); - // Ensure that signal_bits is not populated with non-digits + // Ensure that signal_bits is not populated with non-indexed characters. if (!inner.empty() && inner.find_first_not_of("0123456789:") == std::string::npos) { signal_bits = signal_name.substr(open); signal_name.erase(open);