From 844f42b3445005d512f091f53488c70f9d80dab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Povi=C5=A1er?= Date: Fri, 18 Oct 2024 17:17:10 +0200 Subject: [PATCH] fixup! Break down drivers of complex-type variables --- src/slang_frontend.cc | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/slang_frontend.cc b/src/slang_frontend.cc index 0900390..0cd6cb9 100644 --- a/src/slang_frontend.cc +++ b/src/slang_frontend.cc @@ -2273,18 +2273,14 @@ struct PopulateNetlist : public TimingPatternInterpretor, public ast::ASTVisitor RTLIL::SigSpec aload_chunk = driven_chunk; aload_chunk.replace(aloads[0].values); - RTLIL::SigSpec aldff_d, aldff_q, aldff_aload; - RTLIL::SigSpec dffe_d, dffe_q; // fallback + RTLIL::SigSpec aldff_q; + RTLIL::SigSpec dffe_q; // fallback for (int i = 0; i < driven_chunk.size(); i++) { - if (aload_chunk[i] != driven_chunk[i]) { - aldff_d.append(staging_chunk[i]); + if (RTLIL::SigSpec(aload_chunk)[i] != RTLIL::SigSpec(driven_chunk)[i]) aldff_q.append(driven_chunk[i]); - aldff_aload.append(aload_chunk[i]); - } else { - dffe_d.append(staging_chunk[i]); + else dffe_q.append(driven_chunk[i]); - } } if (!aldff_q.empty()) {