aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorAdam Izraelevitz2017-03-09 15:51:36 -0800
committerAdam Izraelevitz2017-03-10 10:33:10 -0800
commit94480ef141fa91ac18b997674aafd92250d1ca3f (patch)
tree3510b07227a504bb4774ddbeebfe80c06589ba01 /src/main
parent50001f3f6a49a44b5f931d96d42655e9879c38d6 (diff)
Added custom transform commandline option
Diffstat (limited to 'src/main')
-rw-r--r--src/main/scala/firrtl/ExecutionOptionsManager.scala16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/ExecutionOptionsManager.scala b/src/main/scala/firrtl/ExecutionOptionsManager.scala
index 2d221e6b..ba060300 100644
--- a/src/main/scala/firrtl/ExecutionOptionsManager.scala
+++ b/src/main/scala/firrtl/ExecutionOptionsManager.scala
@@ -319,6 +319,22 @@ trait HasFirrtlOptions {
s"specifies the source info handling, default is ${firrtlOptions.infoModeName}"
}
+ parser.opt[Seq[String]]("custom")
+ .abbr("fct")
+ .valueName ("<package>.<class>")
+ .foreach { customTransforms: Seq[String] =>
+ firrtlOptions = firrtlOptions.copy(
+ customTransforms = firrtlOptions.customTransforms ++
+ (customTransforms map { x: String =>
+ Class.forName(x).asInstanceOf[Class[_ <: Transform]].newInstance()
+ })
+ )
+ }
+ .text {
+ """Inline one or more module (comma separated, no spaces) module looks like "MyModule" or "MyModule.myinstance"""
+ }
+
+
parser.opt[Seq[String]]("inline")
.abbr("fil")
.valueName ("<circuit>[.<module>[.<instance>]][,..],")