aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/Emitter.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/firrtl/Emitter.scala')
-rw-r--r--src/main/scala/firrtl/Emitter.scala14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/Emitter.scala b/src/main/scala/firrtl/Emitter.scala
index 40321621..98bb4127 100644
--- a/src/main/scala/firrtl/Emitter.scala
+++ b/src/main/scala/firrtl/Emitter.scala
@@ -193,6 +193,20 @@ object EmitAllModulesAnnotation extends HasShellOptions {
helpText = "Run the specified module emitter (one protobuf per module)",
shortOption = Some("p"),
helpValueName = Some("<chirrtl|mhigh|high|middle|low|low-opt>")
+ ),
+ new ShellOption[String](
+ longOption = "emission-options",
+ toAnnotationSeq = s =>
+ s.split(",")
+ .map {
+ case "disableMemRandomization" =>
+ CustomDefaultRegisterEmission(useInitAsPreset = true, disableRandomization = true)
+ case "disableRegisterRandomization" => CustomDefaultMemoryEmission(MemoryNoInit)
+ case a => throw new PhaseException(s"Unknown emission options '$a'! (Did you misspell it?)")
+ }
+ .toSeq,
+ helpText = "Options to disable random initialization for memory and registers",
+ helpValueName = Some("<disableMemRandomization,disableRegisterRandomization>")
)
)