From 3770273637bb431bad3785cf7c79e723a9590fd6 Mon Sep 17 00:00:00 2001 From: Geza Lore Date: Sat, 30 Aug 2025 15:35:16 +0100 Subject: [PATCH] Optimize logic in non-virtual interfaces with DFG (#6347) --- src/V3DfgAstToDfg.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/V3DfgAstToDfg.cpp b/src/V3DfgAstToDfg.cpp index 57e310df7..18df9a1b0 100644 --- a/src/V3DfgAstToDfg.cpp +++ b/src/V3DfgAstToDfg.cpp @@ -233,6 +233,13 @@ class AstToDfgVisitor final : public VNVisitor { // Containers to descend through to find logic constructs void visit(AstNetlist* nodep) override { iterateAndNextNull(nodep->modulesp()); } void visit(AstModule* nodep) override { iterateAndNextNull(nodep->stmtsp()); } + void visit(AstIface* nodep) override { + if (!nodep->hasVirtualRef()) { + iterateAndNextNull(nodep->stmtsp()); + } else { + markReferenced(nodep); + } + } void visit(AstTopScope* nodep) override { iterate(nodep->scopep()); } void visit(AstScope* nodep) override { iterateChildren(nodep); } void visit(AstActive* nodep) override {