From 164490c8fbf132ca65644d05d6ff8d0d7a3beb20 Mon Sep 17 00:00:00 2001 From: Adam Izraelevitz Date: Wed, 29 Jul 2020 20:48:31 -0700 Subject: Improved Chisel Naming via Compiler Plugins + Prefixing (#1448) Added prefixing and a compiler plugin to improve naming. Only works for Scala 2.12 and above. Co-authored-by: Jack Koenig --- core/src/main/scala/chisel3/Module.scala | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'core/src/main/scala/chisel3/Module.scala') diff --git a/core/src/main/scala/chisel3/Module.scala b/core/src/main/scala/chisel3/Module.scala index 140e3003..25037b00 100644 --- a/core/src/main/scala/chisel3/Module.scala +++ b/core/src/main/scala/chisel3/Module.scala @@ -41,6 +41,8 @@ object Module extends SourceInfoDoc { // Save then clear clock and reset to prevent leaking scope, must be set again in the Module val (saveClock, saveReset) = (Builder.currentClock, Builder.currentReset) + val savePrefix = Builder.getPrefix() + Builder.clearPrefix() Builder.currentClock = None Builder.currentReset = None @@ -67,6 +69,8 @@ object Module extends SourceInfoDoc { val component = module.generateComponent() Builder.components += component + Builder.setPrefix(savePrefix) + // Handle connections at enclosing scope if(!Builder.currentModule.isEmpty) { pushCommand(DefInstance(sourceInfo, module, component.ports)) -- cgit v1.2.3